# Visual context token cost benchmark: 2026 edition

> A 30-second screen review frame-dumped at 1 frame per second costs 80,730 input tokens on Claude 4.7 and later at 1920x1080, 61,200 on OpenAI GPT-5.6 and 33,600 on Gemini 3, all calculated from published rules. A complete Walkie bundle covering the same review measures about 3,500 tokens on Claude.

Author: Roberto Ercole · Published: 2026-08-16 · Updated: 2026-08-16 · Canonical URL: https://usewalkie.com/research/visual-context-token-cost/

---

## Key findings

- On Claude 4.7 and later, on the **high-resolution tier**, a 1920×1080 screenshot costs **2,691 input tokens** — ⌈1920/28⌉ × ⌈1080/28⌉ = 69 × 39, under the tier's 4,784-token cap (calculated from [Anthropic's vision documentation](https://platform.claude.com/docs/en/build-with-claude/vision), verified 2026-08-16).
- A 30-second review **frame-dumped at 1 frame per second** at that resolution costs **80,730 tokens** on the Claude high-resolution tier — 30 × 2,691, with the 4,784-token cap never binding (calculated). This is the benchmark's Baseline A.
- Frame-dumping full-Retina frames that each hit the cap costs **143,520 tokens** for the same 30 seconds — 30 × 4,784 (calculated). That is Baseline B, the upper bound.
- A complete **Walkie bundle** covering the same review measures about **3,500 tokens** (measured, typical, Claude tokenizer) — **23× less** than the 80,730-token frame dump, a 96% reduction (calculated).
- At **$10 per million input tokens**, that frame dump costs **$0.81** and the bundle **$0.04** (calculated).
- OpenAI's current flagship, **GPT-5.6 Sol**, applies **no patch budget** at its default detail level: a 1920×1080 screenshot costs **2,040 tokens** and a 3840×2160 screenshot costs **8,160** — more than Claude's capped 4,784 (calculated from [OpenAI's images and vision guide](https://developers.openai.com/api/docs/guides/images-vision), verified 2026-08-16).
- **Gemini 3** charges a flat **1,120 tokens per image** at its default media resolution, independent of pixel dimensions: a 1000×1000 screenshot and a 3840×2160 screenshot cost exactly the same (calculated from [Google's media resolution documentation](https://ai.google.dev/gemini-api/docs/media-resolution), verified 2026-08-16).
- Four screenshots to cover one long page cost **10,764 tokens** on the Claude high-resolution tier, **8,160** on GPT-5.6 and **4,480** on Gemini 3 — with no narration attached to any of them (calculated).

## The benchmark table

Every cell below is input tokens for one request, calculated from the vendor rule quoted later on this page. Anthropic's column is the high-resolution tier used by Claude 4.7 and later, where a single image is capped at 4,784 tokens. OpenAI's column is the GPT-5.6 family at its default detail level, which has no cap. Google's column is Gemini 3 at its default media resolution, which is flat.

| Resolution | Modality | Claude high-res tier | OpenAI GPT-5.6 | Gemini 3 |
|---|---|---|---|---|
| 1000×1000 | One screenshot | 1,296 | 1,024 | 1,120 |
| 1000×1000 | Four screenshots | 5,184 | 4,096 | 4,480 |
| 1000×1000 | 30-s frame dump at 1 fps | 38,880 | 30,720 | 33,600 |
| 1288×811 | One screenshot | 1,334 | 1,066 | 1,120 |
| 1288×811 | Four screenshots | 5,336 | 4,264 | 4,480 |
| 1288×811 | 30-s frame dump at 1 fps | 40,020 | 31,980 | 33,600 |
| 1920×1080 | One screenshot | 2,691 | 2,040 | 1,120 |
| 1920×1080 | Four screenshots | 10,764 | 8,160 | 4,480 |
| 1920×1080 | 30-s frame dump at 1 fps | 80,730 | 61,200 | 33,600 |
| 2560×1440 | One screenshot | 4,784 (at cap) | 3,600 | 1,120 |
| 2560×1440 | Four screenshots | 19,136 | 14,400 | 4,480 |
| 2560×1440 | 30-s frame dump at 1 fps | 143,520 | 108,000 | 33,600 |
| 3840×2160 | One screenshot | 4,784 (capped) | 8,160 | 1,120 |
| 3840×2160 | Four screenshots | 19,136 | 32,640 | 4,480 |
| 3840×2160 | 30-s frame dump at 1 fps | 143,520 | 244,800 | 33,600 |
| any | One Walkie bundle | ≈3,500 (measured) | — | — |

The Walkie bundle row is a measured figure counted with the Claude tokenizer, not a calculated one. It is deliberately blank for the other two vendors: a bundle is text plus a small number of intent-selected frames, and text tokenizers differ between vendors by a small factor, so publishing a per-vendor bundle number would be invention rather than measurement. The 1288×811 row is the benchmark's internal check — a real screen capture measured at 1,334 tokens, which is exactly what ⌈1288/28⌉ × ⌈811/28⌉ = 46 × 29 predicts. That measurement first appeared in [how many tokens a screenshot costs your AI coding agent](/blog/screenshot-token-cost-ai-coding-agent/).

### The same rows in dollars, at $10 per million input tokens

Dollars are shown at a single flat rate of **$10 per million input tokens** so the three vendors are comparable. This is a rate, not a model price; each vendor charges its own published rate, and those rates move.

| Modality at 1920×1080 | Claude high-res tier | OpenAI GPT-5.6 | Gemini 3 |
|---|---|---|---|
| One screenshot | $0.027 | $0.020 | $0.011 |
| Four screenshots | $0.108 | $0.082 | $0.045 |
| 30-s frame dump at 1 fps | $0.81 | $0.61 | $0.34 |
| One Walkie bundle | $0.04 | — | — |

All figures in this section are calculated at $10 per million input tokens. To run the arithmetic on your own screen size, use the [screenshot token cost calculator](/calculator/).

## How does Claude count image tokens?

Anthropic prices an image in fixed patches, not pixels. Its vision documentation states: "Claude views images in patches instead of pixels. Each patch is a 28×28-pixel block of the image, referred to as a visual token. An image, therefore, costs ⌈width / 28⌉ × ⌈height / 28⌉ visual tokens" ([Anthropic, vision documentation](https://platform.claude.com/docs/en/build-with-claude/vision), verified 2026-08-16).

Two tiers apply. The high-resolution tier covers "Claude 4.7 and later models", allows a 2,576-pixel long edge and caps an image at **4,784 visual tokens**. The standard tier covers "all other models", allows a 1,568-pixel long edge and caps at 1,568 tokens. Images above either limit are downscaled before processing.

**Worked example, 1920×1080 on the high-resolution tier.** ⌈1920/28⌉ = 69. ⌈1080/28⌉ = 39. 69 × 39 = **2,691 tokens** (calculated), which is under the 4,784-token cap, so no downscaling and no capping occurs. Anthropic's own example table publishes the same 2,691 for a 1920×1080 image on the high-resolution tier, which makes this row independently checkable rather than merely plausible.

The cap is what flattens the top of the Claude column. At 2560×1440 the arithmetic lands on 92 × 52 = 4,784 — exactly the cap, with the long edge still inside 2,576 px. At 3840×2160 the long edge exceeds 2,576 px, so Anthropic downscales to 2576×1449 and the same 92 × 52 = 4,784 applies. Anthropic's documentation publishes that downsized 2576×1449 figure directly. On the standard tier the same 1920×1080 screenshot is downscaled to 1456×819 and costs 1,560 tokens, also published in that table. The full derivation is in [Claude's image-token formula, explained](/blog/claude-image-token-calculation-explained/).

## How does OpenAI count image tokens?

OpenAI tokenizes images for its current models by patch coverage: "Some models tokenize images by covering them with 32px x 32px patches", with `original_patch_count = ceil(width/32)×ceil(height/32)` ([OpenAI, images and vision guide](https://developers.openai.com/api/docs/guides/images-vision), verified 2026-08-16). OpenAI's models page names **GPT-5.6 Sol** as "our flagship model for complex reasoning and coding" ([OpenAI, models](https://developers.openai.com/api/docs/models), verified 2026-08-16), so GPT-5.6 is the rule this benchmark uses.

The important clause for screenshots is the exemption. For GPT-5.6, the guide says: "For GPT-5.6 models with `detail` set to `original` or `auto`, the service uses the original patch count without resizing the image to a patch budget or pixel-dimension limit. This means large images can use more input tokens than they did with earlier models." The same guide states that on GPT-5.6 models `auto` and the omitted default are equivalent to `original`, so the default path has no cap.

**Worked example, 1920×1080 on GPT-5.6 at default detail.** ⌈1920/32⌉ = 60. ⌈1080/32⌉ = 34. 60 × 34 = **2,040 tokens** (calculated). At 3840×2160 the same rule gives 120 × 68 = **8,160 tokens** — because nothing caps it, a 4K screenshot costs OpenAI's flagship 70% more than the same screenshot costs Claude's capped high-resolution tier. OpenAI's multiplier table lists multipliers only for the mini, nano and o4-mini variants; no multiplier is published for the full-size GPT-5.6 models, so the patch count is the published token count for them.

OpenAI publishes a second, older rule — tile-based tokenization for GPT-4o, GPT-4.1, GPT-5 and the o-series — which produces very different numbers. That rule and a worked example are on the [methodology page](/research/visual-context-token-cost/methodology/).

## How does Gemini count image tokens?

Google prices an image for its current family by a resolution setting rather than by pixel count. Its media resolution documentation states that "The media_resolution parameter determines the maximum number of tokens allocated per input image or video frame", and its Gemini 3 table gives an image **1,120 tokens** at the default `unspecified` setting, 280 at `low`, 560 at `medium`, 1,120 at `high` and 2,240 at `ultra_high` ([Google, media resolution](https://ai.google.dev/gemini-api/docs/media-resolution), verified 2026-08-16).

**Worked example, any of this benchmark's five resolutions on Gemini 3 at default.** The token count is **1,120** (calculated) for 1000×1000, for 1920×1080 and for 3840×2160 alike, because the setting caps tokens per image rather than measuring the image. This is the single biggest structural difference in the table: a 4K screenshot costs a Gemini 3 model the same as a 1-megapixel one.

Google publishes a second rule on a different page. Its image understanding guide states "258 tokens if both dimensions <= 384 pixels. Larger images are tiled into 768x768 pixel tiles, each costing 258 tokens", with a crop unit of "floor(min(width, height) / 1.5)" ([Google, image understanding](https://ai.google.dev/gemini-api/docs/image-understanding), verified 2026-08-16). Applied to this benchmark's resolutions that rule returns 1,548 tokens for every 16:9 size and 1,032 for 1000×1000. The media resolution page says the default token count "varies significantly between Gemini 3 and earlier Gemini models", so this benchmark reports the Gemini 3 figures in the main table and the tile-rule figures on the methodology page. Both are computed there.

## Why does a 30-second recording cost 30 screenshots?

Because no coding agent reads video. A screen recording has to be converted into still frames before a model can see it, and every extracted frame is priced as a full image. At 1 frame per second — a low sampling rate that already under-samples a fast scroll — a 30-second review becomes 30 images.

Multiply the single-screenshot row by 30 and the result is the frame-dump row: **80,730 tokens** on the Claude high-resolution tier at 1920×1080, 61,200 on GPT-5.6, 33,600 on Gemini 3 (all calculated). Raising the frame rate raises the cost linearly; lowering it risks missing the moment the bug appeared. There is no sampling rate that makes blind frame-dumping cheap, which is the argument made in full in [why your agent cannot watch a screen recording](/blog/why-ai-cant-watch-screen-recordings/).

Baseline B is the same recording captured at full Retina resolution, where each frame hits the 4,784-token high-resolution cap: 30 × 4,784 = **143,520 tokens** (calculated). This benchmark leads with Baseline A, the 1920×1080 case, because it is the one an ordinary screenshot workflow actually produces; Baseline B is the honest upper bound, not the headline.

## What this means inside a Claude Code session

A 200k-token context window absorbs an 80,730-token frame dump as about **40% of the window** (calculated) — spent before the agent has read a line of the explanation. Anthropic's context window documentation is explicit that this counts: "Everything in the request counts toward the context window: the system prompt, every message in `messages` (including tool results, images, and documents), and your tool definitions", and "Image tokens are included in these budgets" ([Anthropic, context windows](https://platform.claude.com/docs/en/build-with-claude/context-windows), verified 2026-08-16).

The cost is also not paid once. Anthropic's vision documentation states that "In multi-turn conversations and agentic workflows, each request resends the full conversation history. If images are base64-encoded, the full image bytes are included in the payload on every turn, which can significantly increase request size and latency as the conversation grows." An image pasted at turn one is still in the input at turn ten.

Two honest qualifications. First, 200k is not universal: the same Anthropic page states that several current models have a 1M-token context window and that "Other Claude models, including Claude Sonnet 4.5, have a 200k-token context window" — at 1M, the same 80,730 tokens is about 8% of the window. Second, a 3,500-token bundle compounds across turns too; it is 23× smaller, not free.

## Methodology summary

<aside class="method">

- **Who ran it.** Roberto Ercole designed, computed and published this benchmark. No third party sponsored it.
- **Measured (2 figures).** A real 1288×811 screen capture at 1,334 tokens and a real 15-second narration transcript at 65 tokens, both counted with the Claude tokenizer. A typical complete bundle measures about 3,500 tokens.
- **Calculated (every other figure).** Computed from the vendor rule quoted on this page, on the date shown, with the arithmetic written out.
- **Frozen core.** Five resolutions, four modalities, three vendors — held constant across editions so future numbers stay comparable.
- **Vendors.** Anthropic Claude high-resolution tier (Claude 4.7 and later), OpenAI GPT-5.6 at default detail, Google Gemini 3 at default media resolution.
- **Rates.** Dollars are shown only at $10 per million input tokens, for cross-vendor comparability. No vendor list prices are reproduced here.
- **Known limits.** Tokenizers differ between vendors, vendor rules change between editions, the frame dump assumes 1 fps with no downscaling, and Google publishes two image rules on two pages.

[Read the full methodology and data page →](/research/visual-context-token-cost/methodology/)

</aside>

## Cite this page

<aside class="cite">

Ercole, R. (2026). Visual context token cost benchmark: 2026 edition. Walkie Research. https://usewalkie.com/research/visual-context-token-cost/

</aside>

## Data

The complete table is published as a machine-readable file: [visual-context-token-cost-2026.csv](/research/data/visual-context-token-cost-2026.csv), 48 rows, one per vendor × resolution × modality plus the three measured Walkie rows.

**Column dictionary:** `vendor` (Anthropic Claude, OpenAI, Google Gemini, Walkie) · `tier_or_rule` (the tier or rule the row was computed under, with the formula) · `resolution_w`, `resolution_h` (source pixels, blank where not applicable) · `modality` (one screenshot, four screenshots, 30-second recording frame-dumped at 1 fps, walkie bundle, narration transcript) · `frames` (images in the request) · `tokens` (input tokens) · `basis` (measured or calculated) · `formula_or_source_url` (the vendor document the rule was read from) · `verified_date` (when that document was fetched). Cost is deliberately not a column, because it depends on a rate rather than on the data.

The dataset is named **Walkie Visual Context Token Cost Benchmark 2026**; its temporal coverage is 2026-08, and it is free to access.

<aside class="licence">

This research is published under CC BY 4.0. You may reproduce these figures and charts, including commercially, provided you credit "Walkie Visual Context Token Cost Benchmark 2026" and link to https://usewalkie.com/research/visual-context-token-cost/. Aggregate tables: CSV download on this page. Questions and data requests: Roberto Ercole, support@usewalkie.com.

</aside>

---

Read the HTML version: https://usewalkie.com/research/visual-context-token-cost/
