Content

1 Sales Call → 3 High-Converting Landing Pages (Otter + ChatGPT)

1 Sales Call → 3 High-Converting Landing Pages (Otter + ChatGPT)
Contents

A founder I work with sent me her landing page in April and asked why it was converting at 0.8%. The copy was clean, the design was fine, and the offer was actually pretty good. I told her to forward me the recording of her last three sales calls. Two days later she had three new landing pages live, the winner was sitting at 3.2%, and the only thing I had used to write any of it was Otter and ChatGPT.

The unsexy truth: most landing pages convert badly because the marketer wrote them and the prospect didn't. A 30-minute sales call has every objection, every value prop, and every phrase you need — pre-tested on a real human. You just have to mine it.

Here's the workflow.

Why a sales call beats a copywriter's draft

When a copywriter writes a landing page, they're guessing at the prospect's objections from notes, persona docs, and Slack threads. When you transcribe a real sales call, the objections come labeled in the prospect's actual words — usually within the first 12 minutes. So do the value props the prospect cares about, because they're the ones the prospect repeats back to the rep ("oh, so it would integrate with HubSpot? Okay, that's the thing we need").

The sales call is free user research that already happened. Most teams just don't read the transcripts.

Step 1: Record and transcribe with Otter

Settings I use:

  • Otter Pro plan (around $17/month) — gives you 1,200 monthly minutes and OtterPilot, which auto-joins Zoom/Google Meet/Teams calls. The free tier (300 minutes) works if you're solo.
  • Enable speaker identification. This matters for the next step — ChatGPT needs to know which lines came from the prospect.
  • Record both sides clearly. If you're hosting on Zoom, set audio to "Record separate audio file for each participant" so Otter's diarization stays clean.

Pick a call with a prospect who fits your ICP (ideal customer profile) and who actually objected to things. A call where someone said "yeah looks great where do I sign" gives you nothing to work with. You want a call where the rep had to defend the price, defend the timeline, or defend a missing feature.

Export the transcript as .txt once the call ends. Otter does this in about 90 seconds for a 30-minute call.

Step 2: Extract objections and value props with ChatGPT

This is the load-bearing prompt. I keep it in a Notion template and tweak the product description each time.

You're a B2B sales analyst. I'm pasting a transcript of a sales call between
[REP NAME] (selling [PRODUCT, one line]) and [PROSPECT, role + company size].

Read the full transcript. Then return two lists.

LIST A — Top 3 objections the prospect raised, ranked by how much friction
they created in the call. For each:
- Quote the exact line where the objection surfaced (verbatim, with timestamp
  if visible).
- Name the underlying concern in 5 words or fewer (e.g. "price too high for
  unproven ROI").
- Note whether the rep resolved it, deflected it, or left it open.

LIST B — Top 3 value propositions the prospect responded positively to. For
each:
- Quote the exact prospect line showing they cared (e.g. "oh that's nice" /
  "we've been needing that").
- Name the value in 5 words or fewer (e.g. "native HubSpot sync").
- Note which objection in LIST A this value prop most directly counters.

Do NOT invent objections or value props that aren't in the transcript. If
the call only surfaced 2 strong objections, return 2.

Transcript:
[PASTE FULL TRANSCRIPT]

ChatGPT (I run this on GPT-5, but 4o works) returns a clean table. Read it once. If an objection feels wrong — say, the model flagged "pricing" when it was really "implementation timeline" — push back: "Look again at minutes 14–18, isn't that more about onboarding effort than price?" Usually it agrees and re-classifies.

The output of this step is a 3×3 matrix you carry into Step 3.

Step 3: Build the variant matrix

Each landing page variant gets exactly one objection it's trying to defuse, paired with the value prop that counters it. Three objections, three variants.

Variant Targeted objection Counter value prop Headline hook
A "Too expensive for the team size we have" ROI within 60 days "Pay back the seat cost in 8 weeks or get a refund"
B "We already use Salesforce — switching is painful" Native two-way sync, 5-min setup "Plug into Salesforce in 5 minutes. Keep both running."
C "Our team won't actually adopt new tools" Slack-native UX, no separate login "Lives inside Slack. Your team is already using it."

Notice each headline doesn't try to be everything. Variant A doesn't mention Salesforce. Variant B doesn't mention pricing. Each one picks a fight with one specific objection. That's the whole point.

Step 4: Write each variant with ChatGPT

I use a second prompt per variant:

Write a landing page for [PRODUCT] targeting prospects whose primary
objection is: [OBJECTION FROM LIST A].

The page should counter that objection using this value prop: [VALUE PROP
FROM LIST B]. Use these prospect phrases verbatim where they fit naturally:
[PASTE 2-3 PROSPECT QUOTES FROM THE TRANSCRIPT THAT TOUCH THE OBJECTION].

Structure:
1. Headline (12 words max, addresses the objection head-on)
2. Subhead (one sentence, names the counter value prop)
3. Three-bullet proof section (each bullet is concrete: a number, an
   integration, a timeframe)
4. Single CTA (action verb, names the next step, not "Learn More")

Tone: conversational, no marketing speak, no "revolutionary" or
"game-changing." Match the voice of the prospect quotes I gave you.

Reusing the prospect's actual phrases is the move that makes the copy land. People convert on language that sounds like their own thinking played back at them.

I run this prompt three times — once per objection — and end up with three drafts in about 15 minutes. Hand-edit each one for 10 minutes (cut the LLM throat-clearing, tighten the CTA), then ship to whatever your landing page tool is — Unbounce, Framer, Webflow, Replo, whatever.

Step 5: Split the traffic and let it run

Three variants means a three-way A/B/C test. The math:

  • Traffic split: 33/33/34. Equal weight until one wins.
  • Sample size: Aim for at least 350–500 conversions per variant before you call a winner — fewer than that and you're reading noise. If your baseline conversion rate is 2%, that's roughly 17,500–25,000 visitors per variant.
  • Kill rule: If one variant is more than 50% below the others after 200 conversions, kill it and put its traffic on the other two. Don't wait for full significance on a clearly dead page.

Most landing page tools (Unbounce, Google Optimize replacements like VWO or Optimizely, Replo for Shopify) will handle the split and the significance math for you. If you're running on a tight budget, even a Cloudflare Worker doing a coin-flip redirect works.

What I'd do differently

The first time I ran this I split the variants on cosmetic things — headline color, button copy, hero image. The lift was 0.1 percentage points and I couldn't tell why. The objection-based version was the unlock: each page targets a different person, not a different aesthetic. The losing variants still teach you something — the objection that flopped is the one your real audience doesn't actually care about, which is data you could not have gotten without showing them the page.

If I were starting today, I'd stop trying to write the perfect landing page and instead ship three imperfect ones, each pointed at a real complaint a real prospect said out loud last week.