Founder review pass on the landing page, plus commit the landing-page research/spec docs under features/lp. Branding & assets: - New PCBJam mark: convert the jam-jar image to favicon.svg (trimmed, rounded tile) and use it in the browser tab, header, and footer. - Footer "Built by": flower mark + "Emergence Engineering" in white Oswald (the blog's title font, self-hosted via @fontsource) so it's legible on dark. - Produce the positioning quadrant graphic (public/graphics) and drop the placeholder. Copy / accuracy: - Remove header GitHub link; point "Built by EE" + footer "About" to emergence-engineering.com; Built-by CTA -> mailto:contact@emergence-engineering.com. - Replace the wrong testimonial with Greg Detre's real quote from EE's site. - Drop blog icons from Multiplayer/Pillars/How-it-works; add "Coming soon" to live-cursors & pin-comment; drop the hard-coded Yjs mention. - Rework monetization to free+local / paid cloud-sync; remove "no metered AI", "no per-seat toll", and the Flux price claim; soften the AI section. - Reframe waitlist copy (incl. confirmation email) to newsletter + early access. Fixes: - Offset only #waitlist for the sticky header (scroll-margin-top); section anchors keep their original behavior. Docs: - Commit features/lp (copy spec, brand guide, competitive research) via force-add over the /features/ gitignore. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
987 lines
50 KiB
Markdown
987 lines
50 KiB
Markdown
# Landing Page Best Practices — An Exhaustive Reference
|
||
|
||
> A practical, data-backed guide to designing high-converting landing pages for
|
||
> marketing, product, and SaaS sites. Covers conversion optimization, page
|
||
> structure, copy, CTAs, forms, trust, visual design, typography, performance,
|
||
> mobile, accessibility, SEO, experimentation, personalization, and anti-patterns.
|
||
|
||
## How to read this document
|
||
|
||
Claims in this doc come in two tiers. Treat them differently:
|
||
|
||
- **🟢 Verified** — backed by a primary or strongly-corroborated source, and
|
||
adversarially fact-checked (see [Sources](#sources--evidence-grade) and
|
||
[Caveats](#caveats-source-quality--things-that-got-refuted)). Statistics are
|
||
cited inline like `[U24]`.
|
||
- **⚪ Established practice** — broad professional consensus from UX/CRO
|
||
literature (NN/g, Baymard, CXL, Smashing Magazine) but not individually
|
||
fact-checked with a hard statistic here. Reliable as guidance; verify the
|
||
exact number before quoting it externally.
|
||
|
||
When a figure is a **vendor benchmark** or **dated**, the doc says so. Two
|
||
widely-repeated stats were checked and **failed verification** — they are listed
|
||
in [Caveats](#caveats-source-quality--things-that-got-refuted) so you don't repeat
|
||
them.
|
||
|
||
> The single most important meta-principle: **none of these are laws.** They are
|
||
> strong priors. The only authority on *your* page is *your* A/B test with *your*
|
||
> traffic. Use this doc to generate better hypotheses, not to skip testing.
|
||
|
||
---
|
||
|
||
## Table of contents
|
||
|
||
1. [Executive summary & checklist](#1-executive-summary--checklist)
|
||
2. [Conversion rate optimization: principles & benchmarks](#2-conversion-rate-optimization-principles--benchmarks)
|
||
3. [Page structure & the canonical sections](#3-page-structure--the-canonical-sections)
|
||
4. [Copywriting & messaging frameworks](#4-copywriting--messaging-frameworks)
|
||
5. [Call-to-action (CTA) design](#5-call-to-action-cta-design)
|
||
6. [Forms & lead capture](#6-forms--lead-capture)
|
||
7. [Trust signals & credibility](#7-trust-signals--credibility)
|
||
8. [Visual design: layout, hierarchy, color, imagery, video](#8-visual-design-layout-hierarchy-color-imagery-video)
|
||
9. [Typography](#9-typography)
|
||
10. [Performance & Core Web Vitals](#10-performance--core-web-vitals)
|
||
11. [Mobile-first & responsive design](#11-mobile-first--responsive-design)
|
||
12. [Accessibility (WCAG)](#12-accessibility-wcag)
|
||
13. [SEO for landing pages](#13-seo-for-landing-pages)
|
||
14. [A/B testing, experimentation & analytics](#14-ab-testing-experimentation--analytics)
|
||
15. [Personalization & message-to-ad match](#15-personalization--message-to-ad-match)
|
||
16. [Common mistakes & anti-patterns](#16-common-mistakes--anti-patterns)
|
||
17. [Pre-launch QA checklist](#17-pre-launch-qa-checklist)
|
||
18. [Sources & evidence grade](#sources--evidence-grade)
|
||
19. [Caveats, source quality & refuted claims](#caveats-source-quality--things-that-got-refuted)
|
||
|
||
---
|
||
|
||
## 1. Executive summary & checklist
|
||
|
||
A high-converting landing page does five things well, in priority order:
|
||
|
||
1. **Communicates one clear value proposition** matched to the visitor's intent,
|
||
above the fold, in scannable language.
|
||
2. **Reduces friction** — one primary goal, one (or few) CTA, minimal form fields,
|
||
fast load.
|
||
3. **Builds trust** — social proof, specifics, credible design, guarantees.
|
||
4. **Loads fast and works everywhere** — Core Web Vitals in the green, mobile-first,
|
||
accessible.
|
||
5. **Gets measured and iterated** — instrumented analytics, disciplined A/B tests.
|
||
|
||
### The one-screen checklist
|
||
|
||
- [ ] **One page, one goal.** Single conversion action; minimize or remove site nav.
|
||
- [ ] **Headline states the value prop** and matches the ad/email that sent the visitor (message match).
|
||
- [ ] **Above-the-fold answers**: What is this? What's in it for me? What do I do next?
|
||
- [ ] **Primary CTA** is visually dominant, specific ("Start my free trial," not "Submit"), repeated down the page.
|
||
- [ ] **Copy is scannable** — short paragraphs, subheads and bullets that lead with information-carrying words, ~5th–7th grade reading level. 🟢`[U24]`
|
||
- [ ] **Social proof near the CTA** — testimonials, logos, counts, ratings, named sources.
|
||
- [ ] **Form asks only for what you need** now; consider multi-step for longer forms.
|
||
- [ ] **Benefits before features**; show, don't just tell (screenshots, demo, video).
|
||
- [ ] **LCP ≤ 2.5s, INP ≤ 200ms, CLS ≤ 0.1** at the 75th percentile. 🟢`[WV]`
|
||
- [ ] **Hero/LCP image is eagerly loaded** (never `loading="lazy"`); everything below the fold lazy-loaded. 🟢`[WV]`
|
||
- [ ] **Mobile-first**: tap targets ≥ ~44px, readable without zoom, no horizontal scroll.
|
||
- [ ] **Contrast**: ≥ 4.5:1 body text, ≥ 3:1 large text & UI component borders (WCAG 2.1 AA). 🟢`[W3C]`
|
||
- [ ] **Analytics + a single primary metric** defined before launch; experiments sized and not "peeked." 🟢`[GB]`
|
||
|
||
---
|
||
|
||
## 2. Conversion rate optimization: principles & benchmarks
|
||
|
||
### 2.1 What counts as a "good" conversion rate
|
||
|
||
> ⚠️ **Source caveat for this whole subsection.** All numbers below come from
|
||
> Unbounce's **2024 Conversion Benchmark Report** `[U24]` — 41,000 landing pages,
|
||
> 57M+ conversions, 464M pageviews. It is the most-cited public dataset, but it
|
||
> measures **pages built on Unbounce's own platform** using **median** methodology.
|
||
> Treat these as **directional benchmarks, not universal population statistics.**
|
||
|
||
- 🟢 **Median landing-page conversion rate across all industries: 6.6%.** `[U24]`
|
||
- 🟢 **A "good" rate (75th percentile) starts around 11.4%** and ranges up to
|
||
**40.8%** depending on industry. `[U24]` Don't conflate this with the median —
|
||
most pages sit far below it.
|
||
- 🟢 **Industry medians range from 3.8% (SaaS, the lowest) to 12.3%
|
||
(entertainment/events, the highest).** `[U24]` **SaaS is ~42% below the 6.6%
|
||
baseline** — a SaaS page converting at 4% is roughly average, not broken.
|
||
|
||
**Takeaway:** Benchmark against *your industry and traffic source*, and against
|
||
*your own past performance*, not against a global average. The most useful number
|
||
is your trend line, not the percentile table.
|
||
|
||
### 2.2 Traffic source dominates the result
|
||
|
||
🟢 Conversion varies enormously by **audience intent**, not just page quality `[U24]`:
|
||
|
||
| Channel | Avg. conversion | Notes |
|
||
|---------------|-----------------|-------|
|
||
| **Email** | **19.3%** | Highest — warm, opted-in, pre-qualified audience |
|
||
| Paid social | ~12% | |
|
||
| Paid search | ~10.9% | |
|
||
| Display | ~4.1% | Coldest, lowest-intent traffic |
|
||
|
||
Email converts ~60% better than paid social, ~77% better than paid search, and
|
||
~370% better than display. `[U24]`
|
||
|
||
> **Critical interpretation:** This is an **audience-temperature artifact**, not
|
||
> proof that one channel is "better." Email visitors already know you. **Never
|
||
> benchmark a cold paid-traffic landing page against an email landing page** — judge
|
||
> each page against the typical conversion rate *for its own channel.*
|
||
|
||
### 2.3 Simpler copy correlates with higher conversion
|
||
|
||
🟢 There is a **strong correlation between reading ease and conversion** `[U24]`:
|
||
|
||
| Reading level | Conversion rate |
|
||
|-----------------------|-----------------|
|
||
| 5th–7th grade | **11.1%** |
|
||
| 8th–9th grade | 7.1% (~56% lower) |
|
||
| Professional/college | 5.3% (~2× lower) |
|
||
|
||
**Caveats:** This is **correlation, not causation**, on a single-vendor dataset,
|
||
and there is at least one documented industry exception (entertainment, where
|
||
higher-grade copy converts better). Still, "write simpler" is one of the
|
||
safest, highest-leverage moves in CRO.
|
||
|
||
> ⛔ Do **not** cite the related "514% better / 12.9% vs 2.1% for SaaS" figure — it
|
||
> **failed verification.** See [Caveats](#caveats-source-quality--things-that-got-refuted).
|
||
|
||
### 2.4 Core CRO mental models (⚪ established practice)
|
||
|
||
- **Conversion = Motivation − Friction − Anxiety (+ Incentive).** Increase
|
||
motivation (value, relevance), strip friction (steps, fields, load time, choices),
|
||
and reduce anxiety (risk, trust). This is the operational heart of CRO.
|
||
- **One page, one goal.** Every element either advances the single conversion
|
||
goal or is a candidate for deletion. Competing CTAs dilute results.
|
||
- **Attention/decision ratio.** A focused landing page ideally has a 1:1 ratio of
|
||
links to conversion goals — remove site nav, footers full of links, and
|
||
secondary offers that leak attention.
|
||
- **Friction audit beats feature addition.** Most conversion gains come from
|
||
*removing* obstacles (a field, a step, a second of load) rather than adding
|
||
persuasion.
|
||
- **The page is a continuation of the click.** The visitor arrived with an
|
||
expectation set by the ad/email/search result. Honor it (see
|
||
[Message match](#15-personalization--message-to-ad-match)).
|
||
|
||
---
|
||
|
||
## 3. Page structure & the canonical sections
|
||
|
||
Landing pages follow a well-worn vertical narrative. Not every page needs every
|
||
section, but this is the canonical order and purpose. (⚪ established practice
|
||
throughout, with the scanning/hierarchy points 🟢 verified.)
|
||
|
||
### 3.1 The above-the-fold / hero
|
||
|
||
The first screen must answer three questions in **~5 seconds**:
|
||
|
||
1. **What is this?** (Headline — the value proposition)
|
||
2. **What's in it for me?** (Subhead — the benefit / how it helps)
|
||
3. **What do I do next?** (Primary CTA)
|
||
|
||
Components:
|
||
- **Headline** — clear over clever. State the outcome the visitor wants. Match the
|
||
source ad/email wording.
|
||
- **Subheadline** — one or two lines expanding the promise or naming the mechanism.
|
||
- **Primary CTA** — visually dominant button (see §5).
|
||
- **Hero visual** — product screenshot, short demo, or a human/contextual image
|
||
that reinforces (not decorates) the message. This is usually your **LCP element**
|
||
— load it eagerly (§10).
|
||
- **Optional**: a one-line trust strip (logo bar, rating, "trusted by N teams").
|
||
|
||
🟢 **Why the fold still matters:** users **scan, they don't read**, in an
|
||
**F-shaped pattern** — a horizontal sweep across the top, a shorter sweep lower,
|
||
then a vertical scan down the left edge. **Exhaustive word-by-word reading is
|
||
rare**, so the **most important information must be in the first two paragraphs**,
|
||
and the page must front-load meaning. `[NNf]`
|
||
|
||
### 3.2 Value proposition / problem framing
|
||
|
||
Immediately below the hero, expand on *why this matters*: the problem you solve and
|
||
the transformation you offer. Frameworks like PAS and AIDA (see §4) live here.
|
||
|
||
### 3.3 Social proof
|
||
|
||
Place social proof **early and again near each CTA**. Forms include:
|
||
- Customer **logos** ("trusted by")
|
||
- **Testimonials** with name, role, company, and photo (specificity = credibility)
|
||
- **Ratings/reviews** (stars, G2/Capterra/Trustpilot badges)
|
||
- **Quantified outcomes** ("cut onboarding time 40%")
|
||
- **Usage counts** ("Join 50,000+ teams")
|
||
|
||
(See §7 for what makes proof actually credible.)
|
||
|
||
### 3.4 Features vs. benefits
|
||
|
||
Lead with **benefits** (what the user gains), support with **features** (how it's
|
||
delivered). The reliable pattern is **benefit headline → feature detail → proof**.
|
||
Pair each with a visual that *shows* it working. **Show, don't just tell.**
|
||
|
||
### 3.5 How it works
|
||
|
||
For products with any complexity, a **3-step "how it works"** removes uncertainty
|
||
and reduces anxiety. Keep it to 3–4 steps, each one verb-led and visual.
|
||
|
||
### 3.6 Pricing (when present)
|
||
|
||
⚪ Established practice:
|
||
- Show pricing if you can; hiding it adds friction and distrust for many buyers.
|
||
- **3-tier "good/better/best"** layouts work; visually highlight the recommended
|
||
plan (anchoring).
|
||
- State billing terms plainly; show annual savings if offered.
|
||
- Put a risk-reducer next to price (free trial, money-back guarantee, "no credit
|
||
card required").
|
||
- Reduce choice overload — too many tiers/toggles increase decision friction.
|
||
|
||
### 3.7 FAQ / objection handling
|
||
|
||
An FAQ is **objection handling in disguise.** List the real reasons people *don't*
|
||
convert (price, security, switching cost, contract terms, integrations) and answer
|
||
them. Use an accessible accordion (keyboard-operable, proper ARIA) — but ensure the
|
||
content is also crawlable for SEO.
|
||
|
||
### 3.8 Final CTA / closing section
|
||
|
||
End with a restated value proposition and a **repeated primary CTA**. A visitor who
|
||
scrolled to the bottom is engaged — don't make them scroll back up to convert.
|
||
|
||
### 3.9 Footer
|
||
|
||
For a focused landing page, keep the footer **minimal**: legal links, privacy,
|
||
contact, essential trust marks. Avoid a sprawling sitemap footer that re-introduces
|
||
the navigation you deliberately removed.
|
||
|
||
### 3.10 Navigation: usually remove it
|
||
|
||
⚪ A dedicated campaign landing page typically **removes or minimizes top
|
||
navigation** to keep the attention ratio focused on the single goal. (A page that
|
||
also serves SEO/organic discovery may keep light nav — judge by purpose. Test it.)
|
||
|
||
---
|
||
|
||
## 4. Copywriting & messaging frameworks
|
||
|
||
Copy is the highest-leverage, lowest-cost lever on most landing pages. (⚪
|
||
established practice; the **clarity/readability** and **scanning** points are 🟢.)
|
||
|
||
### 4.1 Write for scanners
|
||
|
||
🟢 Because users scan in an F-pattern and rarely read word-by-word `[NNf]`:
|
||
- **Front-load** every subhead, paragraph, and bullet with **information-carrying
|
||
words** — the meaning must survive a left-edge vertical scan.
|
||
- Put the **most important information in the first two paragraphs.**
|
||
- Short paragraphs (1–3 lines), generous subheads, bulleted lists.
|
||
- One idea per sentence; cut filler, hedges, and throat-clearing intros.
|
||
|
||
🟢 **Keep it simple** — aim for a ~**5th–7th grade reading level**; simpler copy
|
||
correlates with materially higher conversion. `[U24]`
|
||
|
||
### 4.2 Messaging frameworks (⚪)
|
||
|
||
- **PAS — Problem · Agitate · Solution.** Name the pain, deepen it, then present
|
||
your product as the resolution. Excellent for the section just below the hero.
|
||
- **AIDA — Attention · Interest · Desire · Action.** A whole-page arc: hook →
|
||
build relevance → create want → ask for the action.
|
||
- **FAB — Features · Advantages · Benefits.** Translate every feature into a
|
||
concrete user benefit. ("256-bit encryption" → "your data stays private.")
|
||
- **The 4 U's for headlines** — Useful, Urgent, Unique, Ultra-specific.
|
||
- **Jobs-to-be-done framing.** Speak to the outcome the user "hires" the product
|
||
for, not the product's internals.
|
||
|
||
### 4.3 Message match (🟢 principle, see §15)
|
||
|
||
The headline and hero copy must **echo the ad, email, or search query** that drove
|
||
the click. Mismatch between the promise and the page is a top cause of bounce and a
|
||
direct waste of ad spend. CXL's "maintaining scent" guidance: keep the visual and
|
||
verbal "scent" continuous from ad → page → conversion. `[CXLs]`
|
||
|
||
### 4.4 Copy craft checklist
|
||
|
||
- **Specificity beats adjectives.** "Setup in 4 minutes" > "incredibly fast setup."
|
||
- **Second person.** "You/your," not "users/customers."
|
||
- **Quantify** wherever honest (numbers, %, time saved, $ saved).
|
||
- **One value proposition**, restated — don't make readers assemble it.
|
||
- **Active voice, concrete verbs.**
|
||
- **Cut jargon** unless your audience genuinely speaks it.
|
||
- **Microcopy matters** — button labels, form helper text, error messages, and the
|
||
reassurance line under the CTA ("No credit card required") all move conversion.
|
||
|
||
---
|
||
|
||
## 5. Call-to-action (CTA) design
|
||
|
||
### 5.1 CTA copy: be specific, set accurate expectations
|
||
|
||
🟢 **Generic CTAs like "Get Started" are ambiguous and can mislead.** NN/g's
|
||
usability study found "Get Started" "can apply to almost any goal"; information-
|
||
seekers who clicked it "expected details about the company, but instead were forced
|
||
into surveys, onboarding flows, and sales funnels," became "lost, uninformed, and
|
||
frustrated," and left for competitors. NN/g's guidance: **increase information
|
||
scent by stating precisely what the user should expect.** `[NNg]`
|
||
|
||
- ✅ "Take the 2-minute style quiz," "Start my free 14-day trial," "Get the pricing
|
||
PDF," "Book a demo."
|
||
- ⚠️ "Get Started," "Submit," "Continue," "Learn more" — vague; the user can't tell
|
||
what happens next.
|
||
|
||
> **Nuance:** Some CRO tests show "Get Started" *winning on raw click rate.* Clicks
|
||
> aren't conversions. A vague CTA can buy a click and lose the trust — optimize for
|
||
> the *qualified* action, and write CTAs that set honest expectations. `[NNg]`
|
||
|
||
- Phrase as **first-person value** when testing ("Start **my** free trial").
|
||
- Lead with a **verb**; name the **outcome**, not the mechanics ("Submit").
|
||
- Reduce anxiety with **adjacent microcopy** ("Free forever," "Cancel anytime,"
|
||
"No credit card required").
|
||
|
||
### 5.2 CTA visual design (⚪)
|
||
|
||
- **Make it the most visually dominant element** in its section — 🟢 hierarchy is
|
||
driven primarily by **color/contrast and size** `[NNv]`. Use a high-contrast,
|
||
unused accent color (the classic "make the button a color nothing else on the
|
||
page uses").
|
||
- **Button affordance** — it should look clickable (solid fill, padding, sometimes
|
||
subtle depth). 🟢 Its boundary must meet **3:1 contrast** for accessibility
|
||
`[W3C]`.
|
||
- **Size & tap target** — comfortably large; ≥ ~44×44px on touch.
|
||
- **Whitespace** around the button isolates and emphasizes it.
|
||
|
||
### 5.3 Placement & quantity (⚪)
|
||
|
||
- **One primary action.** You may have a secondary, visually subordinate option
|
||
(e.g., "Book a demo" ghost button next to "Start free trial"), but never two
|
||
equal CTAs competing.
|
||
- **Repeat the same primary CTA** down the page (hero, after key sections, final
|
||
close) so the visitor can act whenever convinced — but keep the *action* singular.
|
||
- **Above the fold** for low-consideration offers; for complex/expensive products,
|
||
it's fine (and often better) for the *decision* to come after the page has made
|
||
its case — just keep a persistent or repeated CTA available.
|
||
|
||
---
|
||
|
||
## 6. Forms & lead capture
|
||
|
||
Forms are where intent turns into conversion — and where friction kills it. (⚪
|
||
established practice; treat specific field-count numbers as directional.)
|
||
|
||
### 6.1 Ask for less
|
||
|
||
- **Every field costs conversions.** Request only what you genuinely need *at this
|
||
step.* Defer the rest to later in the funnel or progressive profiling.
|
||
- **Typical guidance:** lead-gen forms convert best in the **~3–5 field** range;
|
||
each extra field adds friction. (Exact optimal count is offer- and audience-
|
||
dependent — test it.)
|
||
- **Drop optional fields** or mark them clearly. Phone number, company size, and
|
||
"how did you hear about us" are common conversion-killers — collect them later.
|
||
|
||
### 6.2 Reduce friction in the fields you keep (⚪, drawn from Baymard-style UX research)
|
||
|
||
- **Single-column layout.** Multi-column forms cause misreads and skips.
|
||
- **Top-aligned labels** for fastest completion; keep labels visible (don't rely on
|
||
disappearing placeholders as labels — an accessibility and usability failure).
|
||
- **Right input types & autocomplete** — `type="email"`, `inputmode`, `autocomplete`
|
||
tokens trigger correct mobile keyboards and autofill.
|
||
- **Inline, specific validation** — validate on blur, explain *how to fix* the error,
|
||
show errors adjacent to the field, and never wipe the form on submit failure.
|
||
- **Don't split fields unnecessarily** (e.g., one full-name field beats first/last;
|
||
one phone field beats three).
|
||
- **Smart defaults & formatting** — auto-format phone/card numbers; default the
|
||
obvious choice.
|
||
- **Make the submit button descriptive** (§5.1), not "Submit."
|
||
|
||
### 6.3 Multi-step forms
|
||
|
||
- **Break long forms into steps** to lower perceived effort; show a **progress
|
||
indicator.** Each step feels small, and partial-completion creates commitment
|
||
(sunk-cost / consistency).
|
||
- **Ask the easy/low-risk questions first** (the foot-in-the-door), sensitive ones
|
||
(payment, phone) last.
|
||
- **Front-load momentum**: a first step that's a simple choice (radio buttons) often
|
||
outperforms one that opens with an email field.
|
||
|
||
### 6.4 Anxiety reducers around the form
|
||
|
||
- Reassurance microcopy ("We'll never share your email," "30-second signup").
|
||
- Security/privacy cues near sensitive fields (§7).
|
||
- Clear statement of what happens after submit (and *when*).
|
||
|
||
---
|
||
|
||
## 7. Trust signals & credibility
|
||
|
||
Trust closes the gap between "interested" and "converted." Anxiety is a primary
|
||
conversion blocker; credible signals remove it. (⚪ established practice.)
|
||
|
||
### 7.1 Types of trust signals
|
||
|
||
- **Social proof** — testimonials (with real name, role, company, **photo**), case
|
||
studies, customer logos, star ratings, third-party review badges (G2, Trustpilot,
|
||
Capterra), and usage counts ("50,000+ teams").
|
||
- **Authority** — press mentions ("as seen in"), awards, certifications, notable
|
||
customers, expert endorsements.
|
||
- **Security & privacy** — SSL/HTTPS (table stakes), trust seals (Norton/McAfee-style),
|
||
PCI/SOC 2/ISO badges, GDPR/privacy statements, payment-method logos near checkout.
|
||
- **Risk reversal** — money-back guarantee, free trial, "no credit card required,"
|
||
free cancellation, free returns. These directly attack purchase anxiety.
|
||
- **Transparency** — real company info, a physical address, named team, working
|
||
contact methods, clear pricing.
|
||
|
||
### 7.2 What makes proof *credible* (not just present)
|
||
|
||
- **Specific beats generic.** "Reduced support tickets 38% in 60 days — Maria K.,
|
||
Head of CX at Acme" outperforms "Great product! — A customer."
|
||
- **Faces and names** raise believability; anonymous quotes read as fabricated.
|
||
- **Relevance/recognizability** — logos and testimonials from companies *like the
|
||
visitor's* matter more than famous-but-irrelevant ones.
|
||
- **Proximity to the decision** — put proof and risk-reversers **right next to the
|
||
CTA/form**, where doubt peaks.
|
||
- **Don't over-badge.** A wall of generic seals can *reduce* trust (looks spammy);
|
||
a few relevant, credible marks beat many weak ones.
|
||
|
||
---
|
||
|
||
## 8. Visual design: layout, hierarchy, color, imagery, video
|
||
|
||
### 8.1 Visual hierarchy
|
||
|
||
🟢 **Visual hierarchy guides the eye to the most important elements**, and
|
||
importance is communicated **primarily through color (and contrast) and size/scale**,
|
||
while **proximity and grouping (common regions)** show which elements belong
|
||
together. `[NNv]`
|
||
|
||
> *Calibration note:* this was the one finding in the research with a non-unanimous
|
||
> verification (2–1); NN/g's broader writing lists scale, value, color, spacing,
|
||
> placement "and a variety of other signals." Color and size are the two **most-
|
||
> emphasized** cues, but they aren't the *only* ones. `[NNv]`
|
||
|
||
Apply it:
|
||
- The **primary CTA** should be the highest-contrast, attention-grabbing element in
|
||
its viewport.
|
||
- A clear **type scale** (§9) makes headline > subhead > body obvious at a glance.
|
||
- **Group related items** (label with its field, benefit with its icon) via
|
||
proximity; separate unrelated ones with whitespace.
|
||
|
||
### 8.2 Layout & scanning patterns
|
||
|
||
🟢 Design for **F-pattern scanning** on text-heavy pages: front-load meaning,
|
||
left-align key content, use subheads as scan anchors. `[NNf]`
|
||
|
||
⚪ The **Z-pattern** suits sparse, hero-style layouts (logo top-left → CTA
|
||
top-right → diagonal → bottom CTA). Use Z for minimal hero sections, F for
|
||
content-dense pages.
|
||
|
||
⚪ **Whitespace** (negative space) is an active design tool: it increases
|
||
comprehension, reduces cognitive load, isolates the CTA, and signals quality.
|
||
Don't fear emptiness around the key action.
|
||
|
||
⚪ **Directional cues** — arrows, a person's gaze, lines, motion — can guide
|
||
attention toward the CTA/form. (Eye-tracking shows people tend to look where a
|
||
pictured face looks.)
|
||
|
||
### 8.3 Color & contrast
|
||
|
||
- ⚪ Use a **restrained palette**: a neutral base, one brand color, and a single
|
||
**high-contrast accent reserved for CTAs.** Color's job here is hierarchy, not
|
||
decoration — don't dilute the accent by using it everywhere.
|
||
- 🟢 **Meet contrast minimums**: ≥ **4.5:1** for body text, ≥ **3:1** for large text
|
||
and **UI component borders** (WCAG 2.1 AA — §12). `[W3C]`
|
||
- ⚪ Don't rely on **color alone** to convey meaning (errors, required fields,
|
||
states) — pair with text/icons for colorblind users.
|
||
- ⚪ "Which button color converts best" is **context-dependent** — the winning color
|
||
is whatever **contrasts most** with its surroundings and the rest of the palette,
|
||
not a universally magic hue. Test it.
|
||
|
||
### 8.4 Imagery vs. illustration
|
||
|
||
- ⚪ **Show the actual product** (real screenshots, UI, the thing in use) — it
|
||
outperforms generic stock imagery and decorative abstractions for most products.
|
||
- ⚪ **Avoid clichéd stock photos** (handshakes, faceless "business people"); they
|
||
read as filler and can lower trust.
|
||
- ⚪ **Images must reinforce the message**, not just fill space — a "hero image" that
|
||
says nothing about the offer is wasted real estate (and often the LCP cost).
|
||
- ⚪ **Human faces** can increase warmth and direct attention, but choose authentic,
|
||
relevant imagery over staged stock.
|
||
- **Performance:** the hero image is usually the **LCP element** — optimize and
|
||
**eagerly load** it (§10).
|
||
|
||
### 8.5 Video
|
||
|
||
- ⚪ A short **explainer/demo video** can lift conversion for products that benefit
|
||
from showing motion or workflow — but it adds weight and can distract.
|
||
- **Never autoplay with sound.** Make controls obvious. Provide **captions**
|
||
(accessibility + sound-off viewing).
|
||
- **Don't let video block the LCP/critical render** — use a lightweight poster
|
||
image, lazy-load the player, and avoid heavy embeds above the fold.
|
||
- **Provide a text/visual fallback** — many users won't press play; the page must
|
||
still convert without the video.
|
||
|
||
---
|
||
|
||
## 9. Typography
|
||
|
||
Type is most of what a landing page *is* — it carries the message and a large share
|
||
of perceived quality. (⚪ established practice; web-font performance ties to the 🟢
|
||
Core Web Vitals section.)
|
||
|
||
### 9.1 Readability fundamentals
|
||
|
||
- **Body size:** ~16px minimum on the web; larger (18–20px) is increasingly common
|
||
and improves readability. Never ship sub-14px body copy.
|
||
- **Line length (measure):** aim for **~50–75 characters per line** (~45–75). Too
|
||
long tires the eye; too short breaks rhythm.
|
||
- **Line height (leading):** roughly **1.4–1.6×** the font size for body text.
|
||
- **Sufficient contrast** (§8.3 / §12) — light-gray-on-white body text is a common,
|
||
avoidable readability and accessibility failure.
|
||
- **Left-aligned body text** for LTR languages; avoid justified text on the web
|
||
(uneven spacing/rivers). Don't center long paragraphs.
|
||
|
||
### 9.2 Type scale & hierarchy
|
||
|
||
- Use a **modular scale** (e.g., 1.2–1.333 ratio) so headline, subhead, body, and
|
||
caption sizes relate harmoniously and the hierarchy reads instantly.
|
||
- Establish **2–3 clear levels** of heading plus body and small/caption. Differ by
|
||
**size and weight**, not many different fonts.
|
||
- Hierarchy via **weight and size**, sparingly via color — ties back to 🟢 visual
|
||
hierarchy being driven by size and color `[NNv]`.
|
||
|
||
### 9.3 Font pairing (⚪, Smashing Magazine)
|
||
|
||
- **Limit to two typefaces** (often one display/heading + one body), occasionally
|
||
three. More than that looks chaotic and hurts performance.
|
||
- **Pair by contrast, not similarity** — combine fonts that are clearly different
|
||
(e.g., a characterful serif heading with a clean sans body) so each has a job;
|
||
near-identical fonts create awkward tension. `[SMt]`
|
||
- **A single well-chosen superfamily** (with multiple weights/styles) can do the
|
||
whole job and guarantees harmony. `[SMt]`
|
||
- Match **mood and x-height**; ensure both fonts have the weights you need.
|
||
|
||
### 9.4 System fonts vs. custom web fonts (performance trade-off)
|
||
|
||
- **System font stacks** (e.g., `-apple-system, Segoe UI, Roboto, …`) have **zero
|
||
network cost, no FOIT/FOUT, and instant render** — the fastest possible choice and
|
||
great for LCP/CLS. The trade-off is less brand distinctiveness.
|
||
- **Custom web fonts** strengthen brand but add bytes and a render dependency that
|
||
can hurt **LCP** (text paint) and cause **CLS** (layout shift on swap). If you use
|
||
them:
|
||
- **Subset** to the characters/weights you actually use.
|
||
- Use **`woff2`** (smallest modern format).
|
||
- **`font-display: swap`** (or `optional`) to avoid invisible text (FOIT); `swap`
|
||
favors content visibility, `optional` favors stability.
|
||
- **`<link rel="preload">`** the critical (above-the-fold) font files.
|
||
- **Self-host** where feasible (avoids a third-party connection; third-party font
|
||
CDNs add a connection and are no longer cache-shared across sites).
|
||
- **Set `size-adjust`/`@font-face` metric overrides or a matched fallback** to
|
||
minimize the layout shift when the web font swaps in (protects **CLS**).
|
||
- **Pragmatic default:** system fonts (or one preloaded, subset display font for
|
||
headings + a system body) gives most of the brand benefit at a fraction of the
|
||
performance cost.
|
||
|
||
---
|
||
|
||
## 10. Performance & Core Web Vitals
|
||
|
||
Speed is a conversion feature, an SEO factor, and a UX baseline. (🟢 thresholds and
|
||
lazy-loading are primary-sourced from Google.)
|
||
|
||
### 10.1 The Core Web Vitals thresholds
|
||
|
||
🟢 Google's Core Web Vitals define the bar for a good experience, measured at the
|
||
**75th percentile** of page loads `[WV]`:
|
||
|
||
| Metric | Measures | Good | Needs improvement | Poor |
|
||
|--------|----------|------|-------------------|------|
|
||
| **LCP** (Largest Contentful Paint) | Loading | **≤ 2.5s** | 2.5–4s | > 4s |
|
||
| **INP** (Interaction to Next Paint) | Interactivity | **≤ 200ms** | 200–500ms | > 500ms |
|
||
| **CLS** (Cumulative Layout Shift) | Visual stability | **≤ 0.1** | 0.1–0.25 | > 0.25 |
|
||
|
||
🟢 **INP replaced First Input Delay (FID)** as a stable Core Web Vital in **March
|
||
2024.** `[WV]`
|
||
|
||
### 10.2 Optimizing each metric (⚪ tactics, 🟢 the lazy-load rule)
|
||
|
||
**LCP (loading)** — usually the hero image or headline text:
|
||
- 🟢 **Never lazy-load the LCP/above-the-fold image.** Lazy-loading it opts it out of
|
||
the preload scanner and de-prioritizes it, hurting LCP. **Eagerly load in-viewport
|
||
images; lazy-load everything below the fold** — fewer bytes *and* better CWV. In
|
||
Google's A/B tests, disabling lazy-load on the hero improved LCP ~13% desktop /
|
||
~15% mobile. Best result pairs eager loading with **`fetchpriority="high"`.** `[WV]`
|
||
- Serve responsive, modern-format images (AVIF/WebP), correctly sized; compress.
|
||
- **Preload** the LCP image/font; inline critical CSS; minimize render-blocking JS/CSS.
|
||
- Use a CDN; enable caching; reduce server response time (TTFB).
|
||
|
||
**INP (interactivity):**
|
||
- Ship **less JavaScript**; code-split and defer non-critical scripts.
|
||
- Break up **long tasks**; avoid heavy work on the main thread during interactions.
|
||
- Audit third-party scripts (tag managers, chat widgets, A/B-test tools) — they're a
|
||
top INP and weight offender.
|
||
|
||
**CLS (visual stability):**
|
||
- **Always set explicit `width`/`height` (or `aspect-ratio`)** on images, videos,
|
||
iframes, and ad slots so space is reserved.
|
||
- **Reserve space** for late-loading content (banners, embeds, cookie bars).
|
||
- Avoid inserting content **above** existing content after load.
|
||
- Prevent **font-swap shift** (see §9.4 — `size-adjust`/metric overrides).
|
||
|
||
### 10.3 Speed and conversion
|
||
|
||
🟢 **Mobile speed is conversion-critical** `[GMS]`:
|
||
- **53% of mobile visits are abandoned if a site takes longer than 3 seconds to
|
||
load.**
|
||
- **Bounce rate climbs steeply with load time** — ~**13%** for pages under 3s, rising
|
||
to nearly **60%** by 9s.
|
||
|
||
> ⚠️ **Caveats:** these figures are from Google research dated **~2016–2017** (≈9–10
|
||
> years old) and describe **correlation**, not proven causation. They are still
|
||
> widely cited and directionally sound — faster is better — but don't present them as
|
||
> fresh or causal. ⛔ The related "**1 second faster → up to 27% more conversions**"
|
||
> claim **failed verification** — do not cite it (see
|
||
> [Caveats](#caveats-source-quality--things-that-got-refuted)).
|
||
|
||
### 10.4 Performance checklist
|
||
|
||
- [ ] Measure with **field data** (CrUX / real-user monitoring), not just lab tools.
|
||
- [ ] LCP element identified, optimized, **eagerly loaded + preloaded.** 🟢
|
||
- [ ] Images: responsive, modern format, compressed, dimensioned.
|
||
- [ ] Below-fold media `loading="lazy"`. 🟢
|
||
- [ ] Fonts subset, `woff2`, preloaded, `font-display: swap`. (§9.4)
|
||
- [ ] JS minimized, deferred, third-parties audited.
|
||
- [ ] CLS guarded with reserved space everywhere.
|
||
- [ ] Tested on a **real mid-tier phone on throttled network**, not just desktop.
|
||
|
||
---
|
||
|
||
## 11. Mobile-first & responsive design
|
||
|
||
The majority of landing-page traffic is mobile; design for the small screen first,
|
||
then enhance. (⚪ established practice; speed and accessibility points are 🟢.)
|
||
|
||
- **Design mobile-first.** Decide what matters on a 360–390px-wide screen, then add
|
||
for larger viewports. Don't shrink a desktop page as an afterthought.
|
||
- **Single-column, thumb-friendly layouts.** Stack content; keep the primary CTA
|
||
reachable and prominent (consider a persistent/sticky CTA on long pages).
|
||
- **Tap targets ≥ ~44×44px** with adequate spacing so users don't mis-tap.
|
||
- **Readable without zoom** — ≥16px body, sufficient contrast, no horizontal scroll.
|
||
- **Compress the above-the-fold** — mobile folds are short; get value prop + CTA into
|
||
the first screen.
|
||
- **Right input types & autofill** on forms (§6.2) — mobile typing is costly.
|
||
- **Mind fat-finger zones** and avoid hover-dependent interactions (no hover on
|
||
touch).
|
||
- 🟢 **Mobile performance is non-negotiable** — see the 53%/bounce-curve data (§10.3)
|
||
`[GMS]`. Mobile users are on worse networks and devices; budget accordingly.
|
||
- **Responsive ≠ accessible automatically**, but they overlap: fluid layouts,
|
||
scalable text (respect user zoom up to 200%), and reflow without loss of content
|
||
serve both. `[LA]`
|
||
- **Test on real devices** across iOS/Android and a range of widths, not just the
|
||
browser emulator.
|
||
|
||
---
|
||
|
||
## 12. Accessibility (WCAG)
|
||
|
||
Accessibility widens your audience, reduces legal risk, and overlaps heavily with
|
||
good UX and SEO. Target **WCAG 2.1 (or 2.2) Level AA.** (🟢 contrast is primary-
|
||
sourced from W3C; the rest is established WCAG guidance.)
|
||
|
||
### 12.1 Contrast (🟢 verified)
|
||
|
||
WCAG 2.1 AA minimums `[W3C]`:
|
||
- **Body/normal text & images of text: ≥ 4.5:1** (SC 1.4.3).
|
||
- **Large text** (≥18pt, or ≥14pt bold): **≥ 3:1.**
|
||
- **Non-text UI components & graphics** — button boundaries, form-field borders,
|
||
icons that convey meaning, focus indicators: **≥ 3:1** (SC 1.4.11 Non-text
|
||
Contrast).
|
||
|
||
(The stricter 7:1 / 4.5:1 thresholds are **AAA**, optional.)
|
||
|
||
### 12.2 Other essentials (⚪ WCAG AA)
|
||
|
||
- **Semantic structure** — real `<h1>…<h6>` order, landmarks (`header/main/nav/
|
||
footer`), lists, and a single descriptive `<h1>` (also helps SEO).
|
||
- **Keyboard operable** — every interactive element reachable and usable by keyboard,
|
||
in a logical order, with a **visible focus indicator.**
|
||
- **Alt text** — meaningful images get descriptive `alt`; decorative images get
|
||
empty `alt=""`.
|
||
- **Labels** — every form field has a programmatically associated, persistent
|
||
`<label>`; errors are announced and described in text (not color alone).
|
||
- **Don't convey meaning by color alone** (§8.3).
|
||
- **Respect `prefers-reduced-motion`**; avoid content that flashes > 3×/sec.
|
||
- **Captions/transcripts** for video/audio.
|
||
- **Resizable text / zoom** to 200% without loss of content or function.
|
||
- **Accessible accordions/modals/tabs** (FAQ, menus) — correct ARIA, focus
|
||
management, escape handling.
|
||
- **Test** with automated tools (axe, Lighthouse, WAVE) *and* manual keyboard +
|
||
screen-reader passes; automation catches only a fraction of issues.
|
||
|
||
---
|
||
|
||
## 13. SEO for landing pages
|
||
|
||
Even paid/campaign pages benefit from SEO hygiene; organic landing pages depend on
|
||
it. (⚪ established practice; overlaps with 🟢 performance & accessibility.)
|
||
|
||
- **Search intent match** — the page must satisfy the query it targets; align
|
||
headline and content to intent.
|
||
- **One primary keyword/topic per page**, in the **`<title>`**, `<h1>`, an early
|
||
paragraph, and naturally throughout — no stuffing.
|
||
- **Unique, compelling `<title>` (~50–60 chars)** and **meta description (~150–160
|
||
chars)** — they drive click-through from the SERP.
|
||
- **One `<h1>`**, logical heading hierarchy (also accessibility, §12).
|
||
- **Descriptive, readable URL** with the keyword; avoid parameter soup.
|
||
- **Crawlable content** — important copy in HTML text, not baked into images;
|
||
FAQ/accordion content present in the DOM.
|
||
- **Internal links & canonical tag** — set `rel="canonical"`, especially when paid
|
||
variants risk duplicate-content issues.
|
||
- **Structured data** (FAQ, Product, Review, Breadcrumb schema) for rich results
|
||
where appropriate.
|
||
- **Core Web Vitals** are a ranking signal — §10 does double duty. 🟢`[WV]`
|
||
- **Mobile-friendliness** (mobile-first indexing) — §11.
|
||
- **Image SEO** — descriptive filenames + alt text; compressed (also CWV).
|
||
- **Avoid thin/duplicate content** across many near-identical paid landing pages; if
|
||
they shouldn't rank, consider `noindex` and rely on canonical/intent for the rest.
|
||
|
||
---
|
||
|
||
## 14. A/B testing, experimentation & analytics
|
||
|
||
Optimization without measurement is decoration. But naïve testing produces
|
||
confident, wrong answers — rigor matters. (🟢 statistical pitfalls are primary-
|
||
sourced.)
|
||
|
||
### 14.1 Instrument before you optimize (⚪)
|
||
|
||
- Define **one primary conversion metric** (the macro-conversion) **before launch**;
|
||
track micro-conversions (scroll depth, CTA clicks, form starts/abandons) as
|
||
diagnostics.
|
||
- Use analytics + **session recordings / heatmaps** to *find* problems, then **A/B
|
||
testing** to *validate* fixes. Qualitative tools generate hypotheses; experiments
|
||
confirm them.
|
||
- Watch the **whole funnel**, not just the landing page — a page "win" that lowers
|
||
downstream quality is a loss.
|
||
|
||
### 14.2 Run experiments that don't lie to you (🟢)
|
||
|
||
- 🟢 **The multiple-comparisons problem.** Testing one hypothesis at the 5%
|
||
significance level across **20 metrics gives ~64% probability of at least one false
|
||
positive by chance alone** (1 − 0.95²⁰ = 0.6415). Pick a **primary metric**; apply
|
||
a **correction** (e.g., Bonferroni) when you must judge many. `[GB]`
|
||
- 🟢 **Don't "peek."** Repeatedly checking results and stopping when you see
|
||
significance **inflates the false-positive rate — the more you peek, the worse it
|
||
gets.** Evan Miller's canonical example: a nominal 1% test can hit ~5%+ actual
|
||
false-positive rate after ten peeks; worst-case ~26% vs a nominal 5%. Use a
|
||
**fixed sample size set in advance**, or a proper **sequential testing** method
|
||
designed for continuous monitoring. `[GB][EM]`
|
||
|
||
### 14.3 Methodology checklist (⚪ + 🟢)
|
||
|
||
- [ ] **Form a hypothesis** ("Changing X will improve Y because Z"), not a random
|
||
tweak.
|
||
- [ ] **Calculate sample size & duration up front** from baseline rate, minimum
|
||
detectable effect, and power (usually 80%). 🟢 (avoids peeking)
|
||
- [ ] **Run full business cycles** (≥1–2 weeks; cover weekday/weekend) to avoid
|
||
day-of-week and novelty effects.
|
||
- [ ] **One primary metric**; secondary metrics are directional only. 🟢
|
||
- [ ] **Don't stop early** on a "significant" result; respect the predetermined
|
||
endpoint. 🟢
|
||
- [ ] **Ensure adequate traffic** — low-traffic pages can't power reliable tests;
|
||
prioritize bigger changes or longer runs.
|
||
- [ ] **Test meaningful changes** (value prop, offer, layout) over trivial ones
|
||
(button shade) when traffic is scarce — bigger effects need less traffic.
|
||
- [ ] **Segment** results (device, source, new vs returning) — an aggregate tie can
|
||
hide a strong segment win/loss.
|
||
- [ ] **Account for guardrail metrics** (revenue quality, churn, support load), not
|
||
just the click.
|
||
|
||
### 14.4 "Best practices" are hypotheses, not guarantees (⚪)
|
||
|
||
Every recommendation in this document is a **prior**, not a verdict. CXL's point
|
||
stands: copied "best practices" frequently fail because they ignore *your* context,
|
||
audience, and traffic. `[CXLf]` Use this doc to *generate* tests; let *your* data
|
||
decide.
|
||
|
||
---
|
||
|
||
## 15. Personalization & message-to-ad match
|
||
|
||
Relevance is conversion fuel — the more the page feels made for *this* visitor and
|
||
*this* click, the better it converts. (🟢 the scent principle is primary-sourced to
|
||
NN/g's broader work via CXL; treat specifics as established practice.)
|
||
|
||
- **Message match / "maintaining scent."** Keep the **verbal and visual "scent"
|
||
continuous** from ad → landing page → conversion. The headline should echo the
|
||
ad's promise and keywords; the imagery and offer should match. Breaking scent
|
||
(different wording, different offer, generic homepage) spikes bounce and **wastes
|
||
ad spend.** `[CXLs]`
|
||
- **Dedicated page per campaign/segment.** Don't send paid traffic to a generic
|
||
homepage; build a focused page per offer/audience. One ad promise → one matching
|
||
page.
|
||
- **Dynamic Text Replacement (DTR).** Swap headline/keywords to mirror the exact
|
||
search term or ad variant, so every visitor sees their own query reflected back.
|
||
- **Audience/segment personalization.** Tailor copy, social proof, and imagery by
|
||
industry, role, geography, device, or funnel stage when you have the data —
|
||
relevant proof (logos/testimonials *like the visitor*) converts harder.
|
||
- **Honor intent and temperature.** Cold paid traffic needs more education and trust
|
||
before the ask; warm email traffic can convert faster (recall the channel data,
|
||
§2.2 — but it's an intent artifact, not page magic). `[U24]`
|
||
- **Personalize responsibly.** Respect privacy/consent; don't be creepy. Test that
|
||
personalization actually lifts conversion — it isn't free of complexity or risk.
|
||
|
||
---
|
||
|
||
## 16. Common mistakes & anti-patterns
|
||
|
||
A consolidated "what kills conversion" list. (⚪ established; ⛔ marks the two
|
||
specific stats that **failed verification** — don't repeat them.)
|
||
|
||
**Strategy & focus**
|
||
- ❌ **Multiple competing goals / CTAs** — diluted attention, lower conversion.
|
||
- ❌ **Sending paid traffic to the homepage** instead of a dedicated, message-matched
|
||
page.
|
||
- ❌ **Full site navigation** that leaks attention off the conversion path.
|
||
- ❌ **Treating best practices as laws** and skipping testing. `[CXLf]`
|
||
|
||
**Message & copy**
|
||
- ❌ **Vague or clever-over-clear headline** that doesn't state the value.
|
||
- ❌ **Message mismatch** between ad and page (broken scent). `[CXLs]`
|
||
- ❌ **Feature-dumping** with no benefit/translation; "we" language instead of "you."
|
||
- ❌ **Copy too complex** — higher reading level correlates with lower conversion.
|
||
🟢`[U24]`
|
||
- ❌ **Generic CTA copy** ("Get Started"/"Submit") that misleads or under-motivates.
|
||
🟢`[NNg]`
|
||
- ❌ **Walls of text** that ignore F-pattern scanning. 🟢`[NNf]`
|
||
|
||
**Forms & friction**
|
||
- ❌ **Too many form fields** / asking for data you don't need yet.
|
||
- ❌ **Placeholder-as-label**, multi-column forms, vague error messages, form-wipe on
|
||
error.
|
||
|
||
**Trust**
|
||
- ❌ **No social proof**, or **generic/anonymous** testimonials.
|
||
- ❌ **Badge spam** that reads as spammy and *lowers* trust.
|
||
- ❌ **Hidden pricing / unclear terms / no risk reversal.**
|
||
|
||
**Visual & type**
|
||
- ❌ **Weak visual hierarchy** — CTA not dominant; everything shouts equally. 🟢`[NNv]`
|
||
- ❌ **Low-contrast text**, cramped line length, tiny body type. 🟢`[W3C]`
|
||
- ❌ **Clichéd stock photos** and decorative images that carry no message.
|
||
- ❌ **Too many typefaces.**
|
||
|
||
**Performance**
|
||
- ❌ **Lazy-loading the hero/LCP image** — directly harms LCP. 🟢`[WV]`
|
||
- ❌ **Unoptimized images, heavy third-party scripts, layout shift** from
|
||
un-dimensioned media/fonts.
|
||
- ❌ **Ignoring mobile speed** — see the 53%/bounce data. 🟢`[GMS]`
|
||
|
||
**Mobile & accessibility**
|
||
- ❌ **Desktop-first** pages crammed onto phones; tiny tap targets; horizontal scroll.
|
||
- ❌ **Failing contrast / no keyboard access / missing labels & alt text.** 🟢`[W3C]`
|
||
|
||
**Measurement**
|
||
- ❌ **Peeking and stopping early**; ❌ **judging many metrics with no correction**.
|
||
🟢`[GB][EM]`
|
||
- ❌ **Calling tests on tiny samples / partial cycles**; ❌ **no analytics at all.**
|
||
|
||
**⛔ Do NOT cite these (failed verification):**
|
||
- ⛔ "Simpler SaaS copy converts **514% better** (12.9% vs 2.1%)." — refuted.
|
||
- ⛔ "**1 second faster load → up to 27% more conversions.**" — refuted.
|
||
|
||
---
|
||
|
||
## 17. Pre-launch QA checklist
|
||
|
||
**Message & structure**
|
||
- [ ] One clear value proposition, above the fold, matching the source ad/email.
|
||
- [ ] Hero answers What / Why-me / What-next within ~5 seconds.
|
||
- [ ] Benefits lead; features support; product is *shown*, not just described.
|
||
- [ ] Social proof present and specific, near each CTA.
|
||
- [ ] FAQ answers the real objections; risk-reversal stated.
|
||
- [ ] Copy scannable, ~5th–7th grade reading level. 🟢
|
||
|
||
**CTA & forms**
|
||
- [ ] Primary CTA is specific, visually dominant, repeated; only one primary action.
|
||
- [ ] Form asks the minimum; single-column; persistent labels; good input types;
|
||
inline validation; descriptive submit button.
|
||
|
||
**Visual & type**
|
||
- [ ] Clear hierarchy (size/color); restrained palette; CTA accent reserved.
|
||
- [ ] ≤2–3 typefaces; readable size, line length (~50–75 chars), and line height.
|
||
|
||
**Performance** 🟢
|
||
- [ ] LCP ≤ 2.5s, INP ≤ 200ms, CLS ≤ 0.1 in **field** data.
|
||
- [ ] Hero/LCP image eager + preloaded; below-fold lazy-loaded.
|
||
- [ ] Images responsive/modern/compressed/dimensioned; fonts subset+preloaded;
|
||
third-parties audited.
|
||
|
||
**Mobile & accessibility** 🟢
|
||
- [ ] Mobile-first layout; tap targets ≥44px; no horizontal scroll; readable without
|
||
zoom; tested on real device + throttled network.
|
||
- [ ] WCAG 2.1 AA: contrast ≥4.5:1 / 3:1; keyboard operable; visible focus; labels &
|
||
alt text; not color-alone; zoom to 200%.
|
||
|
||
**SEO**
|
||
- [ ] Title/meta/H1/URL optimized to intent; content crawlable; canonical set;
|
||
structured data where relevant.
|
||
|
||
**Measurement** 🟢
|
||
- [ ] Analytics + primary metric live; conversion tracked end-to-end.
|
||
- [ ] First experiment: hypothesis written, sample size/duration pre-computed, no
|
||
plan to peek.
|
||
|
||
---
|
||
|
||
## Sources & evidence grade
|
||
|
||
Citation keys used inline. **P** = primary source; **B** = blog/secondary
|
||
(corroborating). Verified findings were adversarially fact-checked (3-vote
|
||
majority) in the research pass that produced this doc.
|
||
|
||
| Key | Source | Grade | Used for |
|
||
|-----|--------|-------|----------|
|
||
| `[U24]` | Unbounce — **2024 Conversion Benchmark Report** (41k pages, 57M+ conversions) — `unbounce.com/conversion-benchmark-report/` (+ `/saas-conversion-rate/`, `/landing-pages/whats-a-good-conversion-rate/`) | P (vendor) | Conversion benchmarks, channel rates, readability |
|
||
| `[NNg]` | Nielsen Norman Group — *"Get Started" Stops Users* — `nngroup.com/articles/get-started/` | P | CTA copy / information scent |
|
||
| `[NNf]` | Nielsen Norman Group — *F-Shaped Pattern of Reading* (2006 + 2017 follow-up) — `nngroup.com/articles/f-shaped-pattern-reading-web-content-discovered/` | P | Scanning, front-loading copy |
|
||
| `[NNv]` | Nielsen Norman Group — *Visual Hierarchy* (video + article) — `nngroup.com/videos/visual-hierarchy/` | P | Hierarchy via color & size |
|
||
| `[WV]` | Google web.dev — **Core Web Vitals / LCP / INP / CLS** & *LCP & lazy-loading* — `web.dev/articles/vitals`, `/lcp`, `/inp`, `/cls`, `/lcp-lazy-loading` | P | CWV thresholds, eager-load LCP |
|
||
| `[GMS]` | Google / Think with Google — **Mobile Site Speed Playbook** (data ~2016–17) | P (dated) | 53% abandonment, bounce-vs-load curve |
|
||
| `[W3C]` | W3C — **WCAG 2.1** (SC 1.4.3, 1.4.11) + WebAIM contrast guide | P | Contrast minimums, AA |
|
||
| `[GB]` | GrowthBook — *Experimentation Problems* docs | P | Multiple comparisons, peeking |
|
||
| `[EM]` | Evan Miller — *How Not To Run an A/B Test* | P | Peeking / sequential testing |
|
||
| `[CXLs]` | CXL — *Maintaining scent for advertising ROI* | B | Message match / scent |
|
||
| `[CXLf]` | CXL — *Why conversion optimization best practices fail* | B | Best-practices-as-hypotheses |
|
||
| `[SMt]` | Smashing Magazine — *Best Practices of Combining Typefaces* & typography references | B | Font pairing |
|
||
| `[LA]` | Level Access — *Responsive design & accessibility* | B | Responsive/accessible overlap |
|
||
|
||
Additional corroborating sources reviewed in the research pass: foundrycro,
|
||
genesysgrowth, seosherpa, landingi, marketingcharts (benchmarks); MDN, DebugBear,
|
||
GTmetrix, 2025 Web Almanac (LCP/lazy-load); Wikipedia (family-wise error rate),
|
||
Spotify Engineering, Statsig, analytics-toolkit (experimentation).
|
||
|
||
---
|
||
|
||
## Caveats, source quality & things that got refuted
|
||
|
||
Read this before quoting any number externally.
|
||
|
||
1. **Conversion benchmarks are single-vendor (Unbounce) and median-based.** The
|
||
6.6% median, 3.8% SaaS, 11.4–40.8% "good," 19.3% email channel, and readability
|
||
figures all come from one platform's own pages. They carry **selection bias** —
|
||
use them as **directional benchmarks, not universal truth.** `[U24]`
|
||
2. **Median ≠ "good."** The true cross-industry **median is only 6.6%**; the "good"
|
||
11.4%+ is the **75th-percentile** threshold. Don't conflate them.
|
||
3. **Channel ranking is an intent artifact.** Email's 19.3% reflects a **warm,
|
||
opted-in audience**, not channel superiority. Never benchmark a cold paid page
|
||
against an email page.
|
||
4. **Mobile-speed stats are ~9–10 years old (2016–17) and correlational.** The 53%
|
||
abandonment and 13%→60% bounce curve are still widely cited and directionally
|
||
right, but are **not fresh and not proven causal.** `[GMS]`
|
||
5. **Visual hierarchy "primarily color & size" was the one non-unanimous finding
|
||
(2–1).** Color and size are the *most-emphasized* importance cues, but NN/g's
|
||
broader framing lists more signals. `[NNv]`
|
||
6. **Strongest, fully-current claims:** Core Web Vitals thresholds `[WV]` and WCAG
|
||
contrast minimums `[W3C]` — primary specs from Google and W3C.
|
||
7. **⛔ Refuted in verification — do not cite:**
|
||
- "Simpler SaaS copy converts **514% better** (12.9% vs 2.1%)." (1–2 refuted)
|
||
- "Reducing load time by **1 second increases conversions up to 27%**." (1–2 refuted)
|
||
8. **Areas marked ⚪ (forms field-counts, trust-signal effect sizes, typography
|
||
line-length/pairing specifics, framework conversion impact) are established
|
||
professional practice, not individually fact-checked statistics here.** They are
|
||
reliable as guidance; verify exact numbers (e.g., via Baymard, CXL, or your own
|
||
tests) before quoting figures.
|
||
|
||
> **Final reminder:** these are strong priors to *generate hypotheses.* The only
|
||
> authority on your page is a well-run experiment on your own traffic (§14).
|