GenUI Model Benchmarks
These benchmarks measure how fast each model responds and how often it produces structural hallucinations. What they can't measure is whether the interface a model builds is actually good for the person using it.
| Model | Avg round-trip | Avg per pass | Structural hallucinations | Avg output tokens | Turns × iters |
|---|---|---|---|---|---|
| gemini-3.5-flash-lite-no-thinking | 1,656 ms | 4,968 ms | 0.0% | 453.0 | 3 × 5 |
| gemini-3.5-flash-lite | 1,716 ms | 5,147 ms | 0.0% | 476.0 | 3 × 5 |
| gemini-3.1-flash-lite-no-thinking | 1,866 ms | 5,599 ms | 0.0% | 482.0 | 3 × 5 |
| gemini-3.1-flash-lite | 1,915 ms | 5,744 ms | 0.0% | 479.6 | 3 × 5 |
| gemini-3.6-flash-no-thinking | 2,908 ms | 8,724 ms | 0.0% | 525.4 | 3 × 5 |
| gpt-5.4-mini | 3,089 ms | 9,268 ms | 0.0% | 367.7 | 3 × 5 |
| gemini-2.5-flash-no-thinking | 3,267 ms | 9,801 ms | 0.0% | 584.9 | 3 × 5 |
| gpt-5.4-mini-no-thinking | 3,370 ms | 10,111 ms | 0.0% | 472.1 | 3 × 5 |
| gemini-3-flash-preview-no-thinking | 3,492 ms | 10,477 ms | 0.0% | 565.1 | 3 × 5 |
| gpt-5.4 | 3,678 ms | 11,033 ms | 0.0% | 489.7 | 3 × 5 |
| gpt-5.6-luna | 3,721 ms | 11,163 ms | 0.0% | 585.2 | 3 × 5 |
| gpt-5.6-luna-no-thinking | 3,835 ms | 11,506 ms | 0.0% | 584.9 | 3 × 5 |
| kimi-k2.7-code-highspeed | 4,090 ms | 12,269 ms | 0.0% | 610.4 | 3 × 5 |
| gemini-2.5-flash | 4,209 ms | 12,628 ms | 40.0% | 557.0 | 3 × 5 |
| gpt-5.4-no-thinking | 4,407 ms | 13,222 ms | 0.0% | 541.7 | 3 × 5 |
| gpt-5.6-terra-no-thinking | 4,447 ms | 13,341 ms | 0.0% | 534.8 | 3 × 5 |
| gpt-5.6-terra | 4,499 ms | 13,497 ms | 0.0% | 617.7 | 3 × 5 |
| gemini-3.5-flash-no-thinking | 4,526 ms | 13,578 ms | 0.0% | 584.5 | 3 × 5 |
| gemini-3.6-flash | 4,979 ms | 14,938 ms | 0.0% | 534.3 | 3 × 5 |
| deepseek-v4-flash-no-thinking | 5,261 ms | 15,783 ms | 0.0% | 556.7 | 3 × 5 |
| claude-haiku-4-5 | 5,279 ms | 15,837 ms | 0.0% | 518.5 | 3 × 5 |
| claude-sonnet-5 | 5,665 ms | 16,995 ms | 0.0% | 561.9 | 3 × 5 |
| deepseek-v4-flash | 5,971 ms | 17,913 ms | 0.0% | 612.1 | 3 × 5 |
| gemini-3-flash-preview | 6,322 ms | 18,967 ms | 0.0% | 568.3 | 3 × 5 |
| gpt-5.5-no-thinking | 6,977 ms | 20,931 ms | 0.0% | 530.8 | 3 × 5 |
| gemini-3.5-flash | 7,788 ms | 23,365 ms | 0.0% | 538.0 | 3 × 5 |
| claude-opus-4-8 | 7,818 ms | 23,453 ms | 0.0% | 616.3 | 3 × 5 |
| gpt-5.5 | 7,976 ms | 23,929 ms | 0.0% | 608.5 | 3 × 5 |
| claude-sonnet-4-6 | 8,193 ms | 24,578 ms | 0.0% | 553.4 | 3 × 5 |
| mercury-2 | 8,375 ms | 25,124 ms | 0.0% | 545.2 | 3 × 5 |
| kimi-k2.7-code | 17,056 ms | 51,167 ms | 0.0% | 666.5 | 3 × 5 |
Column glossary (hover any header for a tooltip)
- Model — the model id. A -no-thinking row is the same model with thinking disabled. Rows are sorted fastest-first.
- Avg round-trip — mean wall-clock time per turn, from request sent to stream complete, over successful turns. Comparable across providers; this is the headline metric.
- Avg per pass — mean time to complete one full pass (all turns in an iteration summed). Comparable across providers.
- Structural hallucinations — share of turns with a structural hallucination — a hallucinated catalog item or prop, or output that didn't conform to the catalog schemas or the A2UI spec — plus turns that errored outright or produced no renderable surface. Hover the value for the breakdown.
- Avg output tokens — mean completion tokens per turn (excludes the prompt). Includes reasoning tokens for thinking models, so it drops on -no-thinking rows.
- Turns × iters — turns per iteration × iteration count behind each average.
Token stats are shown only when the provider reports them.