The Anatomy of a Landing Page That Converts: A Structural Teardown
A practitioner’s teardown of landing page structure: hero, proof, form and performance decisions that actually move conversion rate, with real code and
A client sent us a landing page with eleven sections, four testimonials, a video, an animated counter block and a form at the very bottom. Their complaint was that traffic was fine but nobody converted. The page wasn’t broken. It was answering questions nobody had asked yet, in an order that made no sense to someone arriving cold from a cost-per-click ad.
We cut it to six sections, moved the form to the hero, and rewrote the headline so it named the outcome instead of the product category. Conversions roughly tripled within a month on the same ad spend. Nothing about that result was clever. It was just landing page structure doing the job it was supposed to do.
This is the teardown: what each block is for, which ones you can delete, and where technical decisions quietly eat your conversion rate.
- A landing page has exactly one job, and every section either moves someone toward that single action or should be deleted. Pages with two competing CTAs reliably underperform pages with one repeated CTA.
- Order matters more than copy quality: outcome, proof, mechanism, objection handling, action. Most underperforming pages put the mechanism (how it works) before the outcome (what you get).
- Form field count is the most reliable lever you control. Every optional field you remove is measurable in completion rate, and field-level analytics will tell you exactly which one is bleeding.
- Core Web Vitals are conversion mechanics, not an SEO chore. An LCP above 2.5 seconds and a CLS above 0.1 on mobile both cost you clicks before the copy is ever read.
- Build the measurement before the redesign. Scroll depth, CTA click position and field drop-off turn opinions about layout into decisions you can defend.
One page, one job, one action
A landing page is not a homepage. The homepage is a switchboard: it routes ten different visitor types to ten different places. A landing page is a funnel with the sides welded shut. Somebody clicked an ad or an email with a specific promise in their head, and your only job is to fulfil that promise or get out of the way.
Practically, that means: strip the main nav or reduce it to a logo and a single CTA. Kill the footer sitemap. Remove the blog link, the careers link, the “explore our other products” cross-sell. Every outbound link is a leak, and on paid traffic you are paying for each leak individually.
The one exception worth defending is a privacy policy and terms link in the footer. You need those for ad platform compliance anyway, and nobody has ever abandoned a trial because they noticed a privacy link.

