04 — QUALITY: Thank-You Page
Pass threshold: 90 / 100 When to run: After every create or update, before sharing with Kathryn.
Structure (20 points)
| # | Check | Points | ||
|---|---|---|---|---|
| 1 | Page has exactly 3 major sections: Header, Confirmation, Pitch + Footer | 4 | ||
| 2 | present in | 3 | ||
| 3 | Page title follows pattern: "[Confirmation phrase] | [Brand Name]" (e.g., "You're In — Check Your Inbox | Practice Builders") | 2 |
| 4 | Confirmation section appears first after header — dark background, centered text, headline confirms delivery | 4 | ||
| 5 | Pitch section appears after confirmation — light background, left-aligned, contains sessions/deliverables + details card + CTA | 4 | ||
| 6 | Footer is Meta-compliant with all required elements (see Compliance section below) | 3 |
Copy Quality (25 points)
| # | Check | Points |
|---|---|---|
| 7 | Confirmation headline names the lead magnet in full — no acronyms | 3 |
| 8 | Confirmation body tells them exactly where to find it (inbox, spam folder, promotions tab) | 3 |
| 9 | Pitch section has a bridge line ("While You're Here" or equivalent) — transitions from confirmation to offer naturally | 2 |
| 10 | Pitch headline connects the lead magnet to the next offer — shows the gap between what they got and what they need | 4 |
| 11 | Pitch body copy is specific: what the offer is, what they do, what they walk away with. No vague promises. | 4 |
| 12 | Zero forbidden terms: no CIB, PB, AOS, CPM, early bird, founding cohort, beta pricing, leverage, synergy, journey, game-changer, crush it | 3 |
| 13 | Passes copy-qc.md — no P1 violations (twinning, mirror reversals, question-revelation arcs). No unresolved P2 violations. | 3 |
| 14 | Passes voice.md read-aloud test — every line sounds like something Kathryn would say in conversation | 3 |
Design & Brand (20 points)
| # | Check | Points |
|---|---|---|
| 15 | Correct brand variant applied — CYP or AOS palette, fonts, and logo. No mixing. | 4 |
| 16 | All styles are inline — no CSS var() in output. Only block is for scrollbar + responsive media queries. | 4 |
| 17 | Gold scrollbar present (webkit + Firefox) | 2 |
| 18 | Responsive: tested at 840px and 640px breakpoints. Headlines scale. Sections reflow. | 3 |
| 19 | CTA button uses gold background (#b79d64) with correct contrast text color per brand (CYP: #0f2d3e, AOS: #1a1a1a) | 3 |
| 20 | Typography hierarchy correct: heading font for headlines + session labels, body font for all other text | 2 |
| 21 | No scroll-reveal animations or JavaScript | 2 |
Pitch Section Accuracy (15 points)
| # | Check | Points |
|---|---|---|
| 22 | Sessions/modules list matches the actual offer — number, names, and descriptions are accurate | 4 |
| 23 | "What you walk away with" list matches real deliverables — nothing fabricated | 3 |
| 24 | Details card shows correct: date/time, format, price | 3 |
| 25 | Pricing uses "Launch pricing" if time-limited — never "early bird," "founding cohort," or "beta" | 2 |
| 26 | CTA button links to correct URL and uses specified button text | 3 |
Compliance (10 points)
| # | Check | Points |
|---|---|---|
| 27 | Meta platform disclaimer present in footer: "This site is not a part of the Meta website or Meta Platforms, Inc..." | 3 |
| 28 | Earnings/results disclaimer present: states results vary, not a guarantee of specific outcome | 3 |
| 29 | Footer contains: entity attribution, year, "All Rights Reserved," contact email, Privacy Policy link, Terms of Service link, Disclaimer link | 2 |
| 30 | No income claims, no specific dollar-amount outcome promises in pitch copy (FTC compliance) | 2 |
Self-Improvement (10 points)
| # | Check | Points |
|---|---|---|
| 31 | If this page was built from a previous version, changes documented in HTML comment at bottom | 2 |
| 32 | Pitch section copy is brand-neutral enough to adapt across offers without rewriting the structural template | 3 |
| 33 | Confirmation section is generic enough to work for any lead magnet by changing the name and delivery description | 3 |
| 34 | All placeholder content (dates, prices, URLs, names) is clearly identifiable for future updates | 2 |
Common Failure Modes
| Failure | What Happens | How to Fix |
|---|---|---|
| Acronyms in customer copy | Page says "CIB" or "PB" instead of the full name — customer doesn't know what it means | Spell it out. After first use, switch to natural shorthand ("the brief," "the skill," "the event"). Never use internal acronyms. |
| Wrong urgency framing | Copy says "early bird pricing" or "founding cohort" instead of "launch pricing" | Replace with "Launch pricing" — the only approved urgency frame. |
| CSS variables in output | var(--gold) appears in inline styles — breaks on Convertri and some email embeds | Replace every var() with its hex value. Search the output for var( before shipping. |
| Pitch section too long | The pitch becomes a mini sales page instead of a bridge to the offer page | The pitch section creates interest and gives enough detail to click. It does not close the sale. Cut anything that belongs on the offer page. |
| Pitch section too vague | Generic "learn more about our program" copy with no specifics | Name the sessions, the deliverables, the dates, the price. Specificity is what makes a thank-you page pitch work — they just demonstrated interest. |
| Missing spam folder line | Confirmation section says "check your inbox" but doesn't mention spam/promotions | Always include: "Don't see it? Check your spam folder or promotions tab." |
| Footer missing Meta disclaimer | Page deployed to paid traffic without Meta compliance language | Copy the full Meta disclaimer block from the golden example. Required on every page that may receive Meta traffic. |
| Brand variant mixing | CYP page uses Cormorant Garamond, or AOS page uses Fraunces | One brand per page. Check fonts and colors against the brand variant table in 01-context.md. |
| Fabricated offer details | Sessions, deliverables, or pricing don't match the actual offer | Verify every detail against the offer's source of truth (offer page, offer.md, or Kathryn's brief). |