A two-hour Claude Code session has no single price tag — cost depends on how many files get read, how many tool calls run, whether work gets retried, and whether the session involved pasting screenshots. The one line item with a fixed, calculable cost is visual review: a single 1080p screenshot runs 2,691 tokens on Claude 4.7 and later (on older, standard-tier models the same image is downscaled and costs 1,560), and checking one page four ways runs 10,764 tokens, often the largest single expense in the session.
Updated August 2026. Everything below is either directly measured (a real test screenshot, a real narrated bundle) or calculated from Anthropic's published image-token formula — never guessed. Where a figure isn't published anywhere, this article says so instead of inventing one; the token cost of an average file read or tool call isn't a number anyone publishes, because it depends entirely on what's actually being read.
- 2,691 tokens — one 1080p screenshot (Claude 4.7+)
- 10,764 tokens — four screenshots on one page
- 80,730 tokens — the same 30 seconds, frame-dumped
What are you actually paying for?
Every Claude Code session bills for tokens, not time: every file the agent reads, every tool call's output, every retry's redone context, and every image pasted into the conversation. Text and images are priced through the same mechanism, but images carry a fixed cost regardless of content, while text scales with what's actually there.
A Claude Code session bills for input tokens (what the agent reads — your prompts, files, tool outputs, images) and output tokens (what it writes back — code, explanations, thinking). Cost tracks tokens processed, not wall-clock time or message count. This session-level view is one piece of the wider picture of Claude Code token costs — what happens inside a single sitting, separate from how a week of sessions adds up against a plan.
Two things make a session's cost harder to estimate than it sounds. First, text tokens scale with actual content — a ten-line diff costs less than a thousand-line file — while image tokens are set by a formula based on pixel dimensions alone, so a screenshot of a mostly-blank page costs exactly as much as a screenshot of a dense dashboard at the same resolution. Second, a session's cost typically climbs on every turn, because conversation history — including redone attempts — gets resent as context on the next turn, not billed once.
What does a typical session consume?
A typical two-hour Claude Code session mixes four recurring cost drivers: source files the agent opens, output from bash, test, and lint tool calls, any retried work whose earlier attempt stays in context, and — on visual tasks — screenshots or recordings pasted in for review. Only the last category has a fixed, published cost.
Three of those four categories don't have a single number attached to them, because their cost is a function of the actual work — how big the files are, how verbose the tool output is, how many times something had to be redone. The fourth, visual review, is the one category Anthropic's published formula makes exact.
| Line item | What it is | Token cost | Basis |
|---|---|---|---|
| Files read, edited, searched | The agent opening and modifying your code | Scales with file size — no fixed figure exists | Not published |
| Tool call output | stdout/stderr read back after each bash, test, or lint run | Scales with command verbosity — no fixed figure exists | Not published |
| A retried attempt | The earlier attempt's context carries into the fix | Adds to, rather than replaces, the first attempt's cost | Not published |
| One 1080p screenshot | A single full-screen capture pasted for review | 2,691 tokens (Claude 4.7+) | Calculated (Anthropic's formula) |
| Four screenshots covering one page | Desktop, mobile, dark mode, an error state | 10,764 tokens | Calculated |
| A 30-second recording, frame-dumped at 1 fps | The same review, extracted frame by frame | 80,730 tokens | Calculated |
| A narrated review bundle of the same 30 seconds | Voice, pointer, and selected frames | ~3,500 tokens | Measured (typical) |
Anthropic's vision documentation publishes the exact formula behind the image rows: tokens = min(4784, ceil(width / 28) × ceil(height / 28)) (Source: Anthropic, 2026). The formula itself, worked through on a real 1920×1080 screen and a measured test screenshot, is broken down in how Claude calculates image tokens.
The first three rows genuinely don't have a fixed cost anyone can publish responsibly. A 20-line file and a 2,000-line file both count as "a file read," and their token costs differ by orders of magnitude — anything claiming a fixed per-file or per-tool-call number is guessing.
Which activities cost the most?
Visual review is the line item that's both large and exact, which makes it the easiest to point to as the dominant cost — not necessarily because it's always the biggest number in absolute terms, but because it's the only one you can calculate before it happens. Text-based costs are real but not fixed to any single figure.
Here's an illustrative scenario, not a measurement — built from the numbers above and the formula behind them. Suppose a two-hour session touches three separate features, and each time you check one, you paste four screenshots the way the table above describes: desktop, mobile, dark mode, an error state. That's 3 × 10,764 = 32,292 tokens spent on visual review alone, before the agent has read a single line of the code it's supposed to fix. Run the same three checks as narrated review bundles instead, and it's 3 × 3,500 = 10,500 tokens — under a third of the cost, because one bundle replaces four separate fixed charges with one.
That pattern holds regardless of screen size — see the published image-token formula worked out across a range of resolutions. Every additional screenshot is a new, full-price charge; a narrated pass covers more ground per token.
A few signals that visual review is the line dominating your session's cost:
- You're pasting more than one screenshot to describe a single bug — each one adds its own full charge on top of the last.
- You recorded a screen capture and are about to hand the raw file over — frame-dumping multiplies cost by every captured frame.
- You're returning to the same screen two or three times in one sitting — repeated checks mean repeated fixed charges, even if nothing else changed.
- Your session has almost no images in it at all — in that case the text side (files, tool calls, retries) is what's driving the total, even without one published number to point at.
How does a plan differ from API pricing?
A Claude subscription plan bundles usage into a flat fee with its own allowance; the API bills every token at a per-million rate. The same token math — 2,691 per screenshot on Claude 4.7 and later, 80,730 for a frame-dumped clip — applies either way: on the API it's a dollar figure, on a plan a share of your allowance.
This article doesn't quote specific plan prices, usage quotas, or reset windows, because those details vary by tier and change over time — check Anthropic's own pricing page for the current numbers rather than trusting a snapshot in an article.
What doesn't change is the token math. A 2,691-token screenshot (Claude 4.7+) is a 2,691-token screenshot whether you're metered per token on the API or drawing down a plan's allowance — only what that number turns into differs. At $10 per million input tokens as an illustrative rate (not a claim about any specific model's current list price, since rates vary by model), the 80,730-token frame dump comes out to $0.81 and the 3,500-token narrated bundle to $0.04. On a plan, that same pair of numbers is a slice of however much usage the plan grants before it resets — a real cost even without a dollar sign attached to it.
Why do costs spike on visual work?
Two mechanics compound on visual work: image tokens are fixed by pixel dimensions regardless of content, so a screenshot of one button costs the same as a screenshot of a full dashboard — and a screen recording turned into individual frames multiplies that fixed cost by every frame captured, instead of one narrated pass.
A 1080p screenshot costs 2,691 tokens on Claude 4.7 and later, whether it shows one button or an entire dashboard, because the formula only reads pixel dimensions, not content. Once a recording gets frame-dumped instead of narrated, every frame is billed as its own image — a 30-second clip captured at 1 frame per second becomes 30 separate images, landing at 80,730 tokens once each frame hits the model's per-image cap (Source: Anthropic, 2026).
That number is worth sitting with: 80,730 tokens is roughly 40% of a 200k context window gone before a single fix has been proposed — and that's before whatever else is already sitting in the conversation. The reduction from frame-dumping to a narrated bundle covering the same 30 seconds is 23× fewer tokens, a comparison this article can make because both sides come from a real, measured pipeline, not because Anthropic publishes anything about narrated reviews specifically.
Token cost and file size aren't the same measurement. A 15-second screen recording is about 6.7 MB on disk (measured) — small enough to email — while the same clip frame-dumped into individual images can still cost tens of thousands of tokens once every frame becomes a separate picture.
How do you see your own numbers?
Run /usage inside Claude Code for that session's own token breakdown by model, including cache reads and writes. Anthropic's Console usage dashboard shows the same thing after the fact, broken down by model and endpoint across every session. For anything about to be pasted, the token-counting API endpoint reports the exact cost before you send it.
/usage is the ground truth for a session you're inside right now; the Console dashboard is the ground truth for billing across all of them. Neither requires estimating from an article like this one. The token-counting endpoint is the one worth building a habit around specifically for images and pastes — it's the only way to check a screenshot's cost before it's already sitting in the conversation, rather than after.
That habit — check before you paste, not after — is the one worth building. A review bundle that publishes its own measured token count upfront, the way Walkie does at roughly 3,500 tokens per bundle, makes that check automatic, but the underlying discipline applies whether or not any particular tool is involved.
What to do next
You don't need to buy anything to act on this. Open your last long Claude Code session and check whether it included pasted screenshots or a recording — if it did, that's very likely the single biggest line item, and the fix costs nothing: narrate instead of paste, or crop before you send. If visual review isn't the issue, the files-and-retries side is what's driving cost, and cutting that down is a different problem — 11 ways to cut Claude Code token costs covers it, ranked by how much each tactic actually saves. Either way, the fastest way to stop guessing is to look at the real number the next time you're about to paste something in.