| ▲ | The real prices of frontier models. Tokens * Price, right?(playcode.io) |
| 123 points by ianberdin 4 hours ago | 58 comments |
| |
|
| ▲ | robbie-c 2 hours ago | parent | next [-] |
| Is it on topic to complain about the various claude-isms in this article? I don't know any actual humans that write titles like "Two floors the rate card hides". I find my brain disengages once I suspect something of being written by an LLM. If the author didn't put much effort into writing it, should I expect them to have put much effort into fact-checking it? Edit: this specific title has been deleted from the article. That was not my point! Please put in more effort into writing things that you want others to read! Rather than putting in low effort but being better at hiding it. |
| |
| ▲ | mft_ an hour ago | parent | next [-] | | "No generation, no estimates - just token counts:" "Authoritative: it is the same count Anthropic bills against." "This reframes a headline that looked like good news." | | |
| ▲ | stingraycharles 12 minutes ago | parent [-] | | Yeah this is an extremely poorly written article. They didn’t even bother to add a “rewrite this article to make it sound less than AI”. It’s also using a bazillion words to make a point that could be summed up in a single paragraph: there’s a huge variance in the number of tokens required to encode the same content, with code leading the charts. To be fair, most of this was already known, and Anthropic communicated very clearly about the different tokenizer they started using. Their compute is also mostly 1:1 correlated to the number of tokens, so I don’t believe in the conspiracy that this is just to inflate prices. |
| |
| ▲ | iainmerrick an hour ago | parent | prev | next [-] | | I’m normally one to complain about people complaining about these LLM-isms, but yeah, this one really grates on you. It’s a shame because it’s making an excellent point! It just takes so long to get to the point that the reader loses the will to live. Yes, I could probably ask an LLM to summarise it for me. No, I’m not going to. I would prefer the author just take care of that for me. | | |
| ▲ | phist_mcgee 10 minutes ago | parent | next [-] | | If you couldn't bother writing it, I can't be bothered reading it. | |
| ▲ | sisve an hour ago | parent | prev | next [-] | | Yeah. To often now a days there are articles with really good points, but they are just so verbose and clearly AI generated. I could live with ai content if it was short and to the point. But it's always so lengthy. Hope that will change. A tl;dr section at the top and then the long read from ai could also be OK if they marked it. | |
| ▲ | SecretDreams 17 minutes ago | parent | prev [-] | | > that the reader loses the will to live. My general vibe hearing about AI. |
| |
| ▲ | jascha_eng an hour ago | parent | prev | next [-] | | Aside of the claudeisms and the obvious AI smell, it overexplains everything and doesn't come to any useful conclusions. It's just not a good post. The nudge to think about both "tokenization as variable" as well as actual tokens consumed per task is still good. | |
| ▲ | conception 43 minutes ago | parent | prev | next [-] | | A problem is AI by default is not very good at anything. It’s pretty mediocre. With a good harness and a lot of prompting/context - you can get it to spit something out that’s pretty good. Coders have been learning and fighting this fight for a couple of years now. The issue is that it’s not just code - they suck at writing. Really bad. Unreadable, incoherent, messy. Humans are also bad at judging the quality of things they themselves aren’t very good at. So a senior swe sees what claude spits out and says “This is trash.” And spends x amount of time getting it to not be trash. And Jr dev thinks “this is magic!” And pushes it to a PR. So my theory is the people “writing” this AI slop think its great! But actually just aren’t very good at writing copy and don’t have the skill to recognize it and prompt their way out of it. Or they don’t care. That’s an option as well. PS for anyone reading, next time AI does something that you aren’t super familiar with that looks pretty good… maybe find an expert to review it. | |
| ▲ | ianberdin 35 minutes ago | parent | prev | next [-] | | Well, criticizing is, of course, great. But the reality is that English is not my native language and I dictated most of it with my voice, then processed it with the help of AI, translated, added, corrected, and converted. It is actually a big result of work, a lot of research and attempts. And to just say that "oh, this is AI-slop," I consider unfair, but that is your choice. There is a difference:
- There are people who do,
- And there are those who criticize. | | |
| ▲ | smusamashah 27 minutes ago | parent [-] | | Instead of getting offended by a fair criticism you should learn from it. In your articles consider adding a disclaimer that says exactly what you just said here in your comment here that you post-processed your voice and thoughts through LLM. LLM speak is like the new corporate speak. Enterprise writing is fulll of fluff and nothings and they all read the same. That sameness is what most readers here are sick of. (Your comment here that I replied to is also written by AI which is even more sad :| ) |
| |
| ▲ | esafak an hour ago | parent | prev | next [-] | | We need to make attribution standard. It's a lie to pretend you wrote something you merely prompted. | |
| ▲ | add-sub-mul-div 2 hours ago | parent | prev [-] | | Yes it's worth commenting about. Not everyone, but many want to know that signal just like you do. It not only provides a useful heuristic about the article, but about whatever product or service they're advertising/selling. |
|
|
| ▲ | SwellJoe 4 hours ago | parent | prev | next [-] |
| The fact that OpenAI documents theirs is already a big improvement over Anthropic. But, also, the OpenAI tokenizer got more efficient when they last updated it, rather than less. https://mdstudio.app/o200k-base-tokenizer |
| |
| ▲ | alansaber 3 hours ago | parent [-] | | Interesting. New models are estimated at ~5T params, so 45,000x increase over BERT base (110m). But vocab size of 200k, so only an increase of 7x over BERT base (30k). | | |
|
|
| ▲ | Tiberium 3 hours ago | parent | prev | next [-] |
| Yeah, Anthropic's current tokenizer in Sonnet 5/Opus 4.8/Fable 5 is much worse than OpenAI's. Also, OpenAI has been using their current o200k_base from the day GPT-4o came out over two years ago. Just a few of my own tests: - A ~2000-2002 legacy C++ game codebase at about ~90kloc: GPT 1.12M, Claude 2.2M - A ~30kloc TypeScript codebase: GPT 260K, Claude 437K In the end, GPT's current tokenizer is ~1.6x-2x better than Claude's current one, depending on your data. And you can check for free for both, for OpenAI just use the open-source libraries, for Anthropic - you have to use their count_tokens endpoint as they don't publish the tokenizer, but the endpoint is free (and allows requests over 1M tokens as well). |
| |
| ▲ | onlyrealcuzzo 3 hours ago | parent | next [-] | | Interesting... Naively I'd assume you'd have a pretty unfair advantage on quality if you have materially more information dense tokens. That doesn't really appear to be the case as GPT and Anthropic models appear evenly matched despite Anthropic encoding the same text into almost ~2x the tokens... I'd also - naively - assume this would make training their models more expensive. Though inference now dominates, and they'd probably rather have more tokens than less (to charge you for them at future 80% margins). | | |
| ▲ | recursivecaveat an hour ago | parent | next [-] | | If a given paragraph gets encoded into twice as many tokens, that means the model gets twice as many matmuls to process it. The amount of compute thrown at the problem is increased (everything else constant), which may improve the quality of the result. This is believed to be one of the reasons that 'thinking' tokens improve quality. For long tasks it will lead to more context compactions though which will harm the quality to some degree as well. | |
| ▲ | not-a-llm 3 hours ago | parent | prev [-] | | more dense tokens means more stuff to fit into the embedding space which is per token, so more work to disentangle later |
| |
| ▲ | not-a-llm 3 hours ago | parent | prev [-] | | you use the wrong word the Anthropic tokenizer is not worse, its more expensive/verbose | | |
| ▲ | nullsanity 3 hours ago | parent [-] | | So, worse? Because we benchmark off token use when talking about token use, and everyone else understood that. | | |
| ▲ | jascha_eng an hour ago | parent | next [-] | | I mean it might lead to better performance on the model side. So the tokenizer is better but more expensive. | |
| ▲ | otikik 3 hours ago | parent | prev [-] | | It’s better for them |
|
|
|
|
| ▲ | ianberdin 3 hours ago | parent | prev | next [-] |
| We've switched the default model in playcode.io among Opus 4.8, Opus 4.6, Sonnet 4.6, and Sonnet 5. I must admit, Opus 4.8 is quite expensive, and the costs accumulate quickly. Opus 4.6 is about 50% cheaper, while Sonnet 5 is significantly more affordable. According to the data, Sonnet 5 is about 2-3 times cheaper. Fable 5 is unaffordable at all... Today, I tested Sol 5.6 on various tasks. It performs similarly to Opus 4.8 but is still noticeably more expensive than Sonnet 5. Although Sonnet 5 isn't the top model, it's quite effective for creating typical websites for small and medium businesses. However, they will increase the price starting September 1, as their free offer is ending. I'm also actively testing Grok 4.5. There's something promising about it. The design is mediocre, in my opinion, but it operates quickly and reliably without any deadloops. Usually, Grok models would fail or loop, but this one is stable. Overall, I really want a benchmark based on real tasks. |
|
| ▲ | foota 2 hours ago | parent | prev | next [-] |
| It's a bit unrelated, but I've been wondering if LLM providers are using cache read costs to preserve the illusion of constant output token prices. In reality, the longer your context the more expensive output tokens are, but anthropic and openai both have flat output token pricing. In practice though as a result of cache reads over multiple turns you will end up paying quadratic pricing anyway. |
|
| ▲ | jnwatson 3 hours ago | parent | prev | next [-] |
| The real elephant in the room is pricing for KV cache writes and reads. That makes all the difference for tasks with large context. |
| |
| ▲ | petercooper 2 hours ago | parent [-] | | Cache writes/reads are the majority of the picture for agentic development. When you see these people saying a coding run "used 200 million tokens" or whatever, most of that is cache reads, so it should be the headline price IMO (and is one reason why DeepSeek API is so striking with its minuscule cache pricing). |
|
|
| ▲ | zaptheimpaler an hour ago | parent | prev | next [-] |
| Wow this is great, it explains what I've seen. My Codex sub seems to last way longer than Claude in real codebases, and Claude eats up a ton of context in the initial read. I thought the harness might be the cause but it seems like tokenization is probably the bulk of it. |
|
| ▲ | iLoveOncall an hour ago | parent | prev | next [-] |
| Very unpalatable completely LLM-written article, but on top of that a lot of the fundations and conclusions are completely wrong, the main one being this one: > You will see people claim Claude uses 2x to 4x the tokens of GPT. Our measurements do not support that, and overstating it would undercut the real point. It's not because a single prompt represents only 1.7x the number of tokens that a model doesn't use 4x as many tokens as another, when running as an agent. This doesn't take at all the number of tokens of the output into account, and the number of tokens of the potential tool calls from this output, which directly feeds back to input tokens. The article also has a very small test set (16 documents), all of very small length (15K tokens at most, when models go up to 1M in context and agents routinely exceed this and have to summarize). Complete garbage article. |
|
| ▲ | ricardobeat 3 hours ago | parent | prev | next [-] |
| I have reduced usage of Fable and Sonnet 5 to a minimum. Fable in particular is amazing at creative tasks, but not worth the cost for almost everything else. I can have Opus 4.6/4.7 running non-stop without hitting quota, vs maybe 20 minutes of Fable usage. |
| |
| ▲ | arjie 2 hours ago | parent | next [-] | | After getting used to Opus 4.8, Sonnet 5 is nigh unusable for coding. I much prefer Opus 4.8 + DS V4F for routing. Sonnet 5 is just not useful in the price/performance anywhere. I still get some use of Fable for planning because it can comprehend agent-built codebases (which have repetition of local patterns to a grand degree). | |
| ▲ | colechristensen 3 hours ago | parent | prev | next [-] | | Fable can solve the problems Opus couldn't. BUT most of the time I'm not having those kinds of problems. I wouldn't say I'm doing anything groundbreaking but definitely at times obscure and that's when Fable has been able to dig me out of the rut. (the alternative I was actually following was reading textbooks myself to understand the domain better) | | |
| ▲ | lolinder 2 hours ago | parent [-] | | The weird twist here is that I've found that there are times where Fable is actually worse than Opus at a straightforward task, not just more expensive. It'll launch off into its own little world for an extended thinking, then start editing files, and I'll already have spent $5 in tokens before I see enough response to know that it's on the wrong track. Opus's verbosity is actually a boon sometimes for catching false starts early. |
| |
| ▲ | ianberdin 3 hours ago | parent | prev [-] | | Well, I both agree and disagree with you. On one hand, the price is just astronomical for Fable, well, not exactly astronomical, but I would say unaffordable. That is to say, so expensive that it is impossible to use. But on the other hand, Fable is simply incomparable to anything else. I mean, it is just amazing. There is nothing even close to being equal to it. | | |
| ▲ | gervwyk 2 hours ago | parent [-] | | I have to agree on fable being in another league. I’ve given it my most challenging problems and almost always comes back with a functional, solution 2-5 prompts away from a finished pr. Literally smashed our backlog - very impressed. What i found most efficient is to add “use sonnet agents for research” gets you really far, and on large not so novel tasks “use opus for tasks” by adding this it spins up many agents, works for 2+ hours in a usage window and completes A LOT of work. |
|
|
|
| ▲ | f311a 3 hours ago | parent | prev | next [-] |
| The real price is how often a model uses subagents that scan your whole repository multiplied by thinking level. |
|
| ▲ | lolinder 4 hours ago | parent | prev | next [-] |
| This piece focuses on the cost differences from the tokenizer, which do matter, but I wish they emphasized more that even adding the tokenizer to your calculation doesn't provide you with a good way to calculate cost for agentic coding tasks. Other traits where models differ that have an even greater impact on your total spend: * How much context do they load in to solve a given task? * How long do they spend thinking to get equivalent results? * How many times do they stop and ask you for input, and are you there to respond to them before the cache runs out? * Etc. Incorporating the tokenizer just makes a very imprecise measurement of cost a little bit more precise, but in my own experience I have not found that the token cost is a significant driver of task cost whether or not you incorporate the tokenizer. Everything else about the model's behavior has a much larger impact. |
|
| ▲ | karma_daemon 2 hours ago | parent | prev | next [-] |
| The "Honest size of the effect" Honestly, haha |
|
| ▲ | drob518 3 hours ago | parent | prev | next [-] |
| Yes, and verbosity (thinking) is a huge factor. |
|
| ▲ | dinobones an hour ago | parent | prev | next [-] |
| Just start pricing in bytes input/output. This whole "token" and "tokenizer" thing is an implementation detail that shouldn't even be leaking out into the API. Providers change tokenizers all the time with model updates, and it's often not even possible to query/figure out how text is tokenized without actually just sending the LLM a request. Just switch to charging for bytes of intelligence. Please. Claude Shannon figured this out decades ago. |
|
| ▲ | semiquaver 3 hours ago | parent | prev | next [-] |
| Are there any advantages of the new tokenizer? Does it have a larger or smaller vocabulary or just differently weighted? |
| |
| ▲ | ianberdin 3 hours ago | parent [-] | | Well, in my view, it's just the most ordinary manipulation to avoid creating unrest. There is most likely no improvement inside. Of course, these are my guesses, but did anyone feel the difference in the transition from Opus 4.5 to 4.6? In my opinion, no. And it's unlikely to be a matter of the tokenizer. |
|
|
| ▲ | diwank 3 hours ago | parent | prev | next [-] |
| this is surprisingly high delta. to make matters worse, reasoning tokens account for the majority of tokens and they are completely opaque so it's hard to tell how much of that is prose or code |
|
| ▲ | daft_pink 3 hours ago | parent | prev | next [-] |
| Honestly, I find performant pricing where they test each model on the same task is much more useful than figuring out the tokens or using the input token tax. The reason being is that the only tokens I feel I really control are the input tokens, but the whole program seems to just run itself and they just charge you what they want to charge you and it’s more of a black box. Very interesting article though. |
|
| ▲ | yboris 2 hours ago | parent | prev | next [-] |
| Meta: why are the scrollbars hidden / invisible? Awful UX :( |
|
| ▲ | sscaryterry 3 hours ago | parent | prev | next [-] |
| My take from this is that Anthropic is screwing us again. I hope AMD shows them up again. |
| |
|
| ▲ | davidw 2 hours ago | parent | prev | next [-] |
| Where is it getting more tokens in the same source file? Like if you kept minimizing what you're feeding it, what accounts for the difference? |
|
| ▲ | j45 3 hours ago | parent | prev | next [-] |
| An individual token, and the level of energy it represents (electricity, or relative effectiveness per model) increasingly seems the space of obsfucation. This space can be increasingly avoided by becoming, and remaining, efficient and effective with prompts. |
| |
| ▲ | dinkleberg 2 hours ago | parent [-] | | That is one of the interesting things about Neuralwatt cloud. Their pricing is based on energy rather than tokens (actually they have a token-based alternative, but claim the energy pricing results in 95% cheaper results). I've tried out their subscription offer and it does seem like you get a lot more usage even on the cheap plan. However since the energy metering is pretty much unique to them (at least that I've seen), there really isn't anything to compare it against, so hard to tell how accurate it is. Regardless, it is cool to be able to contextualize the actual spend in terms of physical energy utilization. It even has a little co2 number (though again, kind of a "trust me bro" metric). | | |
| ▲ | j45 2 hours ago | parent [-] | | I think I saw something like that, and it made me realize the watt isn't the only measurement. The watt can be spent effectively, or ineffectively, thus obsfucating mileage per watt. How we drive AI will cause mileage variances, but over time the improved practices can measurably change. |
|
|
|
| ▲ | ignoramous 4 hours ago | parent | prev [-] |
| Tokenzier aside, a report shared on reddit found that the GPT 5.6 (edit: 5.5) series are incredibly thrifty with CoTs, resulting in cheaper bills than GLM 5.2 (let alone Opus/Fable): https://www.reddit.com/r/ZaiGLM/s/rUoG5adkPh Chattiness remains an open issue for some of the SoTA open weights & (to a lesser extent) Claude. |
| |