"Token limit reached" in chats

Congrats on launching the new chats UI! Took it for a spin and it did a pretty good job at some basic charts, but I ran into two sharp edges: first, that it’s not clear how to “turn a chat into a notebook” - doesn’t seem like there’s a UI option, so I asked the clanker to do it and that ran into the second sharp edge:

This error seems kind of odd: it’s not clear if it’s Observable-the-company’s token limit or my account’s. It both seems quite low as a token limit if it’s a “free quota” and also if this is a prompt to upgrade, this is a place where there should be a CTA to upgrade that makes that easy and straightforward.

The chat feature in notebooks produces a similar kind of error - but this time as placeholder text in an input, which seems worse as a CTA. This is kinda where it makes sense to ask for money or an API token or etc.

I second that, I had the same issue this morning. It seems we are not able yet to upgrade to PRO / TEAMS plans to upgrade the daily limit.

Do we have any solution in the mean time ? Or do we have a target date of when we will be able to upgrade ?

Thank you both for the feedback.

As noted on the pricing page these new tiers are coming soon which is why the experience when you reach the token limit is a little clumsy. We need to build out the Stripe integration to allow self-service upgrade and downgrade.

In the interim, it’s possible to upgrade to the old Pro tier using Old Observable if you go to your Team settings page there. This will give you a significantly higher daily token limit. (We’re also working on optimizing token usage and in particular doing automatic summarization so that you don’t hit the context window limit, which can happen if you have long chats or notebooks.)

The current limits are provisional but perhaps despite appearances they are already quite generous given the economics. :person_shrugging:

As for turning a chat into a notebook, you can click the Fork button in top right corner to create a notebook:

Screenshot 2026-09-02 at 8.07.13 AM

(There’s also a hidden feature where you can view a chat as a notebook without converting it… but that’s not really supported so you’ll have to guess!)

Maybe for free accounts for now, defaulting to something like GLM 5.3 Flash would reduce the COGS for now and prevent users from hitting the limits so quickly?

Forking a chat into a notebook works great but I don’t know if that’s the metaphor that I thought of, it’s kind of more of a “transformation” from a user perspective even though the underlying structure is the same.

We chose Claude Sonnet as, at the time, we believed it provided the best trade-off of quality and cost and speed. But that’s constantly changing as new models come out, so yeah, we may change the default. We plan on supporting non-Claude models in the future.

Yea, chats-as-notebooks is a little mind-bending.

What we like about it is that the runtime semantics of the two forms are nearly identical (the code runs the same in both, as well as imports, databases, access controls, etc.). So if you understand one you can hopefully understand the other. And of course it’s a lot easier for us to develop both when they use the same infrastructure; the code for chats and the code for notebooks is 98% the same.

So, while it may be surprising and we still need to make it more obvious, we’re leaning into the “chats are just (append-only, agent-first) notebooks” design principle.

One quirk with chats that I would like to improve, but don’t yet know how, is the conflict between an append-only, chronological-order conversation and the inherent reactivity, order-independence of Observable notebooks. Ideally the reactivity in chats would be more unidirectional (top-down) so that you don’t accidentally state defined by earlier cells; we want the conversation to always accurately captures point-in-time state. If anyone has ideas, I’d love to hear ’em.