Back to HTML Pub

Your Ads Already Know What Converts: Closing the Loop Between Campaign Data and Claude's Next Page Variant

Michael Sacca•

(No live web search in this session, so I'm writing from well-documented platform mechanics — how Google Ads and Meta report conversion columns, what a statistically meaningful A/B test requires, and how variant experiments actually run on landing page tools. Nothing here depends on a specific statistic; where behavior varies by platform or account, I say so.)


title: Your Ads Already Know What Converts — Feed the Data Back to Claude slug: ads-conversion-data-claire-variant-generation excerpt: Most AI landing page workflows stop at "generate and ship." Here's how to close the loop — pulling conversion data back into your prompts so each Claude variant is informed by what the last one actually did. categories: Landing Pages, AI-Native Publishing, Paid Media metaTitle: AI Landing Page Variants From Conversion Data: The Feedback Loop metaDescription: Turn campaign conversion data into targeted Claude prompts so every AI-generated landing page variant is informed by what the last one actually converted. author: Michael Sacca


There's a gap in almost every "AI landing page" workflow, and it sits right after launch. You generate the page, you ship it, traffic arrives — and then the process ends. The next variant starts from a blank prompt, as if the last one never ran.

But your ad account has been taking notes the whole time. It knows which ad copy got clicks, which of those clicks bounced, and — if your conversion tracking is wired up — which landing page variant turned a click into a signup and which one turned it into a tab close. That data is the most valuable prompt material you'll ever have, and most people never feed it back in.

This post is about closing that loop: reading your campaign data like a brief, turning it into targeted variant instructions for Claude, and running the results as actual A/B tests instead of one-shot generations.

What the data actually tells you (and what it doesn't)

Before you prompt anything, get precise about what your ad platform can and can't tell you, because "the data" is not one thing.

What ad platform reports tell you:

  • Message-level performance. If Ad A ("Save 40% on your first order") outperforms Ad B ("Dermatologist-designed skincare"), you've learned something about the promise your audience responds to — and the winning promise belongs above the fold on the landing page.
  • Click-through vs. conversion gaps. A high CTR with a low conversion rate is the classic message-match failure: the ad promised something the page didn't deliver. The fix lives on the page, not in the ad.
  • Segment-level patterns. If one audience or one device converts dramatically differently, that's a variant brief waiting to happen.

What ad platform reports can't tell you:

  • On-page behavior. Where people scrolled, where they stalled, which form field made them quit — that's analytics and session tooling territory, not the ad platform. If you have GA4 or similar wired up, pull those signals separately.
  • Why anything happened. The data shows you what won. Claude's job is to turn that "what" into a why hypothesis and then build the page that tests it.

The distinction matters because the two most common prompt mistakes both come from blurring it: asking Claude to "improve conversions" (it has no data, so it guesses), or pasting raw CSV exports into a prompt (the model can't statistically interpret a 0.4% vs. 0.5% conversion rate difference, and neither can you without enough sample size — more on that below).

Turning a winning ad into a variant brief

This builds on the idea from The Ad Is the Brief: How to Feed Your Ad Copy Into Claude So the Landing Page Mirrors It Word for Word — but that post is about matching a single ad. The feedback loop is different: you're using aggregate performance across ads to decide what the next page variant should test.

The prompt structure that works looks like this:

You are helping me create a variant of a paid-traffic landing page.

CONTEXT (performance data from our ad account):
- Best-performing ad headline: "[headline]" — 2.1x the CTR of our other ads
- That ad's clicks convert at [X]%, below our [Y]% benchmark
- The underperforming angle was "[losing angle]" — deprioritize it
- Top converting segment: [segment], arriving mostly on mobile

CURRENT PAGE:
[Paste the current page's HTML or section-by-section summary]

TASK:
Generate one variant of this page that:
1. Leads with the promise from the winning ad headline, verbatim or near-verbatim
2. Keeps the current page's structure — we're testing the headline and hero
   only, not redesigning
3. Assumes mobile-first, since that's where the converting traffic is
4. Outputs as a diff from the current page, not a full rewrite

Do not invent new claims, stats, or guarantees.

The structural choices in that prompt are deliberate, and each one earns its place:

One variable per variant. If Claude rewrites the headline, the hero, the proof section, and the CTA all at once and conversions move, you've learned nothing about which change did it. Give it a scoped brief — headline test, CTA test, offer framing test — one at a time.

Diffs, not rewrites. Asking for a full regeneration every time is how you end up with two pages that differ in fifteen ways. A diff forces the change surface to be visible and reviewable.

The losing data goes in too. Telling Claude what didn't work is as useful as telling it what did. It prevents the model from regenerating the exact angle you just paid to disprove.

Two sources of variant ideas hiding in your ad account

Beyond headline winners, two reporting patterns generate particularly good variant briefs:

The search terms report (search campaigns). The actual queries people typed are the language your audience uses — which is often meaningfully different from the language your marketing uses. Feed the top converting queries into the prompt and ask Claude to work that phrasing into the hero and section headers. You're not asking it to be creative; you're asking it to reflect back the exact words that brought people there.

Asset-level performance (Responsive Search Ads / Advantage+). Google and Meta will tell you which pinned assets, descriptions, and creative variations rack up impressions and conversions. A description line that consistently performs is a subheadline on your landing page waiting to be written.

The A/B part: what to actually set up

Generating variants is the easy half. Testing them properly is where most AI-built landing page workflows quietly fall apart, because the testing infrastructure has hard requirements the generator doesn't care about.

You need real split testing infrastructure. Claude outputs HTML; it does not split traffic. Your options, in rough order of setup cost:

  1. Native ad-platform experiments. Google Ads has landing page-level testing through its experiment tools; Meta lets you test creative-to-destination combinations. Limited, but zero extra infrastructure.
  2. Third-party testing tools. Dedicated A/B testing platforms split traffic at the page level and handle the statistics. This is the standard approach and works fine with generated pages.
  3. Manual URL splits. Run variant A on one campaign, variant B on another, and compare — crude, but legitimate if you split traffic deliberately and don't just compare different campaigns with different audiences. Label this method honestly: it's a last resort, and audience differences will contaminate the read.

Sample size is not negotiable. This is where I'll be blunt about a trap AI workflows make worse: generating a new variant takes Claude thirty seconds, so people launch a new test every day. But if your page gets 200 visitors a week and converts at 3%, you need weeks — sometimes months — of data before a difference between variants is real and not noise. A statistically underpowered test tells you a random coin flip's "winner," and you'll then feed that false winner back into the loop as "learned data," compounding the error.

The practical discipline: decide your minimum test duration before launch based on your traffic volume, and don't read results early. There are sample size calculators built into most testing tools; use them rather than eyeballing it.

Keep the pages otherwise identical. Two variants on different infrastructure, with different load times, will produce results confounded by performance. This connects directly to The Performance Budget for AI-Generated Landing Pages: What Claude's Code Costs You in Ad Load Time — if one variant loads heavy and the other doesn't, you're testing page speed, not copy.

The full loop, end to end

Putting it together, the repeatable cycle looks like this:

  1. Run the current variant on real traffic with conversion tracking verified before day one.
  2. Harvest the report: winning ad copy, losing angles, search terms, segment breakdowns, and the click-to-conversion gap.
  3. Brief Claude with one scoped hypothesis per variant — diff format, current page included, losing data included.
  4. Ship the variant through proper split testing infrastructure with a pre-committed sample size and duration.
  5. Read the result, log the outcome — win or loss — in a running document.
  6. Repeat, with each new brief referencing the accumulated log, not just the last test.

That log in step 5 is the part nobody does and it's the highest-leverage piece. Six months of "tested X, won/lost" entries turns Claude from a page generator into a system that gets more accurate about your audience with every cycle. The model doesn't learn between sessions — your brief does.

Start small

You don't need a testing platform, a data pipeline, and an experiment calendar on day one. You need one decision from your ad account, one scoped Claude brief, and one honest test. The losing result is worth as much as the winning one — arguably more, because it's the one you would have kept paying for indefinitely if you'd never closed the loop.

Keep Reading