Inference output
How many LLM tokens TensorCash miners generate per model, and what the same generation would cost to buy from commercial providers on OpenRouter.
By model, last 24 hours
Each block records the model it was mined with. Each model is counted in its own tokens.
| Model | Blocks | Proof attempts/s | Tokens/s | Tokens, 24h | $ per 1M output tokens | Value, 24h |
|---|---|---|---|---|---|---|
| Qwen3-8Bno live OpenRouter provider, proxy price | 20 | 104.03 K | 26.63 M | 2.30 T | $0.15$0.08proxy: Ministral 8BLlama 3.1 8B | $345K$184K |
| Qwen3.8-27B~20× compute per token vs Qwen3-8B | 144 | 36.63 K | 9.38 M | 810.09 B | $2.30$0.50 | $1.86M$405K |
| Total | 164 | 36.01 M | 3.11 T | $2.21M$589K |
Window: 24 hours ending 25 Oct 2026, 00:19 UTC, tip block #32,875. A bigger model makes fewer tokens for the same work, but each of its tokens costs more compute and is priced higher.
Daily history
Full UTC days, last 30 days · Qwen3.8-27B from block #31,528. Value uses today's prices for every day, so the chart shows changes in output, not in prices. Hover a bar for exact numbers.
Tokens generated per day
Compute value per day
Compute value vs. what miners are paid
Last 24 hours. Block rewards are the only income miners get today; transaction fees are close to zero.
One RTX 5090 on Qwen3-8B: 18.6 proof attempts/s × 256 ≈ 4,762 tokens/s ≈ 411.40 M tokens a day. Bought on OpenRouter that is about $62$33 a day. The same card earns about 0.20 TSC ≈ $1.12 a day.
How it's calculated
Four steps, all from public data. Nothing is entered by hand; the page updates with every site refresh.
- One proof attempt = 256 generated tokens. A miner generates a 256-token continuation token by token (sampling is seeded by hashes, so it is real autoregressive generation, not just reading text), hashes the result and checks it against the target. A miss means a new attempt. Source: TensorCash verifiable-inference whitepaper (256-token proof window).
- Attempts per block = base difficulty. Difficulty is the expected number of attempts needed to find a block. We take the explorer's effective difficulty and divide it by the block's proof price multiplier: the multiplier is a penalty for suspicious sampling, not extra tokens. The explorer uses the same basis for its own inference figure.
tokens(block) = effective_difficulty ÷ price_multiplier × 256 - Sum per model. Every block carries its model. A bigger model has a proportionally lower difficulty, because each attempt costs more compute, so its tokens are counted as its own tokens and never converted.
tokens/s(model) = Σ tokens(blocks of that model, last 24h) ÷ 86,400 - Price of output tokens. From the OpenRouter API, USD per 1M output tokens, because the proof is generation. "Median" is the median over all providers currently serving the model; "cheapest" is the lowest of them.
value(model) = tokens(model) ÷ 1,000,000 × price per 1M output tokens
Worked example: the newest block of each model
Block #32,872 · Qwen3-8B
| Effective difficulty | 457,856,552 |
| ÷ proof price multiplier | 1.016 |
| = attempts (base difficulty) | 450,646,213 |
| × 256 tokens | 115.37 B tokens |
| × $0.15 per 1M (median) | $17,305 |
Block #32,875 · Qwen3.8-27B
| Effective difficulty | 22,759,974 |
| ÷ proof price multiplier | 1.000 |
| = attempts (base difficulty) | 22,759,974 |
| × 256 tokens | 5.83 B tokens |
| × $2.30 per 1M (median) | $13,401 |
Check any block yourself: the explorer API /v1/blocks returns difficulty, proof.price_multiplier and model.name for every block.
Automatic checks on every update
- Work cross-check: base work must stay between 85% and 100% of the effective work this site uses for the network work rate (now 97.0%). If not, dollar values are paused.
- Explorer basis: the explorer must still report its inference basis as
qt_base_difficulty_256_tokens_600_seconds(now:qt_base_difficulty_256_tokens_600_seconds). If the protocol changes the proof window, dollar values are paused until reviewed. - Hardware sanity check: total work is 863.1 K proof/s (Qwen3-8B-equivalent), about 46,402 RTX 5090s at 18.6 attempts/s each, i.e. ~4,762 tokens/s per card: a realistic batched decode speed for an 8B model.
- Prices: read directly from the OpenRouter API once a day, not from price aggregators. If OpenRouter is unreachable the last prices stay, with their date; after 7 days they are dropped.
Prices used
USD per 1M tokens, OpenRouter API, refreshed once a day (last: 25 Oct). Input prices are shown for reference only.
Qwen3-8B: proxy price
OpenRouter has a page for qwen/qwen3-8b but no provider serves it, so there is no live price. We use the closest small models that are served today:
| Model on OpenRouter | Input | Output | Used as |
|---|---|---|---|
| Llama 3.1 8B | $0.05 | $0.08 | cheapest |
| Ministral 8B | $0.15 | $0.15 | median |
| Qwen3.5-9B | $0.17 | $0.25 | counted |
| Qwen3-14B | $0.12 | $0.24 | reference only |
If a provider starts serving Qwen3-8B again, the page switches to its real price automatically.
Qwen3.8-27B: all 21 live providers
| Provider | Precision | Input | Output |
|---|---|---|---|
| Tenstorrent | fp4 | $0.02 | $0.50 |
| Chutes | fp8 | $0.039 | $1.25 |
| Near AI | fp8 | $0.04 | $1.35 |
| Cerebras | fp16 | $0.99 | $1.49 |
| DeepInfra | bf16 | $0.15 | $1.88 |
| Ionstream | fp8 | $0.04 | $1.95 |
| AkashML | fp8 | $0.225 | $1.98 |
| Darkbloom | fp4 | $0.035 | $2.20 |
| Reka | fp8 | $0.04 | $2.20 |
| Parasail | fp8 | $0.24 | $2.20 |
| Modal | unknown | $0.04 | $2.30 |
| Wafer | fp8 | $0.06 | $2.30 |
| DekaLLM | unknown | $0.04 | $2.50 |
| Mancer 2 | fp8 | $0.18 | $2.50 |
| ModelRun | fp4 | $0.20 | $2.50 |
| Phala | unknown | $0.20 | $2.50 |
| Alibaba | unknown | $0.425 | $2.55 |
| CoreWeave | fp8 | $0.40 | $3.00 |
| Novita | unknown | $0.42 | $3.00 |
| Cloudflare | unknown | $0.45 | $3.20 |
| Venice | fp8 | $0.45 | $3.20 |
Median = $2.30 (highlighted) · cheapest = $0.50 (Tenstorrent). OpenRouter id qwen/qwen3.8-27b, prices of 25 Oct.
Limits: what these numbers are not
- Not revenue, not demand. Nobody orders or pays for these tokens; the outputs are discarded once a block is found. Miners are paid only by block rewards.
- Upper bound. The count assumes every attempt is a full, fresh 256-token generation. Miners that reuse already computed parts of the text between attempts generate fewer real tokens for the same work; the whitepaper discusses this kind of cached search.
- Prices move. OpenRouter prices change often and differ 2–3× between providers for the same model, which is why both median and cheapest are shown.
- Proxy prices are used for a model no provider serves (see Prices used).
- Prompt tokens are not counted. Only the 256 generated tokens per attempt. Reading the prompt also costs compute, so the true figure is slightly higher on that side.
- Why not the explorer's own "tokens per second"? It takes the current Qwen3-8B base difficulty and assumes a block every 600 seconds, so it counts all work as Qwen3-8B tokens, including work done on bigger models, and does not follow the actual block times. We count each block in its own model instead.
Sources
- TensorCash verifiable-inference whitepaper
What one proof attempt is: a 256-token autoregressive generation with hash-seeded sampling, checked against the target. - Explorer API
api.tscscan.xyz/v1/blocks
Per block: height, time,difficulty(effective),proof.price_multiplier,model.name. Basis of every token count. - Explorer API
api.tscscan.xyz/v1/network/overview
Fieldinference.basisconfirms the base-difficulty × 256 method; checked on every update. - OpenRouter API
openrouter.ai/api/v1/models/<id>/endpoints
Live providers of each mined model with input and output prices. - OpenRouter API
openrouter.ai/api/v1/models
Prices of the proxy models. - SafeTrade TSC/USDT ticker
TSC price for the block reward comparison. - tsc.watch calculator
RTX 5090 speed (18.6 proof attempts/s on Qwen3-8B) used in the hardware check.
FAQ
Does TensorCash sell inference?
Not today. Mining produces real LLM generations as proof of work, but there is no marketplace where anyone buys them. This page measures the size of that compute, as a reference for what a paid inference layer could tap into.
Why is a bigger model worth more with fewer tokens?
Each token of a bigger model takes more compute, and providers price it accordingly.
Why output-token prices and not input?
Each attempt generates tokens one by one, which is what providers bill as output. Input pricing is for reading text, which is far cheaper and is not what miners mostly do.
Why can the Qwen3-8B token count fall while the work rate rises?
When miners move compute to a bigger model, total work goes up but a growing share of it produces the bigger model's tokens, which are fewer and costlier.
Why does the explorer show more tokens per second?
The explorer's network overview converts every block into units of the default model and averages the latest 50 blocks. We count the tokens that each block's own model actually generated over 24 hours. A bigger model makes far fewer attempts per block, so its blocks add fewer tokens here. Both start from the same base difficulty × 256 tokens.
Can I verify the numbers?
Yes. Take any block from the explorer API, divide difficulty by proof.price_multiplier, multiply by 256 and price it with the OpenRouter endpoints listed in Sources. The worked example above does exactly this for the newest blocks.