Q4_K_M, Q5_K_M, Q6_K and Q8_0 are GGUF quantization labels—not universal rankings. They describe how a model’s tensors are stored with reduced precision in llama.cpp-compatible files. Higher-bit formats usually require more storage and memory, but the exact file, model architecture, tensor mix, runtime and workload decide fit, quality and speed.
Compare the labels · Choose a quantization · Plan VRAM correctly
Short answer: choose the highest-quality quantization that fits your complete memory budget with working headroom, then test it on your task. Do not assume Q8 is always faster, Q4 is always good enough, or the model-file size equals peak VRAM use.
Q4_K_M vs Q5_K_M vs Q6_K vs Q8_0
| GGUF label | Illustrative bits per weight | Illustrative 8B file size | Planning interpretation |
|---|---|---|---|
| Q4_K_M | 4.8944 | 4.58GiB | Smaller K-quant mix; useful when capacity is tight. |
| Q5_K_M | 5.7036 | 5.33GiB | More bits and a larger file than Q4_K_M in this example. |
| Q6_K | 6.5633 | 6.14GiB | Higher precision and memory cost in this example. |
| Q8_0 | 8.5008 | 7.95GiB | Near-eight-bit weight storage with block overhead; not exactly 8.0 bits per weight. |
The “4,” “5,” “6” and “8” are useful orientation labels, but they are not a complete file-size formula. Quantization adds scales and other block metadata, and “mostly” formats can store selected tensors at different precisions. That is why Q8_0 in the cited example reports 8.5008 bits per weight rather than exactly eight.
What do K, S and M mean?
K-quant formats use block or “super-block” encoding implemented by llama.cpp. The suffix distinguishes variants. In common model-file names, S identifies a smaller variant and M a medium mixed variant. The exact mixture is an implementation detail, not a promise that every tensor uses the number in the filename.
The current llama.cpp quantizer source exposes Q4_K as an alias for Q4_K_M and Q5_K as an alias for Q5_K_M. It also labels these as “mostly” file types. Record the complete artifact filename; writing only “4-bit” discards information needed to reproduce a result.
Quantization changes more than download size
- Weight memory: lower-bit files usually need less storage and device memory for model weights.
- Output quality: quantization error can affect models and tasks differently. One perplexity or benchmark result does not establish your answer quality.
- Runtime support: the backend must implement the format for your CPU, GPU or accelerator path.
- Speed: smaller weights can reduce memory traffic, but dequantization kernels, hardware and workload shape can reverse simple expectations.
- Offload: a runtime may place some layers on GPU and others on CPU; successful loading is not proof of acceptable latency.
The official llama.cpp README publishes prompt-processing and generation measurements for one test profile, and those numbers do not rise or fall monotonically with bit count. Treat them as evidence about that profile—not a general ranking for every GPU, model or context.
The GGUF file is not the full VRAM requirement
Peak resident memory can include model weights, KV cache, runtime buffers, compute workspace and backend overhead. Context length, concurrency and cache precision change the total. A file that is slightly smaller than a GPU’s nominal VRAM may still fail to load fully or leave too little room for the intended context.
Use the LLM VRAM calculator for a planning range and the KV-cache guide for context-memory arithmetic. For a large-model example, the 70B VRAM guide shows why an artifact’s download size is not a fit guarantee.
Do not compare quantization labels across unrelated formats as if they were identical
GGUF K-quants, GPTQ, AWQ, bitsandbytes NF4 and other schemes can all be described loosely as “4-bit,” while using different block structures, calibration methods, kernels and runtime paths. The label “4-bit” therefore does not establish equal file size, memory use, quality or performance. Compare the exact format and implementation your application uses.
The official Qwen2.5-72B GGUF repository, for example, publishes multiple llama.cpp quantization types for one model and shows the complete artifact naming needed to select them. Its model card also identifies the model architecture, layer count and grouped-query attention layout that affect other memory calculations.
How to choose a quantization
- Fix the task first. Define what a correct or useful answer must contain.
- Calculate fit. Include weights, intended context, concurrency, buffers and headroom.
- Confirm runtime support. Check the exact backend, device architecture and file type.
- Shortlist two nearby formats. When possible, test the smallest acceptable candidate and one higher-precision option.
- Use identical inputs. Keep model family, prompt, sampling, context and output limit fixed.
- Record quality and waiting time separately. A format can fit and still fail the task—or produce an unacceptable wait.
A practical decision rule
If only Q4_K_M fits without excessive offload, test Q4_K_M rather than assuming a larger label is required. If Q5_K_M or Q6_K also fits with healthy headroom, compare them on your real prompts. Choose Q8_0 only when its extra memory cost serves a demonstrated quality or workflow need; the larger label alone is not a benefit.
Run the local-LLM benchmark method, then preserve the exact filename, runtime version and settings. If the result has a public source, use the benchmark submission builder so another reader can evaluate what was actually tested.
Reviewed October 24, 2026. Quantization implementations and backend support change. HighVRAM has not independently benchmarked these formats; cited size and throughput examples belong to the documented llama.cpp test profile and are not generalized here.
If the preferred quantization does not fit: the CPU-offload guide explains hybrid placement, memory mapping, KV cache and why successful loading is not a speed result.
\nApplying these quantizations to a 14B model? The 14B VRAM requirements guide maps official Qwen Q4_K_M through Q8_0 artifact sizes to 8GB, 12GB, 16GB and 24GB tiers.
How much VRAM do you need for a 7B LLM?
Compare 4GB through 16GB tiers using official Qwen2.5-7B GGUF sizes, explicit KV-cache arithmetic and complete-workload headroom.
Choosing between 8GB, 12GB and 16GB?
Compare mainstream memory tiers using official 7B and 14B artifact sizes, context headroom and exact GPU-variant checks.
One official four-format example: the Magistral Small 1.2 VRAM guide compares Mistral’s Q4_K_M, Q5_K_M, Q8_0 and BF16 files without turning size into a quality ranking.
Official four-format example: the Devstral Small 1.1 VRAM guide compares Mistral’s Q4_K_M, Q5_K_M, Q8_0 and BF16 files without turning quantization into a universal quality ranking.
Large MoE example: the Mixtral 8x7B VRAM guide compares labeled Q2_K through Q8_0 file sizes while keeping community conversions distinct from Mistral’s official checkpoint.
Multimodal packaging example: the Llama 3.2 11B Vision guide shows why a quantized language-model file may not be the complete vision workload when a projector is packaged separately.
Multimodal 24B example: the Mistral Small 3.2 guide labels community Q4_K_M through Q8_0 files separately from Mistral’s official BF16 checkpoint.