Cold outreach with v0 prototypes: the complete playbook
Sending a working prototype in cold emails raised our reply rate by 5x. The v0 cold outreach playbook — how we scope, build, send, and follow up.

We tried the standard cold-outbound playbook for the first two years of the agency and hated every minute of it. Short emails. Follow-ups. Subject-line testing. A 1–2% reply rate that justified the exercise on a spreadsheet but felt like fa
We tried the standard cold-outbound playbook for the first two years of the agency and hated every minute of it. Short emails. Follow-ups. Subject-line testing. A 1–2% reply rate that justified the exercise on a spreadsheet but felt like failure. In Q3 2025 we switched to a v0 cold outreach pattern — every email linked to a bespoke working prototype — and the numbers changed in a way that was hard to ignore. The v0 cold outreach playbook we run now is: one operator, one afternoon, ten prototypes, ten emails, each one personalized to the recipient's actual website with a specific observation or suggestion built into a live page — reply rate 5x our prior baseline, meeting rate 8x, total time per prospect around 25 minutes. This is the full playbook, the numbers, and the ways it breaks.
The mechanic, end to end
Every outreach in this playbook has four parts.
A researched observation. The operator spends five minutes on the prospect's site and finds one specific thing that's off. The hero copy is generic. The pricing page has three CTAs that conflict. The mobile checkout is janky. The blog hasn't shipped in four months. This is the seed the prototype will be built around.
A v0 prompt that produces a bespoke page. The operator feeds v0 the observation plus a short brief: "Build a before/after landing page for [company]. The 'before' is what they have now. The 'after' is what we'd ship in ten days. Include their logo, their accent color, and this specific headline fix." v0 drafts it in ninety seconds. The operator fixes it in ten minutes.
A deploy to a unique URL. The output is pushed to Vercel under a subdomain like prospect-companyname.our-agency.com. Unique URL per prospect. Takes two minutes.
A short email with the link. Three paragraphs. The observation. The link. The offer. Sent from the operator's real inbox. No sequences, no drip, no nine-touch cadence.
The whole cycle — research, build, deploy, send — is 25 minutes per prospect once you're fluent. The first one takes an hour; by the tenth, you're at pace.
The email itself
The shortest version of the email that works for us:
Subject: Watched your checkout on mobile for about 5 minutes
Hi Simone,
I stress-tested the WondraKids mobile checkout yesterday — got stuck at
the shipping-options step twice and bailed on the third try. I'm betting
this is showing up in your analytics as a 60–70% drop from add-to-cart
to purchase.
I built what the rebuilt page might look like, specifically for your
store, with your fonts and colors: https://wondrakids.our-agency.com/
If there's appetite, I'd love to run you through it. 20 minutes, your
calendar or mine.
— ArthurThe structure is non-negotiable:
- Subject line states what I did, not what I'm selling.
- First line proves I looked at their specific site and have a specific observation.
- Second line connects the observation to money they care about.
- Third sentence contains the link. The link is the thing they will click.
- No CTA bloat. One meeting ask. One optional close.
Every email we send follows this template. We've tested variations. The template wins. Specifics.
What's in the prototype
The page at the other end of that link is not a generic template. It's built to resemble the buyer's current site — same font, same accent colors, same logo — with the specific fix we identified implemented visibly.
We prompt v0 something like:
Build a landing-hero + first-fold page mimicking the visual style of
[prospect.com]. Use their primary color #xxxxxx, their logo at /logos/xxxx.png,
and the Outfit font for display + Inter for body. The goal is to show
a redesigned version of their current homepage with three specific
improvements:
1. A clear value proposition above the fold.
2. A single CTA (not three).
3. One specific trust element — a customer count, a specific award, or a
featured press logo — positioned directly beside the CTA.
The tone should be restrained. Don't add testimonials that aren't real.
Don't invent numbers. Leave placeholders for anything I need to fill in.v0 produces a surprisingly good first cut. We clean it up in Cursor — fix the real typography, swap placeholder copy for real sentences, make sure the contrast is legible. Total edit time: 8–15 minutes.
The page ships with a small "built in 25 minutes by your-agency-name" line in the footer. This is the detail that often tips the scales. Prospects see the line and understand the speed is part of the pitch.
The research layer
The prototype is only as good as the observation it's built around. Bad observations produce bad prototypes, which produce no replies or, worse, polite defensive ones. We've evolved a checklist for what counts as a "good" observation.
The observation must be concrete. "Your site could be better" is not an observation. "Your mobile checkout stalls at the shipping step because of a JS race condition in the GemPages bundle" is. The test is: can the prospect verify it themselves in thirty seconds?
It must be plausibly worth money. The observation should map to a number the prospect cares about — conversion rate, load time, CAC, churn. A typography opinion is not money. A "your LCP is 4.1 seconds, which costs you 20–30% of mobile traffic" observation is.
It must be something their team has probably already talked about. You're not telling them something new. You're telling them something they know is broken and haven't prioritized. That positions your email as a priority-shift signal, not a critique.
It must be recent. If the observation is from six months ago and they've since fixed it, the email is worse than silence. We re-pull the site ten minutes before we send the email, every time.
Our operators keep a running spreadsheet of observation patterns we've seen and the per-pattern reply rate. The single highest-converting pattern in 2025 was "your site has a Meta Pixel issue that's degrading ad efficiency" — reply rate 34%, because Meta pixel problems are both common and expensive. The lowest-converting pattern was "your SEO could be better" at 6%, because every prospect has heard that sentence a thousand times.
The deploy pipeline
Every prototype goes to its own URL. This matters both for personalization and for analytics.
Our stack for the deploy:
- A Next.js "prospect-site" template in a single monorepo
- One branch per prospect, named
prospect/<company> - Vercel preview URLs mapped to subdomains via a custom domain config
- A simple pixel that pings our webhook when the prospect opens the URL
That last piece is where the playbook gets its second-level leverage. When a prospect opens the URL, a webhook fires and our CRM flips the prospect into a "hot — opened" state. We've instrumented this to ping the operator on Slack in real time. A hot opens is usually followed within a business day, often inside an hour, with a second short email that says "saw you took a look — any reaction?"
The hot-opens follow-up has a 41% reply rate. It closes as many meetings as the original email does.
The numbers, by segment
Not every segment responds to this the same way. Here's our 2025 breakdown by prospect type:
| Segment | Emails sent | Reply rate | Meeting rate |
|---|---|---|---|
| DTC brands (Shopify) | 280 | 28% | 11.1% |
| B2B SaaS (Series A–B) | 190 | 18% | 6.8% |
| Agencies (sub-outreach) | 90 | 24% | 8.9% |
| Mittelstand non-tech | 70 | 8% | 1.4% |
| Enterprises (F1000) | 50 | 4% | 0.0% |
| Total | 680 | 22% | 8.4% |
The pattern: the more the buyer's decision-making is visual and self-evident, the better this works. A DTC founder looking at their own site compared to a v0 redesign "gets it" in thirty seconds. A Mittelstand procurement director is not going to click an unknown URL. An enterprise buyer's IT group will block the subdomain before they even see it.
The segments this works best for are the ones where the buyer can evaluate the pitch alone, in the browser, in under five minutes. The segments it works worst for are the ones where the evaluation needs procurement, legal, or a committee.
What we send when prototypes don't work
For the segments where prototype-based outreach doesn't work — Mittelstand procurement, enterprise IT, regulated industries — we use a different playbook, covered elsewhere. Long, document-heavy, referral-based, measured in months. The v0 cold outreach pattern is a specific tool for a specific buyer, not a universal replacement.
If you're running outbound into segments where click-an-unknown-link is off the table, treat this playbook as inapplicable and go back to the traditional enterprise motions: warm intros, vertical events, branded case studies, patient relationship-building.
The failure modes
Over-personalization leading to creepy. An operator in Q3 referenced a specific internal Slack channel the prospect had mentioned on a podcast. The prospect was unnerved. We pulled that observation from the allowed list. The personalization needs to feel like "I looked at your site," not "I've been stalking you."
Generic prototypes from tired operators. At the end of a long day, the operator's observations degrade into "your site could be cleaner." The resulting prototypes are indistinguishable from a v0 default. Reply rates collapse. We now cap operators at ten prototypes per day and enforce a rotation.
Link-clicking skepticism. About 4% of recipients reply with some variant of "I don't click unknown links, what's this about?" We respond with a short text summary of the observation and an offer to paste screenshots instead of linking. This conversion is worth it; the screenshots close about as well as the prototypes do.
Prototypes that look better than the production site. The prospect replies enthusiastically, the discovery call happens, and then the operator has to ship the real thing in the promised timeframe. This is a good problem but a real one. We set the delivery expectation inside the first call: "the prototype is 60% of the design work; shipping it into your live site is the next two weeks." If you skip that conversation, you will build a reputation for speed you cannot sustain.
— a founder who hired us after receiving a prototype emailI've received fifty cold emails this quarter. I deleted forty-eight. I clicked yours because the subject line was weirdly specific. I hired you because the page loaded and it already looked better than ours.
The cost to run this
Per-prospect costs, amortized across a full campaign:
- v0 Pro: €60/month, roughly €0.40 per prototype at our volume
- Vercel: negligible, included in the Pro plan
- Operator time: 25 minutes at a fully-loaded rate of roughly €80/hr — €33 per prospect
- Cold list sourcing: we buy targeted lists at €0.40/record
- Email infrastructure (Instantly plus a warmed-up inbox): €80/month, amortized to ~€0.30 per send
Total, roughly €35 per prospect reached. At a 22% reply rate and 8.4% meeting rate, that's €420 per meeting booked, before any close occurs. With our average deal closing at €42,000 on first engagement, the ROI on this channel is competitive with any other outbound motion we've run, and the experience is dramatically better for the buyer.
What a week looks like
Two operators run the prototype motion for us. Each has an AM block and a PM block.
The AM block (9–11 am) is list review and research. The operator looks at 20–30 names, picks 10, writes observations. Observations get peer-reviewed by the other operator for ten minutes before prototypes begin. This review step has been the single biggest quality lever.
The PM block (13–17) is build + send. Ten prototypes, ten emails, ten Vercel deploys. Ends at roughly 5 pm when the last prospect in the EU time zone has a reasonable chance of seeing the email before close of business.
The next morning begins with the hot-opens queue — prospects who opened overnight. These get the fast follow-up before the operator starts the next day's list.
Weekly output: 80–100 prospects per operator, 22% replies, 6–8 meetings booked, 1–2 proposals sent, 0.4–0.8 deals closed. This sustains the top of the funnel for the agency in a way the previous volume-based outbound never did.
Why it works, in one sentence
Because the prospect receives proof of work before they've bought anything, and the proof of work is specifically about their company, and the entire thing cost the operator 25 minutes.
The prospect reads this sequence and updates their prior on the agency from "probably spam" to "this person did enough homework that I should at least look." That update is enough to close the gap between the 4% control reply rate and the 22% prototype reply rate. The update isn't manipulable; it's earned by the fact that the prototype exists.
What we'd do differently in 2026
More emphasis on the hot-opens follow-up. The original email does the first half of the work; the follow-up after the prospect clicks does the second half. We under-invested in scripting and training on the follow-up in 2025 and paid for it in missed meetings.
Move the prototype layer out of v0 for our long-term brand work. v0 is the right tool for the 25-minute cycle. It is not the right tool for the polished proposal work that follows. Moving the proposal-deck equivalent into a Claude Code + Cursor pipeline made the downstream close rate better and kept v0 focused on the cold-outbound prototype.
Stop running the prototype motion on Fridays. Friday-sent emails convert badly in the B2B space. We moved to a Monday–Thursday schedule in Q4 and saw a ~15% lift in reply rates at the same volume.
The v0 cold outreach pattern is not a silver bullet. It is a better-shaped tool for a specific kind of outbound — buyer-evaluated, visual, under five minutes to understand, inside a segment that will click unknown links. For that segment, in 2025 and through the first quarter of 2026, the numbers hold.
Three more from the log.

The Instantly.ai + v0 cold outreach stack
Instantly runs the sends. v0 builds the prototypes. Claude handles the research. The instantly ai v0 stack in full — inbox warming, deliverability, the lot.
Dec 22, 2025 · 9 min
Claude Code vs Cursor vs v0: honest comparison after 6 months
I used all three every day for half a year across four businesses. Here's the claude code vs cursor verdict, the v0 vs cursor verdict, and what I wish I'd known.
Mar 15, 2026 · 9 min
Replacing GemPages with a custom Shopify Horizon theme
We pulled GemPages off a Shopify store and rebuilt every landing page as Horizon sections. Theme customization, Liquid custom sections, and the numbers.
Jan 06, 2026 · 6 min