I opened the MeterCall workspace, typed one sentence, and 47 minutes later I had a working CRM with contacts, deals, pipelines, workflows, email sequences, and a reporting dashboard. I didn't write a line of code. I didn't touch a database schema. I didn't configure an environment variable. The total compute bill at the end, including three course-corrections and a refactor, was thirty-four cents.
HubSpot Professional is $890 per month. Enterprise is $3,600 per month. This is the story of the 47 minutes and the 34 cents.
MeterCall's builder kicks off by reading what HubSpot actually is. Not a list of features — a feature model. It pulls HubSpot's public developer docs, identifies the nine object types that matter (contact, company, deal, ticket, note, call, meeting, task, email), and notices that HubSpot's Workflow engine is fundamentally a graph of triggers + actions with branching logic. That's the spine. Everything else is UI on top of that spine.
Research cost: 3 calls to the research model at ~2,400 input tokens + 1,100 output each. Approximately $0.04.
The builder proposes a schema and writes it to a Postgres database that MeterCall provisions for me on the fly. Nothing to configure. Nothing to install. The schema looks roughly like:
contacts (id, first_name, last_name, email, phone, company_id, created_at, custom_fields JSONB)
companies (id, name, domain, size, industry, created_at, custom_fields JSONB)
deals (id, name, amount, stage, close_date, owner_id, company_id, created_at)
pipelines (id, name, stages JSONB) -- stages are ordered, each with probability
workflows (id, name, trigger JSONB, actions JSONB) -- a graph
sequences (id, name, steps JSONB)
events (id, type, object_id, actor_id, at, payload JSONB) -- append-only audit
That schema took one iteration. I asked for custom_fields to be JSONB so I could add fields without a migration, and the builder said "yes, already that way." Good.
Schema cost: 2 calls, roughly $0.06.
The builder generates a React + Tailwind UI with the standard CRM three-pane layout. Left: object type selector. Middle: list view. Right: detail. The detail pane has tabs for Timeline, Notes, Emails, Tasks. The pipeline view is a Kanban board. The dashboard has four cards: pipeline value, velocity (average days per stage), win rate, and activity count.
It runs. I click around. I notice the pipeline Kanban cards don't show deal amount. I say "show the deal amount on each card as $12,450-style." The builder adds it. Done.
UI cost: 6 calls, roughly $0.11.
This is where it got fun. I said "make the workflow engine work like HubSpot's: trigger when a contact is created, wait 5 min, send an email from a sequence, if they open the email move them to a different stage, if not wait 3 days and send a reminder." The builder shipped a visual workflow editor with drag-and-drop nodes. I ran it against a test contact. It worked.
Then I tried to break it. I set a 0-second delay. I pointed a trigger at a deleted contact. I built a workflow that loops back on itself. The builder's engine caught all three and returned proper errors. That's the part I didn't expect. A code generator shouldn't catch infinite-loop bugs on first pass. MeterCall's QA runtime does.
Workflow engine cost: 4 calls, roughly $0.08.
I asked for email sequences with A/B testing. The builder wired an email sender (using a pass-through SMTP I already had — no setup fee), added an email_variants table keyed to sequences, and split traffic 50/50 by contact_id % 2. Open and click tracking came standard because MeterCall routes all outbound email through a tracking proxy by default.
I ran a test send to my own inbox. The email came through with a tracked link. I clicked it. The dashboard showed the click in real time.
Email + A/B cost: 2 calls, roughly $0.04.
I asked for one more thing: "Make the dashboard feel like a finished product. Don't ship me a demo." The builder added loading skeletons, empty states with friendly copy, hover states on every card, and a subtle gradient on the top nav that matched my brand color. It even detected that I hadn't uploaded a logo and added a dashed "Add logo" placeholder in the corner.
That part is what separates this from other AI builders I've tried. The builder knows that "finished" means "not obviously generated." Polish cost: 1 call, roughly $0.01.
Module: hubspot-replacement (forked from /built/hubspot-replacement/)
Session duration: 47m 12s
Total calls: 18
— Research model: 3 calls = $0.04
— Schema/DB model: 2 calls = $0.06
— UI generator: 6 calls = $0.11
— Workflow engine: 4 calls = $0.08
— Email + A/B: 2 calls = $0.04
— Dashboard polish: 1 call = $0.01
--------
TOTAL: $0.34
The session is stored with a signed receipt attesting to every call. You can audit it. You can fork the exact module I built and modify it. You can publish your fork back to the marketplace and collect 70% of every call when someone else uses it.
I've been in SaaS for fifteen years. HubSpot Pro is $890/month because HubSpot took a decade to build what I replicated in 47 minutes. That does not mean HubSpot is worthless — HubSpot has real distribution, real enterprise features, and a sales team that will hold your hand through onboarding. But I now know what the production cost actually is. It's 34 cents.
If HubSpot is 34 cents and sells for $890, what's Marketo? What's Salesforce? What's Workday? I spent a Saturday in the workspace finding out. The answer, in every case, is that the production cost is almost free and the price is almost entirely distribution and brand. The money SaaS charges is a tax on the fact that you didn't know you could build it.
Now you know.
Open the MeterCall workspace. Type what you actually need. Watch it build. Check the receipt. The module you end up with is yours — use it as-is, fork it, resell your fork for 70% of every call. Bloomberg gives you a locked room. MeterCall hands you keys and a hammer.
Build your replacement module →