Run a pre-handoff audit on an inherited Webflow site
You just signed a new client. Their existing Webflow site is a mess, but you don't know how much of a mess until you look under the hood. This guide walks through building a pre-handoff audit in Site Health that you can drop straight into your proposal — the kind with real numbers that justify your scope and set expectations before you even touch the site.
1. Sync Webflow and pick the new client's site
From the dashboard, hit Connect Webflow (or Resync if you're already connected). Site Health pulls in every site in the Webflow workspace the client added you to.
Pick the inherited site from the list. It shows up with a greyed-out "Never scanned" badge — that's about to change.
If the client hasn't added you as a workspace member yet, ask for Editor access minimum. You don't need full Designer access for Site Health to work — the OAuth scope only needs read access to the site list and publish events.
2. Run a full baseline scan (mobile + desktop)
On the site detail page, click Run Scan, set strategy to Both, and let it rip. Mobile-only misses a third of the story — desktop scores often look completely different, especially on image-heavy marketing pages.
A full scan takes 3-8 minutes depending on page count. Opt in to the Email me when done toggle and go make coffee. Site Health streams progress live via SSE so you can also watch the pages complete in real time.
What you end up with: Performance, SEO, Accessibility, and Best Practices scores for every page, both strategies, plus Core Web Vitals and a stack of diagnostics per page.
3. Open the Scripts dashboard and find the bloat
Navigate to Third-Party Scripts from the site sidebar (or visit /sites/[siteId]/scripts directly). See the Scripts feature docs for the full rundown.
This is where inherited sites get embarrassing. A typical example from a real handoff:
- Google Tag Manager (180ms blocking)
- Google Analytics 4 (120ms)
- Hotjar (240ms)
- Facebook Pixel (90ms)
- LinkedIn Insight Tag (75ms)
- An Intercom launcher nobody uses (310ms)
- A defunct Drift script still firing (140ms)
- HubSpot tracking (160ms)
That's ~1.3 seconds of blocking time from scripts the marketing lead doesn't even remember installing. Screenshot this dashboard. It's the single most persuasive artifact in your proposal.
4. Open the Accessibility dashboard
Head to Accessibility (/sites/[siteId]/accessibility). Severity breakdown is right at the top:
- Critical: 3 (missing form labels, insufficient color contrast on CTA, images without alt text)
- Serious: 11
- Moderate: 6
- Minor: 2
Screenshot the "Critical" summary card. Clients don't feel the weight of a11y until you tell them they have 14 violations that WCAG 2.1 AA flags as serious or critical. It's an ADA-risk conversation and a conversion conversation at the same time.
5. Check Core Web Vitals — CrUX tells the real story
Lighthouse gives you lab data. CrUX (Chrome User Experience Report) shows what real visitors are experiencing in the wild over the last 28 days.
On the site detail page, the CWV card shows both. If hasCruxData is true, you're looking at real-user data from millions of Chrome sessions. Typical inherited-site numbers:
- LCP: 4.2s on
/pricing(poor — target<2.5s) - CLS: 0.28 on the homepage (poor — target
<0.1) - INP: 380ms on
/products(needs improvement — target<200ms)
The /pricing LCP is a smoking gun — their money page is literally too slow for buyers to convert.
6. Generate a shareable report
From the site detail page, hit Share report. Configure:
- Expiry: 90 days
- Strategy toggle: Both enabled (client can flip between views)
- Lead-gen CTA: On (when white-label ships, swap in your agency's branding and CTA)
You get a public URL like sitehealth.app/report/abc123xyz. It's print-ready too, so you can PDF it from the browser and attach to the proposal email.
White-label branding (custom logo, domain, colors) is on the roadmap but not yet shipped. For now, shared reports carry Site Health branding. If you need fully white-labeled deliverables today, export as PDF and drop the screenshots into your own template.
7. Export per-page CSV for the proposal spreadsheet
Hit Export → CSV. You get every page's Performance, SEO, Accessibility, Best Practices, LCP, CLS, and INP — mobile and desktop strategies as separate rows. See the export API if you want to automate this from a script.
Drop the CSV into a Google Sheet, conditional-format the score columns (red <50, yellow <90, green ≥90), and you've got a heat map of exactly where the site is bleeding. Clients love this artifact.
8. Package it into the proposal
The line that closes deals:
"Your current site has 14 accessibility violations (3 critical), an LCP of 4.2 seconds on
/pricing, and 8 third-party scripts adding ~800ms of blocking time before your homepage is interactive. Our Phase 1 remediation targets all three."
Attach the shared report URL, the CSV, and screenshots of the Scripts and Accessibility dashboards. Price the work accordingly.
Outcome
You walk into the kickoff call with numbers the previous agency never gave them. The client signs because your audit is specific, visual, and credible — not a "we'll do a performance review" line item on a proposal. You've already proven you know their site better than they do, and the engagement starts from trust.
Total time invested: ~30 minutes, most of which was waiting for the scan to finish.