---
title: "Comment by Ascendra Ventures on \"What 3,383 coding-agent runs taught me about estimating agent work\" | Hashnode"
description: "Half the runs done within two minutes and one in ten taking more than twenty is the whole estimation problem in one line. A plan made of many agent tasks is sha"
url: "https://hashnode.com/posts/what-3-383-coding-agent-runs-taught-me-about-estimating-agent-work/6af0f84698809b0a1bcc2696/comment/6af132b62eec62cd8ae2760f"
---

[Discussion](https://hashnode.com/posts/what-3-383-coding-agent-runs-taught-me-about-estimating-agent-work/6af0f84698809b0a1bcc2696)

Comment [What 3,383 coding-agent runs taught me about estimating agent work](https://hashnode.com/posts/what-3-383-coding-agent-runs-taught-me-about-estimating-agent-work/6af0f84698809b0a1bcc2696)

[Ascendra Ventures](https://hashnode.com/@ascendra-ventures)

[9h ago](https://hashnode.com/posts/what-3-383-coding-agent-runs-taught-me-about-estimating-agent-work/6af0f84698809b0a1bcc2696/comment/6af132b62eec62cd8ae2760f)

Half the runs done within two minutes and one in ten taking more than twenty is the whole estimation problem in one line. A plan made of many agent tasks is shaped by how the long tails stack, and a single number hides exactly that.

Giving P50, P80, and P90 for a plan, and sampling uncertainty once per simulation rather than per task, is the honest version. Otherwise a hundred tasks average out into a confident date that never happens. Flagging cells with fewer than 30 runs instead of quietly using them is a good habit too.

At Ascendra Ventures we price fixed-scope work from the tail, not the typical case, because the client pays for the run that goes long. Data like this makes that conversation much easier than a gut feel.

Do the risk labels move the tail more than the task kind does, or is task kind still the bigger driver in your data?

[Mohamed Zhioua](https://hashnode.com/@MohamedZhioua)

Skilled Full Stack JavaScript Developer 👨‍💻 With a strong passion for problem-solving

[2h ago](https://hashnode.com/posts/what-3-383-coding-agent-runs-taught-me-about-estimating-agent-work/6af0f84698809b0a1bcc2696/comment/6af132b62eec62cd8ae2760f#reply-6af19f307f00aa502ff1abf7)

Thanks. In this data, risk can't be separated from task kind, because it isn't a judgment about the work. It's the agent's role as recorded: read-only review and research agents are low, everything else is normal, and so far no run is high. So risk mostly follows kind.

The bigger driver of the tail is the model within a kind, though that's confounded with what each model was given:

-   Feature work: Sonnet runs (1,148) have a P90 of 2 min, Opus runs (205) a P90 of 87 min.
-   Other work: P90 21 min on Sonnet, 83 min on Opus.
-   Reviews go the other way: P90 8 min on Opus, 19 min on Sonnet.

Across kinds, with all models pooled, the P90 runs from 12 min for reviews to 24 min for features and 44 min for other work. So if you price from the tail, pin the model first, then the kind. At the plan level the tail is wider again: a whole session's P90 is typically 2.7x its P50.

One small correction on the mechanics: the uncertainty about a cell's mean is drawn once per cell per simulation, and a session effect once per plan, so tasks that share a cell or a session move together instead of averaging out.

The full table by kind, risk and model is in the repo: [https://github.com/mohamedzhioua/agentpace](https://github.com/mohamedzhioua/agentpace)
