Case study · AI development economics

The $7.10 Bridge

An AI coding agent built a working 3-D Golden Gate Bridge simulator in 78 minutes of measured machine time. Pricing the tokens and the counterfactual engineer tells a sharper story than either number alone.

Active AI time

78 min

measured, per-turn

API-equivalent cost

$7.10

14.5M tokens

Manual estimate

21–36 days

expert Three.js dev

Central labor cost

$22,800

228 h at $100/h

Somewhere on a laptop there is a session log with an unremarkable name — session_935268ec — that records the construction of a bridge. Over eight user prompts and 123 successful model responses, the Kimi Code agent (model k3, thinking effort set to maximum) wrote an interactive Three.js application: a procedurally generated Golden Gate Bridge with terrain, water, sky, fog, day-and-night lighting, simulated traffic, orbit and free-flight cameras, and its own browser-automation scripts for taking screenshots of itself. About 1,250 logical lines of application and automation code, working in a browser, from a standing start.

Screenshot of the interactive 3-D Golden Gate Bridge application in fly mode: the International Orange bridge stretches across calm blue water toward a green headland, with traffic on the deck, tower reflections in the water, and an on-screen control panel for camera presets, orbit and fly movement, night mode, traffic, and a fog slider.
The deliverable, seen from mid-air in the app's free-flight mode: the procedural span, deck traffic, water reflections, and the live control panel for cameras, flight, night mode, traffic, and fog density. Click the image to fly it yourself.

What makes this session worth writing about isn't the demo — it's that the whole thing was audited. The local session artifacts record every request, response, token, and failure, which means we can do something usually impossible with AI-productivity anecdotes: put honest numbers on both sides of the comparison.

78 minutes, counted the hard way

The lazy number would be wall-clock time, and it would be wrong. The session hit Kimi's subscription rate limit twice and sat idle for long stretches while no agent work was happening. So the audit counts only active agent-turn time: for each of the seven agent turns, the span from the first logged request to the last successful response, with inter-turn gaps and failed rate-limited requests excluded. The sum is 1 hour, 18 minutes, 21 seconds.

Where the 78 minutes went

Active span per agent turn · hover a bar for detail

Total: 1h 18m 21s across the 7 turns that got successful responses (an eighth prompt went unanswered — more below). Two turns — the initial build and the resumed realism pass — account for 69% of all active time. Of the total, roughly 1h 11m was spent waiting for first tokens and streaming responses; the rest was tool execution and orchestration.

Notice the shape: one 29-minute opening turn where the agent laid down the scene, a long middle turn where it resumed a big visual-quality pass after a rate limit, then sub-4-minute turns at the end. The expensive thinking is front-loaded; the tail is cheap course corrections and quick questions.

The entire spec was eight messages

The audit also preserved what the human typed, verbatim. It is worth staring at, because it is the full extent of the specification the agent received: eight casual messages, about 110 words in total, original typos included (“Cloudfare” appears twice).

Turn 0 · Build · 4:01 PM29m 12s of agent work

can you build some 3D interactive modeling of san francisco golden gate bridge? I heard three.js and html based interface. show me a plan first

Turn 1 · Correct · 4:32 PM9m 6s

I cannot have free flying in the html view. it feels like stuck in the middle to look around only.  why is that? can you fix it?

Turn 2 · Refine · 4:48 PM7m 44s

make the model photo realistic as much as possible

first subscription rate limit

Turn 3 · Refine · 5:54 PM25m 10s

continue

Turn 4 · Deliver · 8:43 PM58s

where can I deploy it online for free?

Turn 5 · Deliver · 8:45 PM2m 19s

help me get Cloudfare pages

Turn 6 · Deliver · 8:48 PM3m 52s

I want to store things in a github repo under my account, then somehow deploy to cloudfare. walk me through the process

Turn 7 · Deliver · 8:56 PMno reply — second rate limit

It asks for Deploy command, the default is “rpx wrangler deploy”. what should I do?

Three things stand out. First, the ratio: the opening two-sentence request bought 29 minutes of autonomous implementation, and the single word “continue” bought 25 more. Measured in words, the leverage on the human side is even more extreme than the leverage on the cost side.

