How much context fits on your card?

The longest context each recommended model keeps comfortably on the most common cards, at the level it would be downloaded at — with the default fp16 KV cache and with the cache quantized to q8_0 or q4_0.

Rows are the models this site recommends for each card: the largest that fits comfortably, and the largest that leaves a third of the card free, for chat, code and image tasks. Every figure is the VRAM calculator's own at 4K context and batch 1, and each row opens there with the same settings.

Each figure is the longest context that stays green (at most 88% of the card), found by running the calculator itself at every step. "Full window" means the model's own maximum fits; a longer context than that is not on offer. "Tight to" is how far it goes if you accept an amber fit.

RTX 5060 Ti 16G · RTX 4060 Ti 16G · Radeon RX 9070 XT

16 GB

ModelLevelfp16 cacheq8_0 cacheq4_0 cache
Mistral Small 24B Instructmax 32KAWQ INT48Ktight to 24K16Ktight to 32K31Ktight to 32K Calculator
Devstral Small 1.1 24Bmax 128KAWQ INT410Ktight to 26K19Ktight to 49K36Ktight to 92K Calculator
Magistral Small 1.2 24Bmax 128KAWQ INT410Ktight to 26K19Ktight to 49K36Ktight to 92K Calculator
Falcon 3 10B Instructmax 32KQ4_K_M32K · full window32K · full window32K · full window Calculator
Gemma 4 E4B ITmax 128KQ8_0128K · full window128K · full window128K · full window Calculator

RTX 4060 Ti 8G

8 GB

ModelLevelfp16 cacheq8_0 cacheq4_0 cache
Falcon 3 10B Instructmax 32KGPTQ INT49Ktight to 17K17Ktight to 32K32K · full window Calculator
Qwen3.5 9Bmax 256KQ4_K_M17Ktight to 57K32Ktight to 107K62Ktight to 202K Calculator
Qwen3 4B Instructmax 32KQ6_K23Ktight to 32K32K · full window32K · full window Calculator
Qwen3.5 2Bmax 256KQ8_0256K · full window256K · full window256K · full window Calculator

RTX 5070

12 GB

ModelLevelfp16 cacheq8_0 cacheq4_0 cache
DeepSeek-V2-Lite Chatmax 160KQ4_K_M18Ktight to 81K35Ktight to 153K67Ktight to 160K Calculator
Gemma 3 12B ITmax 128KQ5_K_M14Ktight to 44K33Ktight to 89K70Ktight to 128K Calculator
Granite 3.1 8B Instructmax 128KQ4_K_M31Ktight to 43K58Ktight to 81K111Ktight to 128K Calculator
Gemma 4 E2B ITmax 128KQ8_0128K · full window128K · full window128K · full window Calculator

RTX 3090 · RTX 4090

24 GB

ModelLevelfp16 cacheq8_0 cacheq4_0 cache
Recursive Flint 40B-A2.5Bmax 256KQ3_K_M21Ktight to 157K43Ktight to 256K84Ktight to 256K Calculator
MiniCPM-V 4.7 35B-A3Bmax 256KQ4_K_S15Ktight to 205K28Ktight to 256K54Ktight to 256K Calculator
ERNIE 4.5 21B-A3Bmax 128KQ4_K_M119Ktight to 128K128K · full window128K · full window Calculator
GPT-OSS 20Bmax 128KMXFP4128K · full window128K · full window128K · full window Calculator
Gemma 3 12B ITmax 128KQ5_K_M128K · full window128K · full window128K · full window Calculator

RTX 5090 · 32 GB RAM (CPU)

32 GB

ModelLevelfp16 cacheq8_0 cacheq4_0 cache
Nemotron 3.5 Bolt 74B-A9Bmax 256KIQ2_XXS256K · full window256K · full window256K · full window Calculator
GLM-4.7-Flashmax 128KQ4_K_M128K · full window128K · full window128K · full window Calculator
Gemma 3 27B ITmax 128KQ4_K_M117Ktight to 128K128K · full window128K · full window Calculator

Mac M4 Pro 24G

24 GB

ModelLevelfp16 cacheq8_0 cacheq4_0 cache
Qwen3-VL 30B-A3B Instructmax 40KQ3_K_M4Ktight to 33K7Ktight to 40K14Ktight to 40K Calculator
North Mini Code 1.0 30B-A3Bmax 256KQ3_K_M23Ktight to 132K54Ktight to 256K114Ktight to 256K Calculator
DeepSeek-V2-Lite Chatmax 160KQ4_K_M160K · full window160K · full window160K · full window Calculator
Gemma 3 12B ITmax 128KQ5_K_M91Ktight to 128K128K · full window128K · full window Calculator

Another card? Each of the 78 cards in the index has its own page with every model that fits: all GPU pages

Why context costs memory

Every token of context leaves a key and a value vector in every layer that keeps a cache: 2 × layers × kv_heads × head_dim × bytes per token. Two models of the same size can differ several-fold here. Grouped-query attention shares one KV head between several attention heads; sliding-window layers keep only a fixed window; hybrid models such as Qwen3.5/3.6 keep a growing cache in a quarter of their layers. That is why some models reach their full window on a card where a same-size model stops at a few thousand tokens. Each figure here is found by running the calculator itself at every step, not by inverting the formula.

Quantizing the KV cache

The cache does not have to be fp16. ggml's q8_0 stores 32 values in 34 bytes, about 53% of fp16, and q4_0 stores them in 18, about 28%. Ollama's documentation describes q8_0 as a very small loss in precision that usually has no noticeable impact, and q4_0 as a small-to-medium loss that may be more noticeable at long contexts, varying by model. Both runtimes need Flash Attention for it. In llama.cpp pass -ctk q8_0 -ctv q8_0 (the default -fa auto turns Flash Attention on); in Ollama set OLLAMA_KV_CACHE_TYPE=q8_0 on the server, which applies to every model it loads.

Common questions

Is a q8_0 cache worth it?
For long documents and code, usually yes: it roughly doubles the context that fits for the cache's share of memory, and Ollama's own documentation calls the precision loss very small. q4_0 stretches further but its loss is larger and more visible at long contexts, so try it on your own task before relying on it.
Why does a model stop at "full window" even with memory to spare?
Because that is the longest context the model was trained or configured for; this page never sizes a model past its own window. Runtimes may let you set a longer context, but the model was not built to use it, and answers past the window degrade.
Does llama.cpp use this much context by default?
Recent llama.cpp starts from the model's trained context when you omit -c, then trims it to fit the card, and Ollama picks its own default. Set the context yourself (-c 32768 in llama.cpp, num_ctx in Ollama) so you get the length you planned for rather than whatever the runtime settled on.