Job ticket 921069 · smb · quote desk · no subscription
Jobber's quotes live behind US$49 a month. The estimate was never the expensive part.
No free plan — a trial, then Core at US$49 a month with no commitment (the title sells the annual ladder from US$29). But turning job-site scribbles into an itemized quote a homeowner signs is note-reading and arithmetic a free-tier model does per job. Paste the notes; keep the quote as a file.
Jobber is a trademark of Jobber (Homedad Inc.). This is an independent, unaffiliated comparison built on Jobber's own published pricing page, linked below and re-read every thirty days.
The quote desk — rendered in this browser
Sample data is illustrative, not a claim about Jobber. Every Jobber figure on this page comes from the linked pricing page, read 2026-09-28.
The prompt pack
Two prompts, each mapped one-to-one onto a Jobber feature you are currently rationed on. Run them from this page with a free key, or copy them into any free chat model — the text is identical either way, and it is printed in full at the bottom of this section so it survives this site.
Loading the pack from tools.json… If this fails, the full prompt text is still readable below.
One-time unlocks only, never a subscription. If a price ever appears here it was read from Stripe in that request, not typed by hand. An unlock is client-side gating, not secure payment verification: it is stored in this browser and cannot prove payment to anyone else.
What Jobber's own pricing page says
Read from getjobber.com — pricing on 2026-09-28. Fields we could not read are marked unconfirmed rather than filled in with a plausible number.
| The job | Jobber's page (read 2026-09-28) | What it costs | This page + a free-tier model |
|---|---|---|---|
| A standing free tier | Not printed — trial, then paid | US$49/mo floor (Core, monthly) | US$0 — write quotes without an account |
| Itemized quotes | Core and up | US$49/mo (promo US$35 ×3) | Line items from your pasted price list |
| Optional-line-item upsells | Connect's quote visuals | US$139/mo | Good-better-best tiers per run |
| Scheduling, payments, CRM | The platform itself | US$49–599/mo | Out of scope — quotes, not operations |
What this replaces, and what it does not
A displacement claim you cannot substantiate is a lie with good typography. This is the whole scope, including the parts where Jobber wins.
Quotes as files
An itemized sheet per job, exported as CSV or Markdown — send it however you already send quotes.
Your prices rule
Every line prices from the list you paste; the desk invents nothing and flags what your list doesn't cover.
Tiers that differ
Good-better-best vary in scope, and the footnote says when GOOD is honestly enough.
Not a field-service platform
No scheduling, no crew tracking, no client hub, no two-way SMS. Jobber still runs the operation.
Not payments
No deposits, no card capture, no invoice tracking. Get paid however you get paid.
No customer database
The desk reads the notes you paste for one job and forgets them; it is not a CRM.
The prompts, in full, as text
Copy these into any model. They are the product; the page around them is convenience. Each block is the exact system prompt the interactive runner sends, plus the user-message template.
Prompt 01 — 1. Estimate builder · jobber-estimate-builder v1.0.0 · best ally: Google Gemini API — Free usage tier · gemini-2.5-flash-lite
Replaces: The itemized quote Core gates at US$49/mo: pasted job notes and your price list become a line-item quote sheet with a re-added total and a submission note.
Why this model: Notes-to-line-items is precise extraction with exact arithmetic; a free Flash-lite at low temperature keeps quantities and prices intact and re-adds the total before stamping it. Fallback ally: Groq Cloud — free tier.
System prompt (1519 chars):
You sit at the quote desk: the reader pastes job-site notes and their price list, and you return an itemized quote sheet a homeowner can say yes to — labor and materials separated, quantities and unit prices explicit, the total re-added, and a two-sentence submission note. You never invent a price that is not in the pasted list, and a note you cannot price becomes a [NEEDS PRICING] line instead of a guess.
Return ONLY one JSON object. No markdown fences, no commentary, no preamble.
{
"kicker": string (max 8 words),
"headline": string (max 8 words),
"subhead": string (max 20 words),
"rows": [ { "label": string (the line item), "value": string (the finding, quote or number) } ],
"stat": { "value": string (one count or price, digits), "label": string (max 12 words, what the number is) },
"footnotes": [ string (one short footnote per assumption made) ]
}
Hard rules:
1. Return one row per line item: label is the item with quantity ('Demolition — 6 hrs'), value is the line total priced from the pasted list ('US$X · 6 × US$45/hr').
2. Group rows in this order: Labor, Materials, Disposal/Fees.
3. The stat is the quote total, re-added exactly from your rows — count twice before you finalize.
4. The subhead states the job in at most 12 words and the line count.
5. Footnotes carry every assumption: note ambiguity, [NEEDS PRICING] lines, validity window (default 30 days).
6. Use only the pasted price list; if notes mention work with no price, add a [NEEDS PRICING] row and say what's missing.
User message template:
Variables:
{{notes}}— Job-site notes, as scribbled (max 2000 chars) sample data shipped with the tool{{prices}}— Your price list (max 800 chars) sample data shipped with the tool
Output schema (the answer must match this exactly):
Decoding: temperature 0.2 · max 1800 output tokens · responseMimeType application/json · budget ~450 in / ~800 out per job · cost per run: 1 request against Gemini's free daily messages; the relay floor needs no key at all.
Prompt 02 — 2. Good-better-best pass · jobber-options-pass v1.0.0 · best ally: Google Gemini API — Free usage tier · openai/gpt-oss-20b
Replaces: The 'optional line items' upsell layer Connect gates at US$139/mo: one job folded into three tiers, each priced from your list with an honest rationale.
Why this model: Folding one job into three coherent tiers is constrained composition over a fixed price list; a mid-size free instruct model keeps the tiers genuinely different instead of reselling the same scope three times. Fallback ally: Google Gemini API — Free usage tier.
System prompt (1510 chars):
You cut one job into good-better-best: the reader pastes the estimate sheet's scope and the price list, and you return three tiers a customer actually chooses between. GOOD fixes the problem, BETTER fixes the cause, BEST is what you would do on your own house. Every tier prices only from the pasted list, and each carries one honest line on who should buy it.
Return ONLY one JSON object. No markdown fences, no commentary, no preamble.
{
"kicker": string (max 8 words),
"headline": string (max 8 words),
"subhead": string (max 20 words),
"rows": [ { "label": string (the line item), "value": string (the finding, quote or number) } ],
"stat": { "value": string (one count or price, digits), "label": string (max 12 words, what the number is) },
"footnotes": [ string (one short footnote per assumption made) ]
}
Hard rules:
1. Return exactly three rows, in order: 'GOOD —', 'BETTER —', 'BEST —'.
2. Each row's value is the tier's scope in one sentence plus its re-added price in US dollars.
3. GOOD omits anything the customer can defer without risk; name what it defers.
4. BETTER and BEST must differ in scope, not in warranty language or adjectives.
5. The stat is the spread: BEST price minus GOOD price, labeled 'what the upgrade decision is worth'.
6. The footnote names the one tier most customers should buy, and why, in one clause — if GOOD is honestly enough, say so.
7. Price only from the pasted list; a tier that needs an unpriced item carries [NEEDS PRICING] instead of a number.
User message template:
Variables:
{{scope}}— The job scope from your estimate (max 1500 chars) sample data shipped with the tool{{prices}}— Your price list (max 800 chars) sample data shipped with the tool
Output schema (the answer must match this exactly):
Decoding: temperature 0.3 · max 1400 output tokens · responseMimeType application/json · budget ~350 in / ~600 out per job · cost per run: 1 request against a free OpenRouter daily pool; the relay floor needs no key at all.
Questions worth asking before you cancel
Is the $29 figure real?
It is the page title's own headline — 'Plans Starting at $29/Month' — which is the annual-billing ladder. The per-tier annual cards did not print in our capture, so we quote the verified no-commitment figure (Core, US$49/mo) and mark the ladder unconfirmed. Read 2026-09-28.
Will the quote match how I price?
Only if your price list is complete: the desk refuses to invent a rate, so anything missing comes back as a [NEEDS PRICING] row for you to fill.
Can it handle change orders?
Paste the change as new notes and re-run; a second sheet with the same discipline is the change order. There is no versioning — the files are yours.
Where do my job notes go?
Nowhere. No account, no storage, no analytics beyond the site beacon. Paste, render, download, clear the tab.
Does it work without an API key?
Yes. Copy the printed prompt into any free chat model, paste the JSON answer into the relay box, and the desk renders it exactly the same way.
Send this to someone still paying for it
Nothing is loaded from X or LinkedIn until you click, and no share is counted, logged or reported back to us — the buttons are plain links to each network's own share page.