Second, none of this is “prompt engineering.” These are the messages you would send a contractor: an idea, a bug report (“it feels like stuck in the middle”), an ambition (“photo realistic as much as possible”), and some deployment questions. What they do encode is judgment — asking for a plan first, describing the camera problem by its symptom, knowing when to stop polishing and start shipping. The words are cheap; knowing which words, and when, is the human contribution the cost ratios can't see.

Third, the anticlimax: the final message — a question about a Cloudflare deploy command — was never answered. The session's second rate limit killed it, and the deployment was finished later, outside the measured session. Even a 175× acceleration still ends its day hitting a quota.

14.5 million tokens, and why they cost so little

The session processed 14,501,830 tokens. That sounds enormous until you see how they break down:

Token composition of the session

14.50M tokens processed · share of total

Cached input 13,959,273 · 96.26% Uncached input 425,631 · 2.94% Output 116,926 · 0.81%
From Kimi Code's exported per-request usage.record entries. At K3's published API rates (¥20/M uncached input, ¥2/M cached input, ¥100/M output), the session totals ¥48.12 — US$7.10 at the July 18, 2026 rate of 6.7767 CNY/USD.

96.26% of everything the model processed was cached input. This is the signature of agentic coding: at every step, the agent re-reads a large, growing working context — the codebase, the conversation, its own prior tool results — and prompt caching makes that repetition roughly a tenth the price of fresh input. The actual new material was tiny: about 426K tokens of uncached input and just 117K tokens of generated output. The economics of AI-built software turn out to be, above all, the economics of caching.

One honest footnote: the session ran on a flat-rate subscription, so no per-session invoice exists. The $7.10 is the API-equivalent value of the tokens at published prices — a reproducible yardstick, not a bill.

The counterfactual engineer

Against what should we compare 78 minutes? Lines of code are a poor measure for 3-D graphics work, where most of the effort is visual experimentation — tuning geometry, lighting, materials, cameras, and GPU performance until it looks right. The audit instead builds a bottom-up estimate for an experienced Three.js developer working from a clear spec, reusing Three.js rather than writing an engine:

Manual implementation estimate

Experienced Three.js developer, clear specification

Work areaDeveloper-days
Scene architecture and rendering pipeline2–3
Procedural bridge geometry5–8
Terrain, water, sky, lighting, and fog4–7
Orbit, free-flight, presets, and object interaction3–5
Traffic and day/night effects2–4
Visual tuning, debugging, and browser validation4–7
Packaging vendored assets and automation scripts1–2
Comparable scope21–36 days
At 8 hours/day: 168–288 engineering hours. Midpoint planning estimate: 28.5 days, or 228 hours. At fully loaded rates of $75–$150/hour, that is $12,600–$43,200 of labor; the central scenario is $22,800 (228 h × $100/h).

Put the two side by side and the ratio becomes almost cartoonish. The midpoint manual estimate is 175 times the measured active AI time:

One square = one 78-minute AI session

The midpoint manual estimate (228 hours) equals 175 of them

The entire AI build Estimated manual work, midpoint (each square = 78 min)
Across the full scenario range the time multiple is 129×–221×, and manual labor costs 1,774×–6,083× the token value ($12,600–$43,200 vs. $7.10). Central cost comparison: $22,800 vs. $7.10 — about 3,211×.

Manual labor at the central estimate costs roughly 3,200 times more than the tokens that did the work. But that ratio is leverage, not savings.

Why this project was a best case

Before generalizing, it's worth naming why this particular project was unusually well suited to an agent:

What the numbers don't prove

The report behind this article is unusually careful about its own limits, and the article should be too:

The defensible claim is narrower than the eye-popping ratios, and it is still remarkable: for this project, an AI agent produced a substantial, working 3-D application in about 78 minutes of measured active time, using tokens worth about $7.10 at API prices, where a comparable manual build plausibly represents several weeks of expert work.

The insight to carry away isn't "software now costs seven dollars." It's that when a task is demonstrable, composable from mature libraries, and iterable inside a closed tool loop, the marginal cost of implementation collapses by orders of magnitude — and the scarce, expensive inputs shift to the things the ratios deliberately exclude: knowing what to build, steering the agent, reviewing the result, and owning it afterward.