There are two ways to pay for the models you vibe code with, and the choice matters less for cost than for how you behave.

The two shapes

A subscription, through a coding tool or a chat plan. You pay a fixed amount monthly and work within a usage allowance. Predictable, no per-token arithmetic, and the usual way people do day-to-day coding.

Pay as you go, through an API key. You pay per token for exactly what you use. Necessary if you're building something that calls a model on behalf of other people, because your users can't share your subscription.

Check the current plans and allowances directly rather than trusting a figure you read somewhere, including here. They change.

The real difference isn't the money

It's the feedback.

On the API, waste is visible. A verbose prompt, a model set too high, an agent that looped for an hour — all of it shows up as a number the next day. That's uncomfortable and it makes you better at this.

On a subscription, waste is invisible until you hit a limit. There's no signal telling you that you've been running the most expensive model at maximum effort to rename variables. People routinely do this for months.

If you're on a subscription, impose the discipline yourself: pick a model and effort level deliberately per task, the same way you would if each request had a price on it.

When you need both

Most people building something eventually do. The subscription for writing the code, an API key for whatever the code calls at runtime.

Worth keeping clearly separate in your head, because they fail differently. Hitting a subscription limit stops you working. Hitting an API problem stops your users working, and that's the one that needs spend caps and alerts.

Which to start with

If you're learning or building for yourself, a subscription. Simpler, predictable, and nothing you build can accidentally cost money.

Add an API key when you have something that needs to call a model without you sitting there. That's the actual dividing line, and it isn't about volume.

The API key is the one that can surprise you. A subscription can run out; an uncapped key can run up.