The anatomy of a high converting landing page, block by block
The sequence below is what we use as a default on client work. It isn’t a law. But when a page underperforms, it usually deviates from this order, and not in a deliberate way.
- Hero: outcome headline, one-sentence clarifier, primary CTA, and a visual that shows the actual thing. No carousel.
- Proof strip: logos, a rating, or a number. Immediately under the fold line, not 2000 pixels down.
- The three-part value block: what you get, framed as outcomes with concrete nouns.
- Mechanism: how it actually works. Screenshots, steps, a short demo. This is where you earn belief.
- Deep proof: one detailed case study or testimonial with a name, a face and a number. One good one beats six vague ones.
- Objection handling: pricing clarity, cancellation terms, security, implementation effort. Usually an FAQ.
- Closing CTA: repeat the hero promise, repeat the action, nothing new.
Notice what’s missing. There’s no “About Us” block. No mission statement. On a cold-traffic page, nobody cares who you are until they believe the thing works.
The hero, in detail
Three seconds is roughly what you get. The visitor is deciding whether this page matches the thing they clicked. Message match is the whole game: if the ad said “invoicing for freelance designers” and the hero says “financial operations platform”, you have already lost half of them.
<section class="hero">
<h1>Get paid in 7 days, not 45</h1>
<p class="lead">Invoicing and chasing, automated, for freelance designers and studios.</p>
<!-- Primary action lives above the fold. Not a link to a section below it. -->
<a class="btn btn-lg btn-primary" href="#start">Start free, no card</a>
<p class="micro">Free for 14 days. Cancel in two clicks.</p>
<!-- width/height reserve the box so the image can't shift the CTA on load -->
<img src="/img/app-invoice.webp" width="1200" height="760"
alt="Invoice list showing three paid and one overdue invoice"
fetchpriority="high" decoding="async">
</section>
That fetchpriority="high" on the hero image is not decoration. It tells the browser to pull the Largest Contentful Paint candidate ahead of other requests, and on image-led heroes it routinely shaves a few hundred milliseconds off LCP. The explicit width and height attributes stop the image from shoving your CTA down the page mid-paint.
The micro-copy under the button does more work than most designers expect. “No credit card” and “cancel in two clicks” are objection handlers placed at the exact moment the objection occurs. Move them to an FAQ at the bottom and they stop working.
Proof placement: early and specific beats late and plentiful
Six logos in a grey strip is the default, and it’s fine as a baseline. It becomes useful when it’s specific: “4,100 studios bill through us” lands harder than a row of logos the reader doesn’t recognise.
The pattern that keeps failing is the testimonial wall. Nine cards, nine smiling stock photos, nine sentences that could describe any product. Readers skim it as decoration. One case study with a named person, a real company, a before number and an after number outperforms the wall, because it’s falsifiable. Specific claims feel true. Vague praise feels purchased.
Put at least one proof element above the fold on mobile if you can. Phones are where most paid traffic lands, and the mobile fold is roughly 600 pixels of usable height after the browser chrome.
The form is the page
If the conversion is a form submission, the form is not a component at the bottom of the page. It’s the point of the page. Treat it accordingly.
Field count is the lever with the most predictable payoff. Name, email and one qualifying question will convert better than seven fields, every time. If sales insists on company size and budget, the honest answer is that you’re trading volume for lead quality. That’s a legitimate trade. Make it consciously, and measure both sides.
<form action="https://webforms.to/submit/YOUR_ID" method="POST" novalidate id="start">
<label for="email">Work email</label>
<input id="email" name="email" type="email" autocomplete="email"
inputmode="email" required aria-describedby="email-err">
<p id="email-err" class="err" hidden></p>
<!-- honeypot: bots fill it, humans never see it -->
<input type="text" name="_gotcha" tabindex="-1" autocomplete="off" hidden>
<button type="submit">Create my account</button>
</form>
Two things there are deliberate. novalidate suppresses the browser’s native bubble so you can render errors inline with ARIA wiring, but you keep the required and type="email" attributes because the Constraint Validation API still populates validity. And autocomplete="email" plus inputmode="email" is the difference between a one-tap fill and a user typing on a mobile keyboard that defaults to the wrong layout. We wrote up the full approach to timing and error messaging in form validation that respects users.
For static landing pages, the backend is usually the worst part of the build: a single form shouldn’t require a server, a mail service account and a deploy pipeline. Posting to a hosted endpoint like WebForms gets the submission into email, Slack or a webhook without any of that, which matters when the page is going live on Friday and the CRM integration isn’t signed off yet.
Validate on blur, not on keystroke
Firing validation on every keypress means the user sees “invalid email” while typing the fourth character of their address. Validate on blur for the first pass, then switch that field to live validation once it has been marked invalid, so the error clears as soon as they fix it. That hybrid is what most people mean when they say a form “feels right”.
Performance is a conversion mechanic
You can write perfect copy and still lose people to a 4 second mobile load on a 4G connection. The thresholds worth holding yourself to are the Core Web Vitals “good” boundaries: LCP under 2.5 seconds, INP under 200 milliseconds, CLS under 0.1. These are not arbitrary; they are the figures Google publishes, and they correlate well enough with perceived quality that they’re a reasonable proxy.
The three things that break landing pages in practice:
- Web fonts loading late. Use
font-display: swapand preload the one weight used in the headline. Two weights maximum on a landing page. Our notes on web typography for developers cover the loading strategy in more depth. - Tag managers. One GTM container loading six scripts synchronously will torch your INP. Load analytics with
defer, and audit what’s actually in the container every quarter. - Unreserved space. Cookie banners, lazy-loaded testimonial sliders and embedded videos that pop in after paint. Reserve the box.
/ Reserve the embed box before the iframe arrives: no layout shift. /
.video-embed {
aspect-ratio: 16 / 9;
background: #111;
}
.video-embed iframe { width: 100%; height: 100%; border: 0; }
Instrument it before you redesign it
Most landing page redesigns are opinion laundering. Somebody senior doesn’t like the hero image, and six weeks later the page is different and nobody knows whether it’s better.
Before you touch the layout, get four signals in place:
- Scroll depth at 25, 50, 75 and 100 percent. If 70 percent of visitors never pass the hero, your problem is the hero, not the case study.
- CTA clicks by position. Tag the hero button, mid-page button and footer button separately. If the footer CTA gets most of the clicks, your page is long for a reason and you should keep the length.
- Form starts versus form completions. The gap between these two is where the money is. Field-by-field data is the fastest diagnostic available, and we covered how to collect it without being creepy in form analytics: measuring drop-off field by field.
- Submission success rate. Count server-side responses, not just client-side submit events. A silently failing endpoint looks identical to a copy problem in your analytics dashboard.
On traffic under roughly 1,000 conversions a month, formal A/B testing is mostly theatre. You will not reach significance on a 10 percent lift before the quarter ends. Make bigger, structural changes, ship them, and compare month over month with your eyes open about seasonality.
When to break the structure
Everything above assumes cold or lukewarm traffic and a considered purchase. Three situations where it doesn’t apply.
Branded search traffic. Someone who typed your company name already believes you exist. Skip the proof strip, shorten the page, get them to the action. Long pages insult people who are ready to buy.
Genuinely high-ticket B2B. At six-figure contract values the form is not the conversion, the conversation is. The page’s job shifts toward credibility and toward making it easy to find a human. Security documentation, compliance badges and a named contact matter more than a tight funnel.
Returning visitors in a retargeting pool. They’ve seen the pitch. Offer something new: a demo video, a pricing calculator, a discount. Running the same page a third time is how you train people to ignore you.
One more caveat on length: it isn’t the enemy. Irrelevance is. A 4,000 word page that answers every real objection in order will outperform a 400 word page that leaves people uncertain about pricing. The question is never “how long”, it’s “what’s still unanswered at the moment they decide”.
Frequently Asked Questions
Should the form go in the hero or at the bottom?
Put it in the hero when the offer is low friction and already understood, such as a free trial, a newsletter or a quote request from an ad with a clear promise. Put it at the bottom, with an anchor CTA in the hero, when the visitor needs convincing first. If you’re unsure, run both CTAs to the same anchored form and look at which position gets the clicks.
How many form fields is too many?
Three to five is the sweet spot for most lead generation. Beyond that, each additional field costs completion rate, and optional fields still cost you because users read them before deciding to skip. If your sales team needs more qualification, collect it in a second step after the first submission is already captured.
Do I need to remove the navigation entirely?
Remove the full navigation, yes. Keep the logo, keep legal links in the footer, and optionally keep a single CTA button in the header. The goal is eliminating competing paths, not making the page feel like a hostage situation.
Does video in the hero help conversions?
Sometimes, and it costs you performance every time. Autoplaying background video adds weight and can hurt LCP badly on mobile. A better default is a static image or a short looping WebM under 500KB with a poster frame, with the full demo video placed in the mechanism section where people have opted in to watching it.
Can I use the same landing page for every ad campaign?
You can, but you’ll lose message match, which is one of the cheapest wins available. Keep the structure identical and vary the headline, the lead sentence and the hero image per campaign. Most template systems make this trivial with a query parameter or a duplicated page, and the build cost is minutes, not days.
Where to start tomorrow
Open your current page on a phone, on a throttled connection, and read only what’s visible without scrolling. If you can’t tell what the product does, who it’s for and what happens when you click the button, fix that before anything else. That one screen determines whether the rest of your landing page anatomy ever gets looked at.
Then count your form fields and delete one. Measure for two weeks. Keep deleting until the lead quality complaints start. That’s your floor.


