💡 Quick take: The AI-productivity conversation split into two camps this year — "10x or bust" and "it's actually slowing us down." Both are wrong for most of us. This is the boring, useful middle.
The Client Who Asked Me to Prove It
A client on Upwork asked me something I couldn't answer cleanly: "If you're using Claude Code now, why isn't your rate lower?"
Fair question. I'd been telling clients for months that AI tools made me faster. So I actually sat down and timed myself — real client work, real deadlines, a full month of logging hours before and after leaning into an agentic workflow for a Next.js + Drizzle project.
The number I landed on wasn't 10x. It wasn't even close. It was somewhere around 1.8x on a good week, and some weeks it was closer to flat. That stung a little to admit, especially with every second tweet claiming some founder shipped a SaaS in a weekend.
Then I found this piece that had just hit #1 on Hacker News, and it put words to exactly what I'd been noticing.
The Staircase Hypothesis
The core argument goes like this: LLMs became reliable enough in 2026 to run inside automated feedback loops — writing code, running tests, checking their own output, retrying. That threshold crossing is what triggered the adoption wave, not raw model intelligence creeping up another few benchmark points.
The analogy that stuck with me: climbing stairs only requires being tall enough to reach the next step. Being tall enough to leap three steps at once doesn't matter much once you're already climbing steadily. In other words — we already crossed the threshold that made AI coding genuinely useful. Further model improvements alone are unlikely to unlock some mythical next tier of productivity. The gains from here mostly come from the industry retooling around what today's models can already do, not from GPT-6 or Opus 6 magically 5x-ing everyone overnight.
That claim is contested, and it should be — but it matches what I've lived through more than the marketing decks do.
Why Developers Should Care About This Argument Specifically
This isn't an abstract debate for people who like arguing on Hacker News. It has direct consequences for how you plan your next six months:
- If you're pricing freelance work, you need a real multiplier, not a vibes-based one, or you'll underquote yourself into burnout.
- If you're a team lead, budgeting for "we'll ship 3x faster with Copilot" is how roadmaps quietly implode.
- If you're learning to code right now, understanding that AI compresses typing time but not judgment time changes how you should actually study.
- If you're evaluating tools, "does this get me past the reliability threshold for my stack" is a more useful question than "what's the SWE-bench score."
What the Data Actually Says
The most-cited counterpoint to hype-driven claims is the METR randomized controlled trial, which found that experienced open-source developers working in repositories they knew well were measurably slower with AI assistance, not faster — despite believing they were faster. The gap between perceived speed and actual speed is the whole story here.
That finding gets misused constantly as "AI makes you slower, full stop." It doesn't say that. It says something narrower and more interesting: AI's value is not evenly distributed across tasks. A few patterns show up consistently in the discussion around this study and in my own logs:
In practice, two things determine whether AI helps or hurts on a given task: how familiar you already are with the codebase, and how narrowly the task is scoped. Deep familiarity plus a vague, exploratory task is the worst combination — that's where AI tends to add review overhead instead of saving time. Unfamiliar territory plus a narrow, well-specified task is where it shines.
⚠️ Warning: If you're deeply familiar with a codebase and reach for an AI agent out of habit rather than need, you may be paying a "prompting tax" larger than the time you'd have spent just writing the fix yourself.
Where the Real 2x (Sometimes More) Actually Shows Up
I stopped trying to find one universal multiplier and started tracking it per task category instead. Over a month of freelance work, here's roughly how it broke down:
| Task Type | Rough Multiplier | Why |
|---|---|---|
| Boilerplate & scaffolding (CRUD, config, schema) | 3–5x | High pattern-matching, low judgment needed |
| Writing tests for existing code | 2–3x | Mechanical, but still needs review |
| Unfamiliar API/library integration | 2–4x | Saves documentation-diving time |
| Debugging in a codebase I know well | 0.8–1.2x | Often net-neutral or slightly negative |
| Architectural decisions | ~1x | AI can suggest, but judgment is still mine |
| Client communication / scoping | 1x | Not a coding task, no change |
Averaged across a real week of freelance work — not a cherry-picked demo — that lands around 1.8–2.2x. Enough to matter. Nowhere near enough to justify some of the claims flying around Twitter/X this year.
A Practical Workflow That Actually Hits the 2x Mark
This is the setup I've converged on after burning a lot of client hours experimenting:
// Step 1: Write a tight, declarative spec before touching the agent.
// Vague prompts produce vague, unreviewable diffs.
interface FeatureSpec {
goal: string; // one sentence, no ambiguity
constraints: string[]; // what must NOT change
acceptanceCriteria: string[];
}
const spec: FeatureSpec = {
goal: "Add pagination to the /api/orders endpoint",
constraints: [
"Do not change the existing response shape for non-paginated calls",
"Keep Drizzle query in the existing repository pattern",
],
acceptanceCriteria: [
"Accepts ?page and ?limit query params",
"Returns total count in response metadata",
"Existing tests still pass",
],
};
// Step 2: Let the agent implement ONE step at a time, not the whole feature.
// This mirrors good engineering practice — small, reviewable diffs —
// and it's even more important with an agent in the loop.
// prompt: "Implement acceptanceCriteria[0] only. Show me the diff before moving on."
// Step 3: Review like it's a junior dev's PR, not a magic black box.
// Specifically check for:
// - silently changed function signatures
// - dropped error handling
// - test coverage that only tests the happy path
function reviewChecklist(diff: string): string[] {
return [
"Does this touch files outside the stated scope?",
"Are error cases handled, not just the happy path?",
"Would I have written this the same way?",
];
}
The pattern across all three steps is the same: narrow scope, explicit constraints, human review at every boundary. The moment I skip that discipline — asking for a whole feature in one shot — my multiplier drops toward 1x, because I spend the "saved" time untangling a diff I don't fully understand.
Common Mistakes That Erase the Gains
- Accepting large, monolithic diffs. The bigger the single output, the more time you lose reviewing it line by line — often more than you would have spent writing it.
- Using AI in code you already know cold. This is exactly where the METR study found people getting slower while feeling faster.
- Skipping tests because "the AI probably got it right." Probably isn't good enough for anything touching money, auth, or user data.
- Treating benchmark scores as a proxy for real usefulness. Vendors have quietly stopped reporting some benchmarks precisely because the gap between "scores well" and "helps in practice" grew too obvious to ignore.
- Not tracking your own numbers. Everyone's multiplier is different because everyone's task mix is different. Guessing is how you end up underpricing your own work.
Security Considerations
Faster code generation doesn't mean fewer security reviews — if anything, it means more. AI-assisted code shipped in 2026 has been linked to a doubling in secret-leak rates, largely because manual review processes haven't scaled to match the new pace of output. A few habits that cost almost no time but save real pain:
- Never let an agent commit
.envvalues, API keys, or connection strings into a diff without an explicit review step. - Run the same static analysis and dependency scanning you'd run on human-written code — AI output isn't exempt.
- Treat AI-suggested auth or permission logic as high-risk by default, not low-risk because "it looks reasonable."
A Real Comparison: Two Weeks, Same Type of Project
I ran an informal experiment on two similar client projects — both Next.js + TypeScript admin dashboards, similar scope, roughly similar unfamiliarity with the specific integrations involved.
| Project A (2024, no agent workflow) | Project B (2026, structured agent workflow) | |
|---|---|---|
| Time to first working version | 9 days | 5 days |
| Bugs found in client review | 4 | 3 |
| Time spent reviewing my own output | ~2 hrs | ~6 hrs |
| Net time saved | — | ~35% |
Notice review time nearly tripled. That's the hidden cost almost nobody puts in the marketing copy: the time you save writing gets partially eaten by the time you now spend reading.
Pros and Cons of the "Retool, Don't Wait for Smarter Models" View
Pros:
- Sets realistic expectations, which protects your pricing and your sanity as a freelancer
- Shifts focus to workflow design — something you actually control — instead of waiting on the next model release
- Matches lived experience better than either "10x hype" or "AI is useless" extremes
- Encourages the review discipline that prevents AI-generated security issues
Cons:
- Harder to sell in a pitch deck than "10x your engineering team"
- Requires more upfront process design than just installing a plugin and hoping
- The staircase hypothesis is a personal hypothesis from one engineer's blog post, not a peer-reviewed study — treat it as a strong opinion, not settled science
- Multipliers genuinely vary a lot by stack, task, and codebase familiarity, so no single number is universally true
Frequently Asked Questions
Is 2x still worth it?
For most freelancers and teams, yes. A consistent, sustainable 2x compounds over months in a way a fragile, unreplicated 10x claim never will.
Why do so many people report 10x, then?
Sampling bias plays a big role — people who get large gains are more likely to post about it than people who saw nothing. Task selection matters too: someone doing greenfield prototyping in an unfamiliar stack will report very different numbers than someone maintaining a five-year-old repository they know by heart.
Does this mean junior developers should skip learning fundamentals?
The opposite. The METR-style finding that deep repo knowledge changes your AI multiplier implies fundamentals matter more, not less — you need to be able to judge AI output, and that judgment doesn't come from the AI.
Will next-generation models change this?
Maybe, but the staircase hypothesis is a useful caution against assuming so by default. Plan your workflow and your pricing around today's reliable capability, and treat any future jump as a bonus rather than a certainty.
How do I measure my own multiplier honestly?
Track hours per task category for a few weeks, with and without AI assistance where practical. It's tedious, but it's the only way to get a number you can actually trust instead of borrowing someone else's Twitter thread.
Where This Goes Next
Expect the industry conversation to keep splitting along this exact line: vendors and some early adopters pushing bigger multiplier claims, while a growing, more measured group of practitioners — including a lot of freelancers who bill by the hour and can't afford to be wrong about this — converge on something closer to 2x as the honest, sustainable number. The winners in this next stretch won't be the people with access to the smartest model. They'll be the people who build the tightest feedback loop around the models we already have.
Wrapping Up
I went into that Upwork conversation ready to defend a big number and came out with a more honest, more useful one instead. My rate didn't go down. If anything, being able to explain why 2x is real and repeatable — with actual logged hours instead of a vibe — made that conversation with the client easier, not harder.
If you've been quietly wondering whether your own AI-assisted workflow is actually paying off, or just feels like it is, track it for two weeks. The number might surprise you either way.
What's your real number been — closer to 2x, or are you seeing something different? Drop your numbers (rough estimates count) in the comments — I'm collecting freelancer data points for a follow-up post.
Top comments (0)