Firecrawl as a lead-gen engine
Firecrawl as a lead-gen engine
Our outbound advantage isn't a better pitch, it's evidence about the prospect's own site. Relay Scanner already proved the shape (a branded share_url that says "I looked at your thing"), but it's a security frame, so it lands with IT and our buyer is a marketing director or an owner. Firecrawl generalizes that shape to everything a marketing buyer actually cares about. And the same crawl that makes the sales artifact becomes the migration capture the day they sign.
Site Teardown report
One pass of map + scrape + extract over a domain gives:
- Page inventory: total pages, orphans, thin pages, what's in the nav vs. buried
- Metadata state: titles / H1s / descriptions per page, which map 1:1 onto sitemap-tracker's setmetadatachecks
- Page-builder fingerprint: etpb, elementor-, wpb_, fusion- classes in the HTML. Highest-value single signal, because "Gutenberg over page builders" is already a named reusable pattern in the proposal index. We're detecting the exact pain we know how to sell against.
- Staleness: last blog post date, copyright year
- Conversion architecture: CTA count and placement, phone above fold, forms, mobile viewport
- Messaging: the StoryBrand read we already do by hand in 02-messaging-direction.md
Output is one branded report page per prospect, built with our own Core theme blocks. The report is simultaneously the pitch and the portfolio piece: they evaluate our work while reading about theirs.
Segmentation, not spray
Builder fingerprint + staleness, layered on Relay Scanner's county filters, gives lists like "Athens-area professional services on Elementor, no content since 2022." Forty names worth emailing instead of four thousand.
Comparison content
Our buyers don't search "web design agency Atlanta." They search "Elementor vs Gutenberg," "how much does a law firm website cost," "Webflow vs WordPress nonprofit."
- Gap-filling: search + scrape the top 10 ranking pages for a comparison query, extract what each covers, find what nobody says. It's almost always the honest tradeoff and the real number.
- The unfair advantage: we have actual project economics for ~30 clients in the ops dashboard. "What a $15,000 website actually buys you, with real line items" is a page no competitor can write, because every listicle on that keyword is guessing.
- Vertical roundup: crawl 40 Georgia law firm sites, extract patterns, publish "The 12 best law firm websites in Georgia and what they do differently." Featured firms get an email. Unfeatured firms are the prospect list.
- Route it all through the-workbench: cmskeywordbank into cmscluster into cmspipeline.
Monitors as trigger events
Probably the best ROI per hour here. firecrawl_monitor fires on real content change with an AI judge filtering noise. Point it at events that predict a website budget:
- Careers page adds a marketing role. New marketing leader hires an agency within six months. Best trigger in our business and almost nobody runs it.
- Leadership / About page changes (new CEO, new CMO)
- Press page hits "acquired," "rebrand," "new location," "funding"
- Chamber new-member pages, Atlanta Inno, business journal award lists
- Competitor agency portfolio pages: when a peer adds a client in a vertical, that vertical is buying
- Our own client sites, for breakage and for "your competitor just relaunched" retainer nudges
Webhook into an ops dashboard lead record, into a Motion task, into a drafted email.
- One-to-one at scale: 20 a week, each opening with one specific, true, non-obvious observation about their site. Firecrawl produces the observation, our voice wraps it, the report link closes it.
- Sitelines segmentation: enrich the LinkedIn subscriber CSV by company domain, segment by vertical and site age, send different cuts. Nonprofits get the nonprofit case study.
- Roundup email off the back of the vertical roundup.
Guardrails: run cold volume on a separate warmed domain, never classiccity.com. And the failure mode that kills the whole strategy is a report that reads as generated. A generic AI audit is worse than no email, because it burns the prospect permanently. Every report needs one observation a human clearly made.
Website build, where it pays for itself regardless
/migrate-site stage 2 "capture" IS a Firecrawl crawl. Clean markdown for every legacy page feeds:
- sitemap-tracker: upsertpage per URL, setmetadatachecks, setconfidence, setimageslots, add_keyword
- Block mapping against docs/BLOCKS.md, giving a proposed block plan per page
- The keep / rewrite / kill disposition gate
GSEB, TrialPort, Sherman & Phalen and Publicom all had content-import phases that ate weeks. This saves money this month whether or not a single lead comes from it.
Process
- /prep-sales-call gains a crawl leg. Today it audits from a look; make it audit from data.
- Proposal scoping: crawl first, get a real page count, price content migration off a number instead of a vibe. We've been guessing on that line item.
- Monitor competitor agency pricing pages continuously.
Sequence
- Migration capture (Firecrawl into sitemap-tracker). Zero outbound risk, saves hours on TrialPort and GSEB right now, validates the plumbing.
- Teardown generator plus one branded report template. Test on prospects we're already talking to (Goss RV, Peachtree Playthings, Faidley's, Tower Leadership) before anything goes cold. If it doesn't impress someone who already likes us, it won't convert a stranger.
- Monitors on ~50 target companies' careers and leadership pages.
- Comparison engine into the-workbench.
Steps 1 and 2 share most of their code. That's not an accident, that's the design.