Ask an AI assistant what temperature to roast a chicken, and it’ll answer correctly. Ask it the same question three messages into a conversation where you’ve been discussing outdoor temperatures in Celsius, and there’s a real chance it shifts to Fahrenheit without flagging it. Not always. Not predictably. Just often enough to matter at the wrong moment.
Units — temperature, distance, weight, currency — are where AI produces wrong answers that look right. The number is plausible. The sentence is fine. Nothing in the output signals that something slipped.
Why This Actually Happens
It’s not random noise. The model isn’t choosing units arbitrarily — it’s pattern-matching on whatever training context is most statistically associated with your query. Cooking queries in English-language training data skew heavily Fahrenheit because U.S. recipes dominate the web. A conversation where you’ve been typing “20 degrees” skews Celsius. The model picks whichever unit fits the sentence type most probably, and if your context is mixed, you get a coin-flip.
What it doesn’t do is explicitly track: “the user has been in Celsius throughout, therefore stay in Celsius.” That kind of deliberate bookkeeping only happens if you ask for it, or if there’s a system prompt that enforces it. Left to default behavior, it drifts.
The more specific failure: ask a multi-part question that spans domains — “what temperature should I store my sourdough starter, and what outdoor temp is too cold to leave it near a window?” — and the model might answer the first in Fahrenheit (kitchen context) and the second in Celsius (weather context) in the same response. No warning. No footnote. Two numbers in different systems sitting next to each other.
Where It Actually Costs You
- Cooking and baking. 350°F and 350°C are not close. 350°C is roughly 660°F — industrial kiln territory. If you take a Fahrenheit answer and apply it as Celsius, the oven doesn’t tell you something’s wrong. The smoke does.
- Health and body temperature. 37°C is normal. 37°F is well below the freezing point of water. If you’re asking about fever thresholds and the model shifts systems without flagging it, the answer becomes nonsense — but believable nonsense if you’re not paying attention.
- Science or engineering questions. Kelvin shows up here, especially for anything involving gas behavior, heat transfer, or thermodynamics. A model that switches to Kelvin mid-answer when you asked in Celsius is technically defensible and practically useless.
The Fix Is Boring But It Works
Specify the unit you want, every time, in every question that involves a measurement. Not just the first message. Every one.
“What temperature in Celsius should I ferment this at?” — not just “what temperature.” This sounds obvious, but the default habit is to specify once and assume the model carries it forward. It does, sort of, until context shifts and something else becomes more statistically salient.
For longer conversations or anything built into a workflow, put the unit preference in the system prompt or at the top of your first message: “All temperatures in this conversation should be in Celsius unless I specifically ask otherwise.” That’s a harder anchor and holds more consistently across a session.
If you’re using Claude specifically: explicit unit constraints work better than implicit ones. “Always respond with Celsius” in your setup message is more robust than relying on it to infer from context. I’ve seen the same thing building automated pipelines — anything that needs to stay consistent across many runs has to be stated outright, not assumed from pattern.
A Slightly Weirder Version of This Problem
It’s not just temperature. Any quantity with multiple common unit systems is vulnerable to the same drift: miles vs. kilometers, pounds vs. kilograms, USD vs. local currency, date formats (MM/DD vs. DD/MM). The mechanism is identical — the model picks the unit most probable for that sentence type, not necessarily the one you established earlier.
The fix is the same across all of them. State the unit. State it explicitly. State it again if the conversation goes long or changes topic.
One genuine limitation worth knowing: even with explicit constraints, models occasionally slip on very long conversations — especially after you’ve pasted in outside content like a recipe or a document that uses a different system. The pasted text can temporarily override your stated preference because the immediate context is now saturated with the other unit. If you catch a wrong answer, just correct it and restate the preference. The model will recalibrate immediately; it’s not stubborn about it.
The Broader Pattern
Unit errors are a good proxy for a whole class of AI failure that’s harder to name: output that’s internally coherent and stylistically confident, but wrong in a way that’s invisible without domain knowledge. Temperature swaps are easy to catch if you know both systems. The same drift happens with less obvious things — legal jurisdictions, measurement standards, naming conventions — where you might not catch it at all.
The habit worth building isn’t paranoia about every answer. It’s knowing which categories of question have this property: anything where multiple valid conventions exist for the same quantity, and the model has no strong reason to prefer yours unless you’ve said so explicitly.
Before you read the answer to anything numeric: did you actually specify the unit? If you didn’t, that’s the thing to check first.



