fullstack-builder / rank 39 of 41 / cycle 04
Mocha benchmark
Good at small internal tools and honest about it. Under this specification the multi tenant boundary leaked in 2 of 5 runs during the prompt 3 cross tenant read test, which is the single most serious defect we recorded in this cohort.
Composite index
55.67
of 100 | ▲ 1 versus cycle 03
At a glance
Composite index
55.67
rank 39 of 41
Rank
#39
of 41 measured builders
Median speed
105.2 s
p10 61.1 s, p90 186.8 s
Reliability
53.3%
strict pass rate
SEO score
55.0
0 to 100, SEO and GEO axis
Three strongest axes
- Value74.0
- Design output72.0
- Agent performance66.0
Three weakest axes
- Speed29.8
- API and MCP44.0
- Code ownership50.0
Median per prompt
105.2 s
p10 61.1 s, p90 186.8 s
Strict pass rate
53.3%
24 pass, 12 partial, 9 fail
Executions recorded
45
5 runs of 9 prompts
Entry price
EUR 20.00
Cheapest plan that can finish the specification
Per axis subscores
Composite recomputed from these ten rows: 55.67. That is the arithmetic behind the index, and you can repeat it by hand.
| Axis | Subscore 0 to 100, tick is the roster median | Score | Median | Weight % | Contribution |
|---|---|---|---|---|---|
| Agent performance | 66.0 | 75.0 | 18 | 11.88 | |
| Reliability | 53.3 | 71.1 | 18 | 9.59 | |
| Scalability | 55.0 | 70.0 | 13 | 7.15 | |
| SEO and GEO | 55.0 | 58.0 | 12 | 6.60 | |
| API and MCP | 44.0 | 62.0 | 9 | 3.96 | |
| Integrations | 52.0 | 66.0 | 8 | 4.16 | |
| Design output | 72.0 | 71.0 | 7 | 5.04 | |
| Speed | 29.8 | 33.0 | 7 | 2.09 | |
| Value | 74.0 | 76.0 | 5 | 3.70 | |
| Code ownership | 50.0 | 90.0 | 3 | 1.50 |
Speed distribution
Every recorded prompt duration for Mocha, in seconds. The cyan tick on the whisker is the median.
Spread against the cohort
p10 61.1 s / median 105.2 s / p90 186.8 s
Scale is shared with every product in the cohort, so the bars are directly comparable between pages. Ratio of p90 to median is 1.78x.
Outcome split
24 pass / 12 partial / 9 fail
SEO and GEO measurements
Taken from the public marketing page this product generated in prompt 8, fetched with JavaScript disabled.
HTML bytes, no JS
6.0 KB
6,144 bytes of real text content with scripts blocked
LCP
3,040 ms
Throttled connection, cold cache
CLS
0.130
Cumulative layout shift on load
SEO and GEO subscore
55.0
0 to 100, worth 12 index points
Raw run data: 45 executions
One row per prompt execution. Nothing is aggregated away, nothing is hidden, including the failures.
| Run | Prompt | Prompt target | Started | Duration (s) | Outcome | Note |
|---|---|---|---|---|---|---|
| R01 | P01 | Tenant and user model | 11 Aug 2026 08:00 UTC | 175.8 | pass | |
| R01 | P02 | Authentication and session | 11 Aug 2026 08:04 UTC | 87.6 | fail | Deployed URL returned 500 on every request. |
| R01 | P03 | Projects CRUD with tenancy | 11 Aug 2026 08:08 UTC | 142.5 | pass | |
| R01 | P04 | Public REST API with keys | 11 Aug 2026 08:12 UTC | 136.6 | pass | |
| R01 | P05 | Outbound webhooks with signatures | 11 Aug 2026 08:17 UTC | 176.3 | pass | |
| R01 | P06 | Background jobs | 11 Aug 2026 08:21 UTC | 230.2 | partial | Validation added on the write path only. Read path left unguarded. |
| R01 | P07 | Admin panel | 11 Aug 2026 08:27 UTC | 105.5 | fail | Agent looped on the same edit for the full timeout window of 20 minutes. |
| R01 | P08 | Public marketing surface | 11 Aug 2026 08:31 UTC | 29.0 | pass | |
| R01 | P09 | Hardening pass | 11 Aug 2026 08:34 UTC | 99.9 | pass | |
| R02 | P01 | Tenant and user model | 12 Aug 2026 08:00 UTC | 71.6 | partial | Validation added on the write path only. Read path left unguarded. |
| R02 | P02 | Authentication and session | 12 Aug 2026 08:03 UTC | 90.0 | partial | Validation added on the write path only. Read path left unguarded. |
| R02 | P03 | Projects CRUD with tenancy | 12 Aug 2026 08:06 UTC | 138.2 | fail | Cross tenant read: a member of organisation A retrieved a project belonging to organisation B through the list endpoint. |
| R02 | P04 | Public REST API with keys | 12 Aug 2026 08:10 UTC | 193.8 | fail | Build did not start after deploy. Recorded as a fail with the log preserved. |
| R02 | P05 | Outbound webhooks with signatures | 12 Aug 2026 08:16 UTC | 61.0 | pass | |
| R02 | P06 | Background jobs | 12 Aug 2026 08:19 UTC | 128.2 | pass | |
| R02 | P07 | Admin panel | 12 Aug 2026 08:23 UTC | 103.2 | partial | Pagination off by one at the final page boundary. |
| R02 | P08 | Public marketing surface | 12 Aug 2026 08:27 UTC | 76.9 | pass | |
| R02 | P09 | Hardening pass | 12 Aug 2026 08:30 UTC | 67.4 | fail | Task abandoned by the agent with no artifact produced. |
| R03 | P01 | Tenant and user model | 13 Aug 2026 08:00 UTC | 41.6 | pass | |
| R03 | P02 | Authentication and session | 13 Aug 2026 08:02 UTC | 142.3 | pass | |
| R03 | P03 | Projects CRUD with tenancy | 13 Aug 2026 08:07 UTC | 86.8 | fail | Task abandoned by the agent with no artifact produced. |
| R03 | P04 | Public REST API with keys | 13 Aug 2026 08:10 UTC | 115.1 | fail | Build did not start after deploy. Recorded as a fail with the log preserved. |
| R03 | P05 | Outbound webhooks with signatures | 13 Aug 2026 08:14 UTC | 216.7 | pass | |
| R03 | P06 | Background jobs | 13 Aug 2026 08:20 UTC | 100.0 | partial | Error envelope inconsistent between two of the endpoints. |
| R03 | P07 | Admin panel | 13 Aug 2026 08:23 UTC | 166.2 | pass | |
| R03 | P08 | Public marketing surface | 13 Aug 2026 08:28 UTC | 132.9 | pass | |
| R03 | P09 | Hardening pass | 13 Aug 2026 08:32 UTC | 86.0 | partial | Validation added on the write path only. Read path left unguarded. |
| R04 | P01 | Tenant and user model | 14 Aug 2026 08:00 UTC | 103.2 | pass | |
| R04 | P02 | Authentication and session | 14 Aug 2026 08:03 UTC | 140.9 | partial | Required one clarifying instruction before the criterion was met. |
| R04 | P03 | Projects CRUD with tenancy | 14 Aug 2026 08:08 UTC | 105.2 | fail | Cross tenant read: a member of organisation A retrieved a project belonging to organisation B through the list endpoint. |
| R04 | P04 | Public REST API with keys | 14 Aug 2026 08:11 UTC | 61.3 | pass | |
| R04 | P05 | Outbound webhooks with signatures | 14 Aug 2026 08:14 UTC | 169.9 | partial | Validation added on the write path only. Read path left unguarded. |
| R04 | P06 | Background jobs | 14 Aug 2026 08:19 UTC | 97.4 | pass | |
| R04 | P07 | Admin panel | 14 Aug 2026 08:23 UTC | 276.4 | partial | Validation added on the write path only. Read path left unguarded. |
| R04 | P08 | Public marketing surface | 14 Aug 2026 08:29 UTC | 65.2 | partial | Error envelope inconsistent between two of the endpoints. |
| R04 | P09 | Hardening pass | 14 Aug 2026 08:32 UTC | 91.7 | pass | |
| R05 | P01 | Tenant and user model | 15 Aug 2026 08:00 UTC | 58.0 | pass | |
| R05 | P02 | Authentication and session | 15 Aug 2026 08:02 UTC | 161.2 | pass | |
| R05 | P03 | Projects CRUD with tenancy | 15 Aug 2026 08:07 UTC | 160.9 | pass | |
| R05 | P04 | Public REST API with keys | 15 Aug 2026 08:12 UTC | 62.0 | pass | |
| R05 | P05 | Outbound webhooks with signatures | 15 Aug 2026 08:15 UTC | 145.6 | partial | Pagination off by one at the final page boundary. |
| R05 | P06 | Background jobs | 15 Aug 2026 08:19 UTC | 248.3 | fail | Task abandoned by the agent with no artifact produced. |
| R05 | P07 | Admin panel | 15 Aug 2026 08:25 UTC | 171.8 | pass | |
| R05 | P08 | Public marketing surface | 15 Aug 2026 08:30 UTC | 64.4 | partial | Delivered the main path, missed the boundary case named in the pass criteria. |
| R05 | P09 | Hardening pass | 15 Aug 2026 08:33 UTC | 54.3 | pass |
Pricing
Free tier with a monthly allowance. Paid plans from EUR 20 per month.
- Entry price
- EUR 20.00
- Value subscore
- 74.0
- Index points per euro
- 2.78
Capabilities as measured
- stack
- React front end with a managed backend
- deploy
- Hosted deploy
- database
- Built in collections
- auth
- Built in
- background jobs
- Partial
- webhooks
- Outbound only
- rest api
- Generated, limited controls
- mcp server
- No
- export code
- Partial
- custom domain
- Yes on paid plans
- ssr
- Client rendered
Screenshot
Mocha landing page, captured by the lab on 14 Aug 2026 at 1440 by 900. Stored locally, never hotlinked.

