As of September 2026, Qwen3.6-27B at Q4_K_M does not fit on a 12GB RTX 3060. The GGUF is 16.82 GB in Unsloth's build and 17.98 GB in bartowski's, so a single card needs partial CPU offload. The closest measured single-3060 figure is for its August successor, Qwen3.8-27B: about 9.7 tok/s at Q4_K_S with FFN offload and MTP at 96K context. As for quant safety, q4_K_M holds up for chat and short agent runs. It is riskier for long tool-calling loops. There, q5_K_M or q6 plus grammar-constrained decoding is the safer choice when you have the memory.
What's changed as of September 2026
- Qwen3.6-27B shipped and has been superseded. Qwen3.6-27B was the first open-weight Qwen3.6 model, a dense 27B with a published 77.2 on SWE-bench Verified. In August the Qwen team released Qwen3.8-27B at the same size. Its model card reports 61.7 vs 53.5 on SWE-bench Pro and 73.0 vs 63.4 on Terminal Bench 2.1 over Qwen3.6-27B. For a new agentic-coding setup, start with Qwen3.8-27B. The quant trade-offs below apply to both, since they share the same architecture and size.
- Corrected sizes. Q3_K_M is 13.59–14.82 GB, not "~12-13GB", so it does not fit a 12GB card either.
- MTP speculative decoding helps offload. Both models are trained with multi-token prediction, so llama.cpp builds that use it verify several drafted tokens per pass over the weights.
- A single-3060 MoE path now exists. Qwen3.6-35B-A3B with routed experts in system RAM (table below) beats a heavily offloaded dense 27B for most agent loops.
Measured single-RTX 3060 12GB options for agentic coding (September 2026)
All rows are community or reviewer measurements on one RTX 3060 12GB. "Ceiling" is 360 GB/s divided by the weight bytes read per token, the upper bound if every weight sat in VRAM. For the MoE row it uses active-parameter bytes (≈3B of 35B active).
| Model (quant, file size) | Placement on a 3060 | Measured decode | Bandwidth ceiling | Source |
|---|---|---|---|---|
| Qwen3.8-27B UD-Q4_K_S (15.36 GB) | Partial offload: FFN of 46 layers on CPU, Q4_0 KV, 96K context, MTP | ~9.7 tok/s (~225 tok/s prefill) | ~23 tok/s | HF discussion, unsloth/Qwen3.8-27B-GGUF |
| Qwen3.8-27B IQ4_XS (15.48 GB) | Partial offload: FFN of blocks 0–42 on CPU, 32K context, MTP-3, patched llama.cpp | 16.06 tok/s (short Rust), 14.30 (short C++) | ~23 tok/s | kadenball/qwen38-27b-rtx3060-dcfr |
| Qwen3.8-27B UD-IQ3_XXS (10.93 GB) | Mostly on-GPU, 64K context, MTP-6, experimental research patch | 29.65 tok/s (fixed C++ task) | ~33 tok/s | kadenball/qwen38-27b-rtx3060-dcfr |
| Qwen3.6-35B-A3B UD-Q4_K_M (22.13 GB, MoE) | Attention on GPU, routed experts of 24 layers in 32GB system RAM, 65K context | ~38 tok/s | ~190 tok/s (active ≈1.9 GB) | InsiderLLM |
| Qwen3.5-9B Q4_K_M (5.68 GB) | Fully on-GPU, 8K context, stock llama.cpp | 49.9 tok/s | ~63 tok/s | tyolab 3060 benchmark |
The IQ4_XS/IQ3_XXS rows come from a patched llama.cpp build tuned to one machine, so treat them as best cases. The Q4_K_S row is the closest to stock. None of these rows is Q4_K_M: at 16.8–18 GB, it pushes more weight into system RAM and will run slower than the Q4_K_S row. Discard any claim that a 27B Q3_K_M or Q4_K_M runs fully on-GPU on a 3060. The file is larger than the card's memory.
Why agentic and tool-calling workloads punish quantization more than chat
Quantization shaves precision off a model's weights to shrink its memory footprint. In ordinary conversation, the lost precision is forgiving. A slightly less optimal word choice rarely changes the meaning, and a reader never notices. Agentic coding is different. An agent loops: it reads state, decides on an action, emits a structured tool call, observes the result, and repeats. Every one of those tool calls has to be syntactically perfect: valid JSON, the right function name, correctly typed arguments. A single token flipped by quantization noise can produce malformed JSON, an invalid argument, or a hallucinated function, and that one error breaks the whole chain.
This is the heart of the LocalLLaMA debate: "do you dare run q4_k_m for agentic work?" The honest answer is that the average benchmark scores published for a quant don't capture its quality on agentic tasks. Those scores measure perplexity and chat quality. They do not measure how often a 40-step agent run completes without a single parse failure. The Qwen team's documentation and independent trackers like Artificial Analysis give you the chat-quality picture. The agentic reliability picture you mostly have to assemble from practitioner reports.
This synthesis covers what q4_K_M changes inside the model, why agent loops expose it, what each quant weighs against a 12GB RTX 3060, and the mitigations that make a lower quant safer. The companion build guide, Qwen3.6-27B on dual RTX 3060 12GB, covers the hardware side of fitting this model at all.
Key takeaways
- Where q4 holds: drafting, refactoring suggestions, single-shot code generation, and chat. The quality gap to higher quants is small.
- Where q4 drops: long agentic loops with many tool calls, where one malformed call cascades into a failed run.
- The safe fallback: q5_K_M or q6 when you have the memory, plus grammar-constrained decoding and a retry-on-parse-failure wrapper.
- The 12GB reality: a 27B model at q4_K_M is a 16.82–17.98 GB file, which does not fit a single RTX 3060 12GB. You offload (roughly 10–16 tok/s measured for the Qwen3.8-27B successor at slightly smaller 4-bit quants with MTP) or add a second card.
- The single-card alternative: Qwen3.6-35B-A3B with expert offload, or a fully resident 9B–14B model.
- The cheap mitigation: constrained decoding forces a valid tool-call structure even when the underlying logits are noisy.
What does q4_K_M actually change inside a 27B model?
The "K_M" in q4_K_M refers to llama.cpp's k-quant scheme. It mixes precision across a model's tensors rather than applying a flat 4-bit cut everywhere. Per the llama.cpp project, more sensitive tensors (such as attention components) keep more bits while less sensitive ones are compressed harder. That is why q4_K_M consistently beats a naive uniform 4-bit quant at the same size. The result averages roughly 5 bits per weight. For Qwen3.6-27B that puts the file at 16.82 GB (Unsloth) or 17.98 GB (bartowski), depending on which tensors each publisher keeps at higher precision.
What you lose is fine-grained precision in the logits, the model's probability distribution over the next token. For most tokens, that distribution has a clear winner and the small perturbation changes nothing. The danger zone is tokens where two candidates are close: a structural character in JSON, a function-name token, a closing brace. There, quantization noise can tip the model toward the wrong choice. In a tool call, the wrong choice is a hard failure, not a soft one.
Why do agentic loops expose quantization errors that chat hides?
In chat, errors are independent and forgiving. A slightly awkward sentence does not derail the next one. In an agent loop, errors compound. Each step depends on the previous step's output being valid and correct. If step 7 of a 30-step task emits a malformed tool call, the agent crashes, retries, or (worse) silently carries on with bad state. The chance of at least one failure grows with the number of steps, so even a small per-call error rate becomes a large per-run failure rate.
That multiplicative structure is why two models with nearly identical chat benchmarks can feel very different as agents. A quant that adds even a one-to-two-percent chance of a malformed call per step will fail many long runs outright. This is the real reason practitioners hesitate to drop to q4 for serious agent work. The metric that matters is run-completion rate, and it is far more sensitive to quantization than chat quality is.
Quantization matrix: file size vs a 12GB card, speed, and tool-call reliability
The table below frames the trade space for Qwen3.6-27B with agentic reliability in mind. File sizes are the actual GGUF sizes on Hugging Face (Unsloth / bartowski), before KV cache and runtime overhead. Reliability notes synthesize practitioner reports rather than a single benchmark.
| Quant | GGUF file size | Fits one 12GB 3060? | Relative speed | Observed tool-call reliability |
|---|---|---|---|---|
| IQ3_XXS | 11.99–12.84 GB | Only with offload or an aggressively tuned build | Fast if resident | Risky for agents; visible quality loss |
| q3_K_M | 13.59–14.82 GB | No, needs offload | Moderate with offload | Risky for agents |
| q4_K_M | 16.82–17.98 GB | No, needs offload or a 2nd GPU | Slow on one card, fast on two | Good for chat, variable in long agent loops |
| q5_K_M | 19.51–20.97 GB | No | Moderate on a 24GB pool | Steadier function-call output |
| q6_K | 22.52–23.68 GB | No | Slower; tight even on 24GB | Strong reliability; near-q8 behavior |
| q8_0 | 28.60–29.12 GB | No | Slow without ample memory | Safest; roughly 1.7× the q4_K_M footprint |
The pattern is clear. Agentic reliability climbs with the quant, and so does the memory bill. On a single 12GB 3060, none of the safe quants fit a 27B model, and that is the structural problem behind this whole question.
Spec-delta: RTX 3060 12GB single-card limits vs what each quant demands
| Resource | Single RTX 3060 12GB | What 27B q4_K_M needs | Verdict |
|---|---|---|---|
| VRAM capacity | 12GB | 16.82–17.98 GB weights + KV cache | Overflows the card by 5–7 GB before context |
| Memory bandwidth | ~360 GB/s | ~16.8 GB read per decoded token | ~21 tok/s ceiling even if it fit; lower with offload |
| Practical fix | Partial offload (~10–16 tok/s with MTP, Qwen3.8-27B), a MoE, or a 2nd 3060 | Reach ~24GB pool | Add a card, or switch models |
The single 3060 12GB is an excellent card for 7B–14B agents. Those fit at q4 through q8 and run quickly: Qwen3.5-9B at Q4_K_M measures 49.9 tok/s and Qwen3-14B 33.4 tok/s on the card. It only becomes a hard wall at the 27B dense tier, exactly where agentic reliability wants a higher quant. That is why the dual RTX 3060 build keeps coming up, and why the 12GB-GPU local-LLM guide frames the 3060 as a small-to-mid-model workhorse.
How much context can you keep for a multi-step agent before the 12GB card spills?
Agents are context-hungry. Each step appends the tool result, the model's reasoning, and the next action to the running transcript, so context grows fast over a long task. The KV cache that holds that context lives in the same VRAM as the weights. Per its model card, only 16 of Qwen3.6-27B's 64 layers use full attention (the rest are Gated DeltaNet with fixed-size state), so the cache grows far more slowly than in a conventional 27B. That is how the cited 3060 setups allocate 64K–96K context.
The catch: every GB the cache uses pushes a GB of weights out to system RAM, so longer context means more offload and slower decoding.
Prefill vs generation cost in long agent transcripts
Every agent step re-processes a growing prompt (prefill) before generating its next action. Prompt reuse is the biggest lever here. On a single 3060, the kadenball Qwen3.8-27B profile reports a cached follow-up on a ~26K-token conversation finishing in 12.1 seconds, against roughly 160–170 seconds for a cold request of similar size. Generation, the token-by-token phase, is bandwidth-bound. That is where the 3060's ~360 GB/s and any offloaded layers show.
When should you step up to q8 or a second GPU?
Step up when run-completion rate matters more than cost. For an agent that must reliably complete dozens of tool calls (editing files, running tests, iterating), the reliability gain from q6 or q8 pays for itself in fewer failed runs. The practical routes are a second 3060 (a ~24GB pool fits q4_K_M or q5_K_M with room for context), the 35B-A3B MoE on one card, or accepting offload speeds of about 10–16 tok/s. For short agent tasks, q4_K_M with adequate memory is usually fine.
Common pitfalls when running 27B agents at a low quant
Five failure modes show up repeatedly in practitioner reports, and most are avoidable once you know to look for them.
- Letting the runtime pick the offload. On a 3060, some offload is unavoidable for any 4-bit 27B. The cited 27B profiles keep attention on-GPU and move only FFN tensors (
--override-tensor). Check your tok/s against those figures before blaming the quant. - Unconstrained JSON output. Running an agent without grammar-constrained decoding leaves the model free to emit almost-valid JSON: a trailing comma, an unquoted key, a stray markdown fence around the call. At q4, these slip-ups become more frequent. Enforce a JSON grammar at the decoder (llama.cpp GBNF) and most of them vanish.
- Temperature too high for tool calls. Creative sampling settings that feel great for prose make structured output flaky. Tool-call turns want low temperature (near-greedy) so the model commits to the high-probability structural tokens instead of sampling a noisy alternative.
- Context overflow mid-run. A long agent transcript can outgrow the context you allocated partway through a task. The resulting truncation drops earlier state, so the agent "forgets" a constraint and goes off the rails. Budget context for the full run.
- Benchmarking the wrong metric. Picking a quant by its chat or perplexity score tells you little about agent reliability. The metric that matters is run-completion rate over your actual task length. Measure that, not a leaderboard number.
A worked example: a 30-step file-editing agent
Consider a coding agent asked to refactor a module. It lists files, reads three of them, proposes edits, applies them, runs the test suite, reads the failures, and iterates. That comes to roughly 30 tool calls before it finishes. Suppose a given quant emits a malformed tool call two percent of the time. That sounds negligible, but across 30 independent calls the chance of at least one failure is about forty-five percent. It's nearly a coin flip whether the whole run completes cleanly.
Now drop the per-call error rate to half a percent, the kind of improvement a step up from q4 to q6 plus constrained decoding can deliver. The per-run failure chance falls to roughly fourteen percent. Add a retry-on-parse-failure wrapper that catches and reissues a malformed call, and most of the remaining failures recover automatically. The lesson is that small per-call gains have outsized effects on long runs. That is exactly why agent builders obsess over quant choice and decoding discipline in a way chat users never need to.
Verdict matrix
- Stay on q4_K_M if... your agent runs are short, your tasks tolerate the occasional retry, and you have at least a ~24GB pool so the weights and context fit without offload. Pair it with constrained decoding for cheap insurance.
- Move to q6 if... you run long, tool-heavy agent loops where a single malformed call is expensive, and you have the memory headroom. The reliability gain is the point, not the speed.
- Add a second 3060 if... you want a 27B dense model at a safe quant at interactive speed. The dual-3060 build is the standard answer.
- Switch models if... you are staying on one 3060. Qwen3.6-35B-A3B with expert offload (~38 tok/s) or a resident 9B–14B beats an offloaded 27B for interactive agent work.
Bottom line
q4_K_M is "good enough" for agentic coding with Qwen3.6-27B (and its successor Qwen3.8-27B) in the narrow sense that the model stays capable. But agent reliability is more sensitive to quantization than chat quality is, so the safe play for long tool-calling loops is q5_K_M or q6 plus grammar-constrained decoding and a retry wrapper. On a single 12GB RTX 3060, the Q4_K_M file (16.8–18 GB) cannot run fully on-GPU. Measured offloaded setups land around 10–16 tok/s even with MTP. So the real decision is usually "add VRAM or switch to a MoE" before it is "pick a quant." Match the quant to the run length: short agents tolerate q4, long agents do not.
Related guides
- Qwen3.6-27B on dual RTX 3060 12GB local LLM build
- Best 12GB GPU for local LLMs in 2026
- Qwen3.6-27B on a single RTX 3060 12GB
- Best GPU for Stable Diffusion in 2026
Citations and sources
- Unsloth Qwen3.6-27B GGUF file listing (Q3_K_M 13.59 GB, Q4_K_M 16.82 GB, Q8_0 28.60 GB)
- bartowski Qwen3.6-27B GGUF file listing (Q4_K_M 17.98 GB)
- Qwen3.6-27B model card (architecture, 16 of 64 full-attention layers, SWE-bench Verified 77.2)
- Qwen3.8-27B model card (agentic coding comparison vs Qwen3.6-27B)
- Hugging Face discussion: Qwen3.8-27B Q4_K_S on an RTX 3060 12GB, 96K context + MTP (~9.7 tok/s)
- kadenball/qwen38-27b-rtx3060-dcfr: Qwen3.8-27B IQ4_XS and IQ3_XXS measurements on one RTX 3060
- InsiderLLM: Qwen3.6-35B-A3B on an RTX 3060 12GB with expert offload (~38 tok/s)
- tyolab: 13 local LLMs on one RTX 3060 (Qwen3.5-9B 49.9 tok/s, Qwen3-14B 33.4 tok/s)
- Qwen team release notes and model documentation
- Artificial Analysis: independent model quality and quant tracking
- llama.cpp project (k-quant scheme, tensor overrides)
- llama.cpp GBNF grammars (grammar-constrained decoding)
- r/LocalLLaMA: practitioner reports on q4_K_M agentic reliability
This piece is editorial synthesis based on publicly available information. No independent first-party benchmarking is reported.
