04 — QUALITY: SLO Page Production Cascade
Pass threshold: 92 / 102 When to run: After every cascade run (Mode 1) or QC-only run (Mode 3). Run against the page, the cascade process, AND the SFB audit findings.
Blocking failures: Any item marked BLOCKING below fails the entire cascade regardless of total score. A page with 100/102 but one blocking failure does not ship.
SFB Audit (15 points) — HARD GATE
The SFB audit runs BEFORE the build. These checks come from the SFB 6-layer framework and catch architectural issues — missing components, missing videos, incomplete compliance — at the funnel level before you waste time building a page that sits inside a broken funnel.
| # | Check | Points | Blocking |
|---|---|---|---|
| 1 | SFB component mapping is explicit — the page maps to one of the 8 SFB components | 2 | YES |
| 2 | Compliance footer present on ALL existing funnel pages (5 links each) — SFB Layer 2 checkpoint. Count the links. Not 4. Not 3. All 5: Privacy, Terms, Disclaimer, Returns/Refunds, Contact. If ANY existing page in the funnel is missing a compliance link, fix it BEFORE building the new page. | 3 | YES |
| 3 | For OTO pages: OTO video present (60-90s, Hook/Reframe/Offer/Risk/CTA formula) — SFB Layer 4 checkpoint. Without video, take rate collapses to 0-2%. Ben's OTO3 at 0% until video filmed. | 3 | YES |
| 4 | For OTO pages: OTOs ascend in price + commitment (OTO1 < OTO2 <= OTO3) | 2 | YES |
| 5 | For sales pages: VSL/PASPA is 3-7 minutes (NOT 15 min — decision fatigue on low-ticket) | 2 | YES (sales pages) |
| 6 | For sales pages: Risk reversal visible above the fold (even $7 needs refund policy — Stripe + Meta) | 2 | YES |
| 7 | Audit findings documented — every red/yellow layer has a fix assigned to a specific SFB component + build mode | 1 | NO |
SFB Failure Mode #8 (compliance footer) and Failure Mode #1 (OTO videos) are the two most critical page-level checks. Both are BLOCKING. Both have documented real-world consequences: CPMs spike 2-3x without compliance footer; take rate drops to 0% without OTO video.
Meta Pixel (15 points) — HARD GATE
Every item in this section is a blocking failure. A page without correct pixel tracking ships broken attribution and wastes ad spend.
| # | Check | Points | Blocking |
|---|---|---|---|
| 8 | Meta Pixel base code is present in (not , not footer, not missing) | 3 | YES |
| 9 | Pixel ID in the code matches the confirmed Pixel ID from the brief (numeric, 15-16 digits) | 3 | YES |
| 10 | fbq('init', '[PIXEL_ID]') is present with the correct ID | 2 | YES |
| 11 | fbq('track', 'PageView') is present | 2 | YES |
| 12 | Correct conversion event for page type: Lead on thank-you-optin, Purchase (with value + currency) on thank-you-purchase, no conversion event on other types | 3 | YES |
| 13 | For Purchase events: value parameter matches actual product price, currency is 'USD' | 1 | YES (when applicable) |
| 14 | fallback image tag present with correct Pixel ID | 1 | NO |
What "correct conversion event for page type" means:
| Page Type | Required Events |
|---|---|
| opt-in | PageView only |
| thank-you-optin | PageView + Lead |
| thank-you-purchase | PageView + Purchase (value + currency) |
| offer-purchase | PageView only |
| offer-booking | PageView only |
| delivery | PageView only |
| homepage | PageView only |
| skill-delivery | PageView only |
| oto-page | PageView only (OTO conversion tracked via SamCart, not page pixel) |
A Lead event on an opt-in page (instead of the thank-you-optin page) fires on page load, not on form submit — inflating lead counts. A Purchase event without a value parameter breaks ROAS reporting. Both have happened.
Compliance (15 points) — HARD GATE
Missing compliance links expose the business to policy violations, legal risk, and Meta CPM spikes. Every item marked BLOCKING stops the page. This section enforces SFB Component 7.
| # | Check | Points | Blocking |
|---|---|---|---|
| 15 | Footer contains Privacy Policy link | 2 | YES |
| 16 | Footer contains Terms of Service link | 2 | YES |
| 17 | Footer contains Disclaimer link | 2 | YES |
| 18 | Footer contains Returns & Refunds link | 2 | YES |
| 19 | Footer contains Contact link | 2 | YES |
| 20 | All 5 compliance links present (not 4, not 3 — all 5) — COUNT THEM | 1 | YES |
| 21 | Meta disclaimer present on pages in paid funnels | 2 | YES (when in paid funnel) |
| 22 | Anthropic disclaimer present when AI tools are referenced | 1 | YES (when applicable) |
| 23 | Earnings disclaimer present when financial outcomes are implied | 1 | YES (when applicable) |
| 24 | Copyright line includes correct entity name | 0 | NO |
The compliance footer is 5 links. Always. On every page: sales page, checkout, all OTO pages, post-purchase confirmation, email footer. SFB Component 7. SFB Failure Mode #8: "Skipping compliance footer — Meta CPMs spike 2-3x." This is not a suggestion. This is a blocking gate.
Terminology (10 points) — HARD GATE
Terminology violations in paid context create Meta policy risk. Items marked BLOCKING stop the page when the page is in a paid funnel.
| # | Check | Points | Blocking |
|---|---|---|---|
| 25 | Zero instances of "AI assistant" on any customer-facing page | 2 | YES |
| 26 | Zero instances of LLM brand names (Claude, ChatGPT, Gemini) on pages in paid funnels | 3 | YES (paid context) |
| 27 | "AI tool of choice" or equivalent neutral phrasing used where AI is referenced | 2 | NO |
| 28 | Zero instances of old pricing (prices that have changed since the brief) | 1 | YES |
| 29 | Zero instances of old or broken URLs | 2 | YES |
Copy QC (10 points)
The 11-pattern AI detection check from business-aos/reference/brand/copy-qc.md. This is a quality gate, not a style guide — every pattern here has been caught in actual Advisory OS drafts.
| # | Check | Points | Blocking |
|---|---|---|---|
| 30 | Zero P1 violations: no twinning, no mirror reversals, no question-revelation arcs | 4 | YES |
| 31 | Zero P2 violations without documented exception: no three-beat parallels (unless data pattern), no "Not because X. Because Y.", no formulaic setups (max 1 with evidence), no trying-to-be-quotable lines | 3 | NO |
| 32 | Maximum one P3 violation: dramatic beats (max 1), no rhetorical hand-holding, no 3+ identical openers | 1 | NO |
| 33 | Compound check passes: no correction-revelation family compounds (2+ from Patterns 1/3/4/7), sentence length varies, not every insight structured as correction | 1 | NO |
| 34 | Read-aloud test: every line reads at conversation speed, no presentation-voice lines | 1 | NO |
Sentence Editor (5 points)
The 8-rule sentence quality pass. Applied to new copy written for this page (not to copy pulled verbatim from approved sources).
| # | Check | Points | Blocking |
|---|---|---|---|
| 35 | Sentence length varies (no metronomic rhythm) | 1 | NO |
| 36 | No filler words in CTA or headline context (just, really, very, actually) | 1 | NO |
| 37 | Active voice preferred (passive voice flagged and justified or rewritten) | 1 | NO |
| 38 | Specific over vague, concrete nouns over abstract | 1 | NO |
| 39 | Every sentence earns its place (no padding, no filler paragraphs) | 1 | NO |
Mobile / Responsive (12 points) — PARTIAL HARD GATE
| # | Check | Points | Blocking |
|---|---|---|---|
| 40 | Three breakpoints present minimum: 1024px, 768px, 480px | 2 | YES |
| 41 | Class selectors used for responsive rules (no attribute selectors like div[style*="..."]) | 2 | YES |
| 42 | No var() CSS — all colors hardcoded as hex values (Convertri requirement) | 2 | YES |
| 43 | Header stacks centered on mobile (968px breakpoint) | 2 | NO |
| 44 | On pages with forms: form visible within one scroll on mobile (CSS order: -1 if needed) | 2 | YES (when form present) |
| 45 | No horizontal overflow on any breakpoint | 2 | NO |
Link Verification (10 points)
| # | Check | Points | Blocking |
|---|---|---|---|
| 46 | Every CTA button links to the correct destination URL | 2 | YES |
| 47 | All compliance footer links are present and not 404 | 2 | YES |
| 48 | Logo links to correct homepage URL | 1 | NO |
| 49 | All internal page references match Convertri slugs | 1 | YES |
| 50 | No placeholder URLs remain (no #, no about:blank, no example.com) | 2 | YES |
| 51 | For thank-you pages: every dollar amount visible on the page matches a confirmed price from the brief or is dynamically populated from URL parameters. No hardcoded prices from previous funnels. | 2 | YES |
Visual Verification (10 points) — MANUAL GATE
These checks require human verification. The cascade cannot automate them. They must be confirmed by a team member before the page ships.
| # | Check | Points | Blocking |
|---|---|---|---|
| 52 | Page renders completely on desktop (no missing sections, no broken layouts) | 2 | YES |
| 53 | Page renders completely on mobile (no missing sections, no broken layouts) | 2 | YES |
| 54 | Colors match the specified brand system (AOS or CYP) | 2 | NO |
| 55 | Typography renders correctly (correct fonts loaded, no fallback fonts visible) | 2 | NO |
| 56 | Tested in Facebook in-app browser on mobile (this is where ad traffic lands) | 2 | YES (paid funnel pages) |
Manual gate protocol: When the cascade reaches visual verification, it stops and presents the findings from all automated gates. The page is opened for visual inspection. The human confirms each check. Only after confirmation does the cascade produce the final QC report.
Scoring Summary
| Category | Points | Blocking Items |
|---|---|---|
| SFB Audit | 15 | 6 |
| Meta Pixel | 15 | 6 |
| Compliance | 15 | 8 |
| Terminology | 10 | 4 |
| Copy QC | 10 | 1 |
| Sentence Editor | 5 | 0 |
| Mobile / Responsive | 12 | 4 |
| Link Verification | 10 | 5 |
| Visual Verification | 10 | 3 |
| Total | 102 | 37 |
Pass criteria:
- Score >= 92/102 AND
- Zero blocking failures
A page that scores 97 but has one blocking failure does not ship.
Common Failure Modes
| Failure | SFB Reference | What Happens | How to Fix | How Often |
|---|---|---|---|---|
| Compliance footer missing or incomplete | SFB Failure Mode #8, Component 7 | 4 of 5 links present. Returns & Refunds or Contact dropped. Meta CPMs spike 2-3x. | COUNT the links. There must be exactly 5: Privacy, Terms, Disclaimer, Returns & Refunds, Contact. Do not eyeball — count. Apply to EVERY page: sales page, checkout, all OTO pages, confirmation, email footer. | Common — happens when footer is copied from a page that was already missing one |
| OTO page without video | SFB Failure Mode #1, Component 6 | Take rate collapses to 0-2%. Ben's own OTO3 sat at 0% for 10 days. Single biggest revenue leak. | Film 60-90s video per OTO. Webcam-over-slides (Loom). One take. 30-60 min total for all OTOs. The 90 seconds of recording is the highest-leverage minute in the funnel build. | Has happened — Ben's own funnel |
| Pixel on wrong page type | Campaign playbook | Lead event fires on opt-in page instead of thank-you-optin. Every page load counts as a "lead," inflating metrics. | Check the page type table. Lead goes on thank-you-optin. Purchase goes on thank-you-purchase. The page where the action happens is NOT where the event fires — the NEXT page is. | Common — Cole flagged this on 3 pages in one funnel |
| Missing pixel entirely | Campaign playbook | No tracking data. Attribution broken. Ad spend wasted. | SFB audit Layer 2 catches this before the build. The pre-build gate catches it during the build. Two chances to catch it. Zero excuses for shipping without it. | Has happened |
| Pixel ID from wrong account | Campaign playbook | Page has A pixel, but it's the wrong pixel. Events fire to a pixel nobody is watching. | Verify the numeric ID against Meta Business Manager. Do not assume the ID is correct because "we always use the same one." | Has happened |
| Purchase event without value | Campaign playbook | fbq('track', 'Purchase') fires but without {value: X, currency: 'USD'}. ROAS reporting shows conversions but no revenue. | The Purchase event MUST include value and currency: fbq('track', 'Purchase', {value: 297.00, currency: 'USD'}) | Has happened |
| OTOs not ascending in price | SFB Failure Mode #9 | OTO1 priced higher than OTO2. Broken stack. Buyer psychology breaks. | OTO1 < OTO2 <= OTO3. Each ascends in price + commitment. Strategy phase catches this before build. | SFB documented |
| Sales page VSL too long | SFB Failure Mode #6 | 15-min VSL on a $7 product. Decision fatigue kills CVR. | 3-7 min for low-ticket. Match VSL length to price point. | SFB documented |
| No risk reversal | SFB Failure Mode #5 | Even $7 needs a refund policy. Stripe compliance issue + CVR drop. | Risk reversal visible above the fold. "30-day money-back guarantee." | SFB documented |
| Attribute selectors in responsive CSS | Campaign playbook | Page looks fine in Chrome DevTools. Breaks in Facebook in-app browser. | Use class selectors only. No div[style*="..."]. Test in actual Facebook in-app browser. | Happened on The Build launch |
| LLM brand name in paid page | Terminology rules | "Built with Claude" on a paid funnel page. Meta policy violation risk. | Run terminology sweep. Grep for Claude, ChatGPT, Gemini, AI assistant. Replace with "AI tool of choice." | Recurring |
| Placeholder URLs in production | Link verification | CTA button links to # or about:blank. Dead button in production. | Link verification gate catches this — but only if the gate runs. | Has happened |
var() CSS in Convertri | Responsive rules | Colors render locally. Disappear in Convertri (doesn't process CSS custom properties). | Hardcode every color as hex. Search for var( before shipping. | Recurring |
Change Log
2026-05-24 — Consensus review fixes (Arden, Cole, Reid, Cade). Check #5 (VSL/PASPA 3-7 min) changed from non-blocking to BLOCKING for sales pages — SFB says "3-7 minutes ONLY"; a 15-min VSL on a $7 product is an architectural violation. Check #47 (compliance footer links not 404) changed from non-blocking to BLOCKING — a compliance link that 404s is worse than a missing one. Added check #51: displayed dollar amounts on thank-you pages must match confirmed prices from the brief or use dynamic URL parameters (BLOCKING). Visual Verification renumbered to #52-#56. Scoring summary updated: 102 points, 37 blocking items, pass threshold 92/102.
Rebuilt with SFB Low-Ticket Funnel System as foundation. Source: f07-lowticket-00-master.md (8 components, 10 failure modes), f07-lowticket-01-audit-skill.md (6 audit layers), f07-lowticket-03-build-skill.md (6 build modes, compliance footer Mode 6). Added SFB Audit section (15 points, 5 blocking items). Compliance footer verification now enforced as BLOCKING gate per SFB Component 7 and Failure Mode #8. OTO video check added as BLOCKING gate per SFB Component 6 and Failure Mode #1. Previous source: campaign launch playbook, campaign-production-workflow.md.