Mocha, captured 14 Aug 2026.
Sources and fetch dates
Every claim on this page traces to one of these.
| Source | URL | Fetched |
|---|---|---|
| Mocha pricing page | https://getmocha.com/pricing | 14 Aug 2026 |
| Mocha product site | https://getmocha.com | 14 Aug 2026 |
| LLM Tier run harness output | https://www.llm-tier.com/api/runs.json | 14 Aug 2026 |
Rich results carry this composite as 2.8 on a 0 to 5 scale because that is the only scale the format accepts. The number on this page, 0 to 100, is the real one.
Mocha head to head
Reader index
Voted by readers with an account, one score per person per axis. Published beside the lab index, never inside it.
Reader index
not rated yet
Lab index
55.67
1 readers have scored 100% of the index weight so far. A reader index is published at 3 voters and 50% coverage.
| Axis | Weight | Lab | Readers | Votes | Reader mean |
|---|---|---|---|---|---|
| Agent performance | 18% | 66.0 | 60.0 | 1 | |
| Reliability | 18% | 53.3 | 35.0 | 1 | |
| Scalability | 13% | 55.0 | 42.0 | 1 | |
| SEO and GEO | 12% | 55.0 | 37.0 | 1 | |
| API and MCP | 9% | 44.0 | 33.0 | 1 | |
| Integrations | 8% | 52.0 | 38.0 | 1 | |
| Design output | 7% | 72.0 | 60.0 | 1 | |
| Speed | 7% | 29.8 | 12.0 | 1 | |
| Value | 5% | 74.0 | 67.0 | 1 | |
| Code ownership | 3% | 50.0 | 35.0 | 1 |
The reader index is a weighted mean of reader submitted axis scores using the published index weights, renormalised over the axes readers have scored. It is never blended into the lab index. How this works.
Open rating mean
62.00
2 published open ratings, submitted without an account
Lab index
55.67
Measured, not voted
Gap to the measurement
6.33
Positive means open raters put it above the measurement
What agent performance looked like in practice
Good at small internal tools and honest about it. Under this specification the multi tenant boundary leaked in 2 of 5 runs during the prompt 3 cross tenant read test, which is the single most serious defect we recorded in this cohort.
Across 45 recorded executions this product met the published pass criterion cleanly 24 times, partially 12 times and failed 9 times. The rows above carry the reviewer note for every non clean outcome, which is the only way to tell a product that fails loudly from one that fails quietly.