Mode Media · Pre-Launch QA
Pre-Launch QA ReviewPer brand / lander
End-to-end audit of the signup funnel. Mark PASS/FAIL per item and record evidence (file path, screenshot, request ID). Progress is saved per brand in this browser.
- Checks
- 57
- Pass
- 0
- Fail
- 0
- Critical open
- 22
NO-GO — 22 critical open, 0 failing
Lovable
QA prompt — automated funnel audit
Paste this into the brand's Lovable project chat to run the end-to-end audit.
Run a full end-to-end funnel audit on this project. The funnel is: homepage signup → /thank-you → /thank-you-2 → /thank-you-3. Test the flow twice: once with affiliate parameters (aff_id, aff_sub, utm_source) and once without. For each run, verify and report: Attribution forwarding: Confirm that aff_id, aff_sub, and utm_source are preserved from the landing page all the way through every thank-you step and into the ModeCapture API call and affiliate offer links. Form submission: Submit the signup form with first name, last name, zip, phone, and email. Confirm the user lands on /thank-you and is then guided through /thank-you-2 and /thank-you-3. Meta Pixel firing: Check that the Meta Pixel base script loads and PageView fires on the homepage, /thank-you, /thank-you-2, and /thank-you-3. ModeCapture API call: Confirm the ModeCapture request includes k=_1, normalized E.164 phone, signup_id, first_name, last_name, zip, and correct source/campaign. Log the full request URL. Offer links: Verify the P&G BrandSaver offer on step 2 and the Free Samples offer on step 3 both open in a new tab and include forwarded PII (first_name, last_name, phone, zip) and attribution params. Click-blocking overlays: Check for any third-party iframe/popup widgets (e.g., Thanks.co, Disco) with high z-index that cover the CTA buttons and prevent clicks. Report any blocking elements found. Console errors: Capture all console errors, especially CORS failures, 404s, and 409s from tracking or lead APIs. Database verification: After each test signup, query the leads table and confirm aff_id, aff_sub, utm_source, phone, signup_id, and modecapture_status are stored correctly. Revenue path health: Confirm the affiliate offer URLs actually load and are not blank pages or redirects to dead offers. General launch hygiene: Check whether the Lovable badge is hidden, whether reCAPTCHA is present, and whether each page has unique title/description metadata and a real og:image (not a placeholder). Output a concise pass/fail summary with exact failing lines or URLs, and suggest fixes for any failures.
Section 0 — Prerequisites
0/8 passCRITICALLeads table exists (id, email, first_name, last_name, phone, zip, signup_id, source, campaign, aff_id, aff_sub, aff_sub2, aff_sub3, aff_sub4, consent_text, modecapture_status, modecapture_error, created_at) with RLS enabled and public API insert allowed
modecapture_errors table exists for rejected/failed ModeCapture logging
CRITICALPrivacy Policy page exists and is linked in the consent disclosure
CRITICALTerms of Service page exists and is linked in the consent disclosure
CRITICALConsent checkbox is required and label matches approved legal copy exactly
Lovable badge removed from published site
Social share image removed or replaced with real branded OG image; no placeholder
reCAPTCHA or equivalent bot protection enabled, verified server-side; submit-rate impact measured
Section 1 — Meta Pixels
0/4 passCRITICALBase pixel (connect.facebook.net/en_US/fbevents.js) in <head> of landing/checkout, thank-you, thank-you-2, thank-you-3 and React root shell
Each configured pixel ID initializes correctly
PageView fires automatically on every page load
Pixel Helper shows no errors in browser console
Section 2 — ModeCapture / Lead Hub
0/9 passCRITICALModeCapture API call fires on thank-you page after signup
k=_1 parameter present in the request
Phone normalized to E.164 before sending
CRITICALsignup_id included and unique per submission
CRITICALLead Hub endpoint https://datahub.modemedia.io/api/public/leads used everywhere
x-ingest-key header set correctly
external_id / source_row_id sent for deduplication
CRITICALLead Hub delivery failure is logged but does not block lead save
Backfill of existing leads completed successfully
Section 3 — Rokt Integration
0/6 passCRITICALRokt SDK loads on the thank-you page
CRITICALAPI key correct for environment (stage vs prod)
pageIdentifier set correctly (stage.rokt.freesamples / prod.rokt.freesamples)
Target element #rokt-placeholder exists in the DOM
Required attributes passed: email, first name, last name, zip, etc.
Placement renders without console errors
Section 4 — Thank-You Flow
0/7 pass/thank-you redirects or progresses to /thank-you-2
/thank-you-2 shows the correct offer (P&G BrandSaver)
/thank-you-3 shows the correct offer (Free Samples Guide)
Progress bar labels match the offer sequence
'Continue To ModeFreeFinds.com' link uses correct UTM params
Back To Home button removed
CRITICALNo Thanks.co or Disco popup blocks clicks on affiliate offers
Section 5 — Tracking & Attribution
0/5 passCRITICALaff_id, aff_sub, aff_sub2, aff_sub3, aff_sub4 captured from URL params on landing
CRITICALAttribution params forwarded to all thank-you pages
Outbound affiliate links include forwarded user data where required
URL parameter forwarding works with and without affiliate params
No 'undefined' or 'null' strings appear in URLs or database
Section 6 — Offer Links (revenue path)
0/5 passCRITICALEvery affiliate offer URL loads correctly and returns a valid page
Offer banners load and are clickable
target="_blank" set on external offer links
CRITICALNo popup, widget or overlay intercepts offer clicks
Each offer URL tested manually from an incognito browser
Section 7 — Form & Validation
0/6 passCRITICALFirst name, last name, email, zip are required
Phone field behaves correctly (optional or required per spec)
Email validation rejects invalid formats
Zip validation accepts valid US zips
CRITICALForm submission redirects to thank-you page
Hidden signup_id generated as UUID v4
Section 8 — Cross-Browser & Mobile
0/4 passCRITICALFunnel works on mobile viewport
Funnel works on desktop Chrome, Safari, Firefox
No console errors on any page
No hydration errors from React root shell
Section 9 — Go / No-Go
0/3 passCRITICALAll critical items PASS
CRITICALNo open P0 or P1 bugs
CRITICALLaunch approved