ScopeCrafters: an AI proposal generator contractors use from the truck
ScopeCrafters turns a contractor's site notes into a branded, trade-specific PDF proposal and emails it to the homeowner before they leave the driveway. We designed, built and run it ourselves. This is how it works, what we deliberately left out, and what we'd do the same way on your product.
- Product
- AI proposal writer for HVAC, roofing, electrical and plumbing contractors. Site visit to branded PDF proposal in 5 minutes.
- Built for
- Owner-operators of 2–15 person specialty trade businesses
- Timeline
- First commit Jun 15, 2026. Billing, four trades and referrals live by Jun 18.
- Status
- Live, paid plans
- Stack
- Next.js 15
- Supabase
- AI model
- PDF generation
- Resend
- Polar
- Vercel
Who ScopeCrafters is for, and what hurts.
A specialty contractor's day ends with a site visit and a customer who wants a price by morning. The proposal gets written that night: handwritten notes from the truck, a Word template that has drifted into five slightly different versions, part prices in a separate spreadsheet, and warranty and terms boilerplate pasted in from an older job. Then it is exported to PDF, attached to an email, and a reminder is set to follow up in a few days.
That work is unpaid, it happens after hours, and it is where jobs are lost. A proposal that arrives late, or looks less professional than a competitor's, loses to the one that showed up first. Worse, scope language written from memory at 10 pm misses things: permit fees, extra decking layers, disposal. Those gaps come back later as change-order disputes with the homeowner.
The people with this problem are owner-operators of small HVAC, roofing, electrical and plumbing businesses, typically 2 to 15 people, who write their own proposals because they don't have an estimator. They are on their phone all day and at a desk almost never. Anything that requires sitting down at a laptop has already failed.
Why existing tools fall short.
- 01
Field-service suites treat proposals as an afterthought
Jobber, Housecall Pro and ServiceTitan bundle scheduling, dispatch, invoicing and CRM. The quote builder is one tab among many, priced as part of the whole suite. A three-person roofing crew pays for software it doesn't use to get a proposal template that still has to be written by hand.
- 02
ChatGPT writes text, not proposals
A general chatbot can draft scope language. It can't put it on your letterhead, email it from your business, tell you when the homeowner opened it, or remember the clauses you always include. The contractor still does every step except typing the paragraph, and the paragraph often forgets the exclusions that prevent disputes.
- 03
Generic AI doesn't know the trade
Trade proposals need trade vocabulary: refrigerant transitions and efficiency ratings for HVAC, underlayment and ventilation specs for roofing, load and panel language for electrical. Without it, homeowners can tell the text was machine-written, and the contractor's credibility takes the hit.
Inside ScopeCrafters.
ScopeCrafters is a single-purpose tool: site notes in, proposal out. The contractor picks the trade, types or pastes what they saw on the job, ticks the materials, and taps Generate. A few seconds later they get an editable preview with four sections (scope, materials, terms and warranty) that they can change in place. One more tap renders a PDF with their logo and brand color and emails it to the customer.
Everything after that is tracked. Each proposal moves through draft, sent and opened, and the dashboard shows which customers have read their quote. Scheduled jobs track follow-ups and send a weekly email digest, so the contractor doesn't have to remember to chase.


