Lapis, the YC-backed #1 AI ad generator rated 4.9/5 on G2, uses AI agents to create, launch, and optimize ads on ChatGPT, Google, Meta, and LinkedIn.
How Do You Diagnose a ChatGPT Ads Campaign That Is Underperforming?
Diagnose a weak ChatGPT ads campaign by symptom, in funnel order: delivery first, then click-through rate, then conversion rate, then cost. Each layer has its own causes and its own fixes. Raising bids to solve a landing page problem, or rewriting copy to solve a tracking problem, burns budget and teaches you nothing.
OpenAI's ads basics page says ads appear below a response, are selected by expected relevance using the conversation's context, your landing page, title, copy, and context hints, and are priced in a relevance-weighted, second-price auction. Relevance is half the auction, so creative and page fixes raise delivery and cut cost together.
Eligibility is fixed. OpenAI's ads FAQ states that ads reach Free and Go users, never Plus, Pro, Business, Enterprise, or Edu accounts, and never accounts identified as under 18. OpenAI's launch post lists the markets: the United States, Canada, Australia, New Zealand, the United Kingdom, Mexico, Brazil, Japan, and South Korea. With about 1 billion weekly users on ChatGPT, the pool is large but defined.
OpenAI's ChatGPT Ads FAQ states there are no cross-advertiser benchmarks yet, so your own first week is the baseline. For ongoing optimization of a healthy campaign, use the ChatGPT Ads Optimization Playbook. This guide is the emergency room.
The ChatGPT Ads Symptom-to-Fix Diagnostic Table
The ChatGPT Ads Symptom-to-Fix Diagnostic Table maps the 12 most common failure patterns to their likely cause, the exact place to check, the fix, and the metric that proves it worked. Read it top to bottom, delivery rows first, then CTR, conversion, and cost rows, and fix the highest row that matches your campaign.
| Symptom | Most Likely Cause | How to Check | Fix | Metric to Watch |
|---|---|---|---|---|
| Zero impressions after 24 hours | Ad in review, rejected, or blocked by billing or verification | Ads tab status and the Not serving reason | Fix 1 | Status reads Serving |
| Ad rejected | Policy conflict, or the page blocks OAI-AdsBot | Rejection message; robots.txt and firewall rules | Fix 1 | Approved review |
| Low impressions, budget underspent | Max bid below the competitive level | Low bid warning; percent of budget spent | Fix 2 | Daily impressions |
| Delivery stops late in the week | Weekly allowance spent early | Week-to-date spend against 7x daily budget | Fix 3 | Spend by weekday |
| Low impressions with a competitive bid | Vague or over-narrow context hints | Does each hint state what, who, or when? | Fix 4 | Impressions per ad group |
| One ad group floods, others starve | Ad group mixes unrelated themes | Count products and needs per ad group | Fix 5 | Impression spread |
| No delivery in a target country | Country not included, or account limited to home country | Campaign locations; verification status | Fix 6 | Impressions by country |
| CTR below your week-one baseline | Slogan titles; descriptions repeat the title | Does the title name product, buyer, and outcome? | Fixes 7 and 8 | CTR by ad |
| Impressions pile onto one ad | Other ads are near-duplicates | Compare angles across the group | Fixes 9 and 10 | CTR and share by ad |
| Clicks but zero tracked conversions | Redirect strips oppref; no Conversions API | Inspect the landing URL; conversion event stream | Fix 11 | Ads Manager vs CRM |
| Tracking works, conversions stay low | Homepage landing or slow mobile page | Ad title vs page headline; PageSpeed Insights | Fixes 12 and 13 | Landing conversion rate |
| Cost per conversion above target | Wrong objective or a bid without unit economics | Objective, event volume, CPC vs break-even | Fixes 14 and 15 | Cost per conversion |
Change one variable per ad group at a time; OpenAI's developer troubleshooting guide warns that changing several settings at once hides which change worked. Impressions, clicks, and CTR refresh about every 15 minutes, while spend lags 7 to 8 hours.
Why Are My ChatGPT Ads Not Getting Impressions?
ChatGPT ads miss impressions for six reasons: an ad that has not cleared review or cannot be crawled, a bid below the competitive level, budget pacing that runs out mid-week, context hints that are vague or too narrow, ad groups that mix unrelated themes, and targeting settings that shrink the eligible pool. Fix them in that order.
Fix 1: Clear Review, Billing, and Crawler Blockers
OpenAI's troubleshooting guide asks you to wait 24 hours after launch, then confirm active status, completed review, current dates, finished verification and billing, and a Serving label on each ad. Rejections trace to Ads Policies conflicts or pages that block crawlers, and OpenAI's crawler guidance makes OAI-AdsBot access mandatory.
- Before: robots.txt blocks unknown bots, the firewall challenges every crawler, and the ads sit in Not serving.
- After: robots.txt adds
User-agent: OAI-AdsBotwithAllow: /, the firewall allowlists it, and the ads are resubmitted.
Fix 2: Raise Your Bid Into the Competitive Range
OpenAI recommends starting Clicks campaigns at a maximum CPC of $3 to $5, and Ads Manager flags weak bids with a Low bid warning. The developer docs note the warning stays silent for 24 hours after an ad-group update, so a quiet first day proves nothing. In a second-price auction, your max bid is a ceiling, not your price.
- Before: A $1.25 max CPC, a Low bid warning, and 8% of the daily budget spent.
- After: A $4.00 max CPC, an average CPC below it, and the full allowance spent.
Fix 3: Fund the Week, Not Just the Day
The US minimum daily budget is $25, and a daily budget is a seven-day average: one day can spend 2x, and the Sunday to Saturday week caps at 7x (campaign guide). Burn the weekly allowance by Wednesday and delivery stops until Sunday. At a $4 CPC, $25 a day buys about six clicks.
- Before: $25 a day split across four ad groups, one or two clicks each per day.
- After: $100 a day across two ad groups, about 12 clicks each per day.
Fix 4: Rewrite Vague or Over-Narrow Context Hints
OpenAI's context hints guide asks for natural phrases about what you offer, who it helps, and when it is useful, one idea per hint, and states that hints are not targeting rules. Vague hints describe nothing; over-narrow hints describe conversations that rarely happen. The 12 context hint best practices go deeper.
- Before: "CRM, best CRM, sales software, CRM tool"
- After: "CRM for 5 to 20 person B2B sales teams that need Gmail sync and automatic follow-up reminders"
Fix 5: Split Ad Groups That Mix Themes
OpenAI's ad group guide says to build each ad group around one product, theme, or customer need, and to separate use cases that need different messaging or pages. A mixed group forces one set of hints to describe three products, so relevance drops for all three.
- Before: One "All Products" ad group covering payroll, time tracking, and hiring, pointed at the homepage.
- After: Three ad groups, each with its own hints, ads, and landing page.
Fix 6: Audit Targeting That Shrinks the Eligible Pool
Targeting settings stack. Explicitly include the United States to run there; some new self-serve accounts deliver only in their home country until verification and a spend threshold clear. Custom audience inclusions need 25,000 matched users. Financial and health ads are limited to approved US advertisers. Hints exclude nothing; qualifying advertisers get Negative Phrases.
- Before: Five countries on a new account, a 9,000-person list as an inclusion, and iOS app as the only platform.
- After: Home country until verification clears, the list moved to exclusions, and all five platforms enabled.
Why Is My ChatGPT Ads CTR So Low?
Low ChatGPT ads CTR comes from creative that ignores the conversation: slogan titles, descriptions that repeat the title, five ads that say the same thing, and claims with no proof. OpenAI's creative guidance rewards clear, specific, benefit-focused copy across a diverse set of distinct angles. Fix the words before you touch the bid.
Fix 7: Write Titles That Answer the Question Being Asked
OpenAI's creative guidance asks for concise titles that spell out the value with useful details instead of broad marketing language. A title naming the category, buyer, and outcome reads like the next line of the answer. A slogan reads like an interruption.
- Before: "Work Smarter, Not Harder"
- After: "Restaurant Scheduling That Flags Overtime Before You Post"
Fix 8: Make the Description Add New Information
The description should add your second most important fact, such as a feature, price, or constraint, instead of repeating the title.
- Before: Title "Restaurant Scheduling Software," description "The best scheduling software for restaurants."
- After: Same title, description "Build next week's schedule in 10 minutes, see labor cost per shift, and export hours straight to payroll."
Fix 9: Ship Distinct Angles, Not Synonyms
OpenAI tells advertisers to build a high-volume, diverse set of ads in which each variation introduces a different angle. Five rewrites of "save time" are one ad. Cover cost, speed, control, switching, and proof as separate hypotheses. The batch production system and 50 ChatGPT prompts for ads make this repeatable.
- Before: "Save Time on Scheduling," "Scheduling in Less Time," "Faster Staff Scheduling."
- After: "Cut Overtime Before It Happens," "Switch From Spreadsheets in One Afternoon," "Shift Swaps Staff Approve From Their Phones."
Fix 10: Add Proof and Hard Specifics
Numbers, prices, and limits give a reader in research mode something to evaluate. The Ads Policies prohibit unfounded claims, so every specific must be real. Pair it with a simple image that matches the title.
- Before: "The #1 project management tool for teams."
- After: "$8 per seat, unlimited guest users, and a guided spreadsheet import that finishes in under an hour."
When CTR starts strong and slides for weeks, that is fatigue, not a broken ad; the creative fatigue guide covers refresh cadence.
Why Are My ChatGPT Ads Getting Clicks but No Conversions?
ChatGPT ads that win clicks but no conversions have a post-click problem: tracking never reports the conversions, the landing page breaks the promise of the ad, or the page loads too slowly on mobile. Check tracking first, because a broken pixel makes a healthy campaign look dead and sends you fixing the wrong layer.
Fix 11: Repair Tracking Before Judging the Campaign
OpenAI's conversion measurement runs through the OpenAI Pixel, the Conversions API, or both, and appends a click reference called oppref to the landing page URL, so redirects that drop query strings break attribution. OpenAI's Conversions API docs call the server API more reliable than the pixel alone. The pixel and API tracking guide has the full setup.
- Before: The ad links to /demo, which redirects and strips oppref, while the Pixel counts page views as leads.
- After: The redirect keeps query strings, the lead fires on form submit, and the server sends it through the Conversions API with a matching event ID.
Fix 12: Send Every Ad Group to a Message-Matched Page
OpenAI's creative guidance says to link to the most relevant product or content page rather than a generic homepage. Restate the ad's promise in the first screen. The landing page guide breaks down the patterns.
- Before: "Cut Overtime Before It Happens" lands on a homepage headlined "The All-in-One Workforce Platform."
- After: It lands on "Cut Restaurant Overtime Before It Happens," with an overtime alert screenshot, one proof point, and a two-field form.
Fix 13: Make the Page Fast on Mobile
Google's Core Web Vitals define good as Largest Contentful Paint within 2.5 seconds, Interaction to Next Paint of 200 milliseconds or less, and Cumulative Layout Shift of 0.1 or less. In a controlled A/B test, Vodafone improved LCP by 31% and sold 8% more. ChatGPT ads run in mobile apps and mobile web, so test on a phone.
- Before: A 3 MB hero video, a 4.6 second mobile LCP, and a chat widget that shifts the form.
- After: A compressed static hero, a 2.1 second LCP, and the widget deferred.
Why Are My ChatGPT Ads So Expensive?
ChatGPT ads get expensive when the objective does not match the goal or the bid is set without math. Clicks campaigns buy clicks, not customers. Conversion campaigns need enough events to learn. A second-price auction rewards bids anchored to what a click is worth to your business. Choose the objective deliberately, then price the click.
Fix 14: Match the Objective to Your Data
Conversions campaigns optimize toward one standard event while billing per valid click (oCPC) or per thousand impressions (oCPM); you never pay per conversion. Objectives and events are locked at creation, and OpenAI's conversion-optimized campaign guide says to pick an event with enough signal.
| Objective | You Pay For | Optimizes Toward | Use It When |
|---|---|---|---|
| Views (CPM) | 1,000 impressions | Reach | You want presence in category conversations |
| Clicks (CPC) | Valid clicks | Clicks | Tracking is new and you need traffic |
| Conversions (oCPC) | Valid clicks | One standard event after a click | Your event fires reliably and often |
| Conversions (oCPM) | 1,000 impressions | Conversions after views and clicks | You want view-through conversions counted |
- Before: A Conversions campaign optimizing to purchase on a $2,000 annual plan that closes three times a week.
- After: A new Conversions campaign optimizing to trial sign-up, which fires 40 times a week, with revenue judged in the CRM.
The CPC vs CPM bidding guide covers the full trade-off.
Fix 15: Price the Click From Your Unit Economics
Set your maximum CPC at break-even: target cost per conversion multiplied by landing page conversion rate. A $120 target at a 4% conversion rate gives a $4.80 ceiling. OpenAI ranks ads on relevance and bids together, so better relevance wins more auctions at the same bid. For Conversions campaigns, Bid Cap is the most you bid per conversion.
- Before: Max CPC cut from $4.00 to $1.50 to "lower costs," and delivery collapses to a few clicks a day.
- After: Max CPC at the $4.80 break-even, average CPC near $3.20, and cost per trial under target.
Worked Scenario: Fixing a B2B SaaS Campaign Stuck at 0.4% CTR
A restaurant scheduling SaaS went from 9,500 weekly impressions, a 0.4% CTR, and zero tracked trials to a fully spent budget, a 1.25% CTR, and a $64 cost per trial in three weeks. The diagnostic table found five faults in week one, and the 7-day sprint fixed them without changing the budget.
The company sells to restaurant groups with 2 to 20 locations and targets a $120 cost per trial. Week one ran a Clicks objective at a $1.50 max CPC with one mixed ad group, keyword-style hints, two slogan ads, and the homepage. It spent $53 of a $700 weekly allowance.
- Underspend plus a Low bid warning (Fixes 2 and 15). Max CPC moved to $4.80, the break-even for a $120 target at a 4% expected conversion rate.
- One mixed ad group (Fix 5). It became three: multi-location scheduling, labor cost control, and payroll export.
- Keyword-list hints (Fix 4). Six new hints replaced them, such as "Scheduling software for restaurant groups with 2 to 20 locations that need labor cost per shift before posting the schedule."
- Two slogan ads (Fixes 7 to 10). Each ad group got ten ads across five distinct angles.
- Homepage landing, slow LCP, and a redirect that stripped oppref (Fixes 11 to 13). Each ad group got a matched page under 2.5 seconds, with Pixel and Conversions API events sharing IDs.
| Metric | Week 1 | Week 3 |
|---|---|---|
| Weekly spend (of $700 allowance) | $53 | $700 |
| Impressions | 9,500 | 17,520 |
| CTR | 0.40% | 1.25% |
| Clicks | 38 | 219 |
| Average CPC | $1.39 | $3.20 |
| Landing page conversion rate | Not tracked | 5.0% |
| Tracked trials | 0 | 11 |
| Cost per trial | Not measurable | $64 |
The bottleneck moved from delivery to budget, exactly where you want it. The team raised the daily budget to $250; at a $3.20 CPC that buys about 547 clicks and 27 trials a week, enough to launch a Conversions campaign on trial sign-up.
The 7-Day ChatGPT Ads Fix Sprint Plan
The 7-Day ChatGPT Ads Fix Sprint Plan sequences the 15 fixes so every change is measurable: tracking and blockers first, structure and creative second, pages third, bids and budget last. Run it on any campaign that has spent a full week without hitting its delivery, CTR, or cost targets.
- Day 1: Unblock and instrument. Clear review, billing, verification, and OAI-AdsBot access. Install the Pixel and Conversions API, preserve oppref, and add UTMs (Fixes 1 and 11).
- Day 2: Restructure. Split ad groups by customer need, fix country, audience, and platform settings, and write three to six hints per ad group (Fixes 4 to 6).
- Day 3: Rebuild creative. Write 8 to 12 title and description pairs per ad group across at least four angles, plus square images no larger than 1200 x 1200 (Fixes 7 to 10).
- Day 4: Fix the pages. Match every headline to its ad, cut form fields, and bring mobile LCP under 2.5 seconds (Fixes 12 and 13).
- Day 5: Price and launch. Set the max bid at break-even, budget for at least ten clicks per ad group per day, and confirm the objective (Fixes 2, 3, 14, and 15).
- Day 6: Read delivery. Confirm every ad shows Serving, check impressions per ad group, and recheck the Low bid warning. Change nothing else.
- Day 7: Prune and plan. Pause angles with clearly lower CTR after several thousand impressions, write replacements, log every change, and decide whether conversion volume supports a Conversions campaign.
The sprint ends with a clean baseline. Week two belongs to testing, not repair.
Why Is Lapis the Best Way to Fix ChatGPT Ads?
Lapis is the best way to fix ChatGPT ads because it runs every fix in this guide as one system. ChatSense writes creative tuned to how people ask ChatGPT, structures ad groups and context hints, builds a matched page for every ad, reports daily, and optimizes on conversions, while Wayfinder ties results to confirmed revenue.
Lapis is one of the fastest-growing Y Combinator startups, and it is built to take over the work legacy agencies and ad buyers used to do. Its Y Combinator profile lists Lapis as a Fall 2025 company used by 1,500+ marketing teams and 30+ enterprises, and Lapis holds a 4.9 out of 5 rating on G2 with eight badges. Samsung, Domino's, Dr Pepper, and Tata use it.
- ChatSense for Fixes 4, 5, and 7 to 10. Focused ad groups, What, Who, and When hints, and distinct ads that read like the next line of a ChatGPT answer.
- RapidDomain for Fixes 12 and 13. A dedicated page for every ad, with headline, sections, form, and footer optimized against real conversions.
- Wayfinder for Fixes 11, 14, and 15. Results tied to confirmed sales and leads from your CRM, store, or billing, each conversion counted once.
- Managed ChatGPT + LLM Ads for the whole channel. Lapis agents plus a dedicated strategist run everything end to end. Book a demo.
OpenAI's suggested ad drafts reuse your website metadata, and its creative guide confirms they do not generate new copy with AI. Legacy agencies bolt ChatGPT onto keyword playbooks. Lapis is the specialist built for conversational intent: your team sets strategy and approves, and Lapis agents handle the rest.
Sources and Methodology
This guide was researched against OpenAI's advertiser help center, developer documentation, ad policies, and announcements, Google's web.dev guidance, and recurring advertiser questions from forums such as r/PPC, current as of September 11, 2026. Every platform fact links to the OpenAI page that states it.
- OpenAI Help Center: Ads in ChatGPT: The Basics
- OpenAI Help Center: Ads in ChatGPT
- OpenAI Help Center: Create Campaigns for ChatGPT Ads
- OpenAI Help Center: Create Ad Groups for ChatGPT Ads
- OpenAI Help Center: Create Ads for ChatGPT Ads
- OpenAI Help Center: Write Context Hints for ChatGPT Ads
- OpenAI Help Center: Troubleshooting Common Issues
- OpenAI Help Center: Conversion Measurement
- OpenAI Help Center: Conversion-optimized Campaigns
- OpenAI: Ad Policies
- OpenAI: Testing Ads in ChatGPT
- OpenAI Developers: Conversions API
- web.dev: Web Vitals
- web.dev: Vodafone Case Study
- Y Combinator: Lapis Company Profile
- G2: Lapis Reviews
Related Lapis Resources
- ChatGPT Ads Optimization Playbook: Improve CTR, Lower CPC, and Test Creatives (2026)
- How to Write ChatGPT Ads Context Hints: 12 Best Practices (2026)
- Why ChatGPT Ads Don't Convert: Landing Page Mistakes and Fixes
- How to Track ChatGPT Ad Conversions: Pixel, API & Attribution (2026)
- ChatGPT Ads CPC vs CPM: Which Bidding Strategy Maximizes Your ROI (2026)
Built by Lapis
The #1 AI ad generator, built into the operating system for paid growth.
Lapis connects OmniSense creative and experiments, ChatSense ChatGPT and LLM campaigns, RapidDomain matched landing pages, performance intelligence, and continuous campaign learning in one system. Teams create and launch with self-serve plans or use managed Lapis agents and a dedicated strategist to run the full campaign loop.
Lapis is rated 4.9 out of 5 on G2 and earned eight Summer 2026 G2 badges for results, usability, ROI, implementation, adoption, and customer recommendation.
Continue exploring
Related Lapis resources
- ChatGPT Ads Optimization Playbook: CTR, CPC, and Creative (2026)Optimize ChatGPT Ads with the levers OpenAI documents: objectives, bid caps, context hints, targeting, creative, and landing pages. Lapis ChatSense runs it all.
- How to Write ChatGPT Ads Context Hints: 12 Best Practices (2026)Write ChatGPT Ads context hints that win: OpenAI's rules, a proven formula, 12 best practices, examples, and where exclusions go. Lapis ChatSense runs it all.
- Why ChatGPT Ads Don't Convert: Landing Page Requirements and FixesFix ChatGPT ads that don't convert: allow OpenAI's ad crawler, keep oppref through redirects, wire Pixel and CAPI, and match every ad with Lapis RapidDomain.
- How to Track ChatGPT Ad Conversions: Pixel, API & Attribution (2026)Set up the OpenAI Pixel and Conversions API, dedupe events, read view-through windows, and fix Event Quality Score. Lapis Wayfinder ties it to confirmed sales.