AI browser agents are incredible in demos. They navigate pages, fill forms, extract data — all from a natural language prompt.
Then you look at the bill.
"The program cost $1.05 to run. So doing it at any scale quickly becomes a little bit silly."
— rozap, Hacker News
"I was spending $149/month on a scraping infrastructure subscription for a side project that pulled competitor pricing data once a day."
— anonymous developer, Dev.to
Every AI browser agent — Browser Use, Stagehand, Claude Computer Use — sends the page to an LLM on every single run. The LLM reads the DOM, decides what to do, executes actions, reads the result, and repeats.
For a simple data extraction task, that's 5,000-20,000 tokens per run. At current API prices:
| Runs per day | AI agent (per run) | Monthly cost |
|---|---|---|
| 1 | $0.50 | $15 |
| 10 | $0.50 | $150 |
| 100 | $0.50 | $1,500 |
| 1,000 | $0.50 | $15,000 |
And that's just inference cost. Add hosting, retry logic, error handling — the real cost is higher.
It's not just money. AI agents are probabilistic.
"If each step has a .95 chance of completing successfully, after not very many steps you have a pretty small overall probability of success."
— rozap, Hacker News
| Steps | Per-step success | Overall success |
|---|---|---|
| 5 | 95% | 77% |
| 10 | 95% | 60% |
| 20 | 95% | 36% |
A 20-step workflow fails 64% of the time. Every failure burns tokens and produces no result.
What if AI only ran once — at authoring time?
# Step 1: AI writes a deterministic program (one-time cost) $ tap forge "scrape Hacker News top stories" ☉ Inspecting https://news.ycombinator.com... ☉ AI writing program... ✔ Verified: 30 rows, score=1.0 ✔ Saved: hackernews/hot.tap.js # Step 2: Run forever. No AI. $0. $ tap hackernews hot 30 rows (245ms) Cost: $0.00
The math flips completely:
| Runs | AI agent | Deterministic program |
|---|---|---|
| 1 | $0.50 | $0.03 (forge) |
| 10 | $5.00 | $0.03 |
| 100 | $50.00 | $0.03 |
| 10,000 | $5,000 | $0.03 |
Run #1 and run #10,000 cost exactly the same: $0.00.
This is the natural objection: deterministic programs break when the site changes.
True. But the solution isn't "re-run AI every time." It's health contracts that detect breakage, plus AI that fixes the program only when needed:
# Daily health check (no AI) $ tap doctor hackernews/hot ✔ ok 30 rows github/trending ✔ ok 25 rows # Site changed? Auto-heal (AI runs once to fix) $ tap doctor --auto
99% of runs need zero AI. You only pay for intelligence when the world changes.
You don't even need to forge. 195+ community programs are included — Hacker News, GitHub, Reddit, BBC, ESPN, npm, and dozens more.
$ tap update # install community programs $ tap hackernews hot # run immediately, $0 $ tap github trending # another one, $0 $ tap list # see all 195+
curl -fsSL https://taprun.dev/install.sh | sh tap update && tap hackernews hot