- 01
Trade-aware AI, not a generic chatbot
Output is tuned to each trade's vocabulary, standard exclusions and warranty language, so a roofing proposal reads like a roofer wrote it.
- 02
Structured output the UI can trust
The AI returns a proposal as structured data rather than a blob of prose, and it's validated before it's saved. The preview, the editor and the PDF all render from the same object.
- 03
Branded PDF from the same components
PDFs are rendered server-side with the company's uploaded logo and brand color. The web preview and the PDF share one styling layer, so what the contractor approves is what the homeowner receives.
- 04
Delivery and open tracking
Resend sends the proposal and reports delivery and open events back through a signed webhook, which updates the proposal's status. The contractor knows when to call.
- 05
Mobile-first by default
Every screen was designed for a phone held in one hand in a truck cab first, and for a desktop second.
- 06
Referrals built in
Contractors get a referral code and link with credits, because trade businesses mostly hear about tools from other trade businesses.
How it fits together.
- Next.js 15
App router on Vercel. Server components read Supabase directly; route handlers do the writes.
- Supabase
Magic-link auth, Postgres with row-level security per user, Storage for logos and PDFs.
- AI model
Trade-aware generation with structured, validated output.
- PDF + email
Server-rendered branded PDF, delivered by email with open tracking.
- Polar
Subscriptions with a signed webhook that gates the Generate and Send endpoints.
There is no separate API service and no queue. A proposal is generated inside a single route handler call, so Vercel serverless functions are enough, and the whole product has one deploy target.
Every table carries row-level security tied to the signed-in user, so a bug in an API route can't leak one contractor's proposals to another. Authorization is enforced in the database, not only in application code.
Webhooks (billing, email events) are the source of truth for state changes. A checkout redirect never grants a plan by itself.
The calls that shaped it.
- 01
The cheapest model that meets the bar
Templated trade prose doesn't need a frontier model. We compared candidates on output quality and cost per proposal, and picked the cheapest one that met our quality bar. At a $29 entry tier, AI cost has to stay a rounding error.
- 02
Migrating from Stripe to Polar on day three
The product launched on Stripe Checkout. Two days in, we moved billing to Polar, which acts as merchant of record and handles sales tax, and which works from the country the studio operates in. Because plan state only ever changed through webhooks, the migration touched the billing module and nothing else.
- 03
One trade per company at launch
The MVP started with HVAC and roofing, one trade per company, to prove prompt quality where it mattered most. Electrical and plumbing followed on day four, once the prompt structure was proven.
- 04
Integrate with CRMs, never become one
Contractors will ask for scheduling, invoicing and customer history. The written scope says no to all of it. ScopeCrafters does one job and works alongside the tools contractors already have.
Deliberately left out of v1.
- Voice-note input. It's part of the pitch, but text input had to prove quality first.
- E-signature on proposals.
- A material price database. AI estimates with a manual override were enough to launch.
- CRM features: customer profiles, scheduling, invoicing, crew management.
- QuickBooks, Jobber and Housecall Pro integrations.
- Custom per-user templates and a pricing rules engine.
- Team accounts and admin roles.
- A native mobile app. Responsive web on the phone was enough.
How it gets found.
Contractors don't search for "AI proposal software". They search for the problem in front of them: how many tons of AC a house needs, how many squares a roof is, how to word a roofing proposal. So the growth engine answers those questions first and introduces the product second.


- 01
Three free calculators
HVAC tonnage, roofing squares and electrical load calculators live at /tools. They are useful without signing up, and each one links to the trade's proposal generator.
- 02
Embeddable widgets for link earning
Each calculator also ships as an embeddable widget, so trade blogs and supplier sites can host it, with attribution back to ScopeCrafters.
- 03
Programmatic pages with real substance
A glossary of 19 trade terms, 16 proposal scope templates, and a state-by-trade contractor directory, all generated from typed data. State pages without enough unique content are kept out of the index instead of being published thin.
- 04
Comparison and trade landing pages
Dedicated pages for each trade's proposal generator and honest comparisons with Jobber, Housecall Pro, ServiceTitan, JobNimbus and Buildertrend.
- 05
Built for search and AI answers
llms.txt and llms-full.txt, an RSS feed, and IndexNow submissions that send only changed URLs rather than the whole sitemap.
Where it stands today.
ScopeCrafters is live with paid plans starting at $29 a month and a 7-day free trial. We're not publishing user or revenue numbers on this page until they're large enough to mean something. When we do, they'll come straight from the billing dashboard.
What you can verify today is the product itself, the free tools, and the depth of the content around them. All of it is public at scopecrafters.com.
Shipped and live
- Four trades: HVAC, roofing, electrical and plumbing
- Proposal generation, editing, branded PDF and email delivery
- Open tracking, follow-up tracking and a weekly email digest
- Referral codes with credits
- 3 free calculators, each with an embeddable widget
- Programmatic glossary, template and directory pages
- Internal analytics and admin console
What we'd do the same way on your product.
- 01
Write the out-of-scope list before the in-scope list
The most valuable part of the MVP spec was the list of things we would not build. Every feature request since launch has been checked against it.
- 02
Make billing state webhook-driven from day one
It made a payment-provider migration in the first week a contained change instead of a rewrite.
- 03
Never fake trust signals
An early version of the site carried review-rating markup that wasn't backed by real reviews. We removed it. Structured data only describes what is actually true.
- 04
Free tools beat blog posts for a new domain
A calculator answers a question someone typed into Google today. That's an easier first win than ranking an article against established publishers.
The services behind this build.
- AI Product Development
LLM features that survive real users: structured outputs, RAG, guardrails and cost control on Gemini, Claude or OpenAI.
- SaaS MVP Development
2–6 week Next.js + Supabase + Stripe MVPs with auth, billing, the core workflow and launch-ready SEO.
- Next case study: ContentVo
Paste a company URL, get a branded 30-day social content calendar with AI visuals in under 2 minutes.
Build something like this.
If ScopeCrafters looks like the kind of product you need, tell us what you're building. We'll reply with questions about scope, timeline and fit.
SSttaarrtt aa pprroojjeecctt