Game Dev Cheat Sheet

Unity Error Decoder: Paste a Stack Trace, Get the Fix

Unity error messages tell you what went wrong but rarely why, and almost never in what order to check things. Paste the message or the whole stack trace and this page will match it against every error we have documented. Each error then has its own page with the causes ranked by how often they actually occur, the specific fix for each one, and the version differences where they matter. Matching runs entirely in your browser, so nothing you paste is uploaded.

Paste your error

Paste the error message or the whole stack trace from the Unity Console. Matching happens in your browser; nothing is uploaded.

Runs in your browser. Nothing is uploaded.

Results appear here as you paste.

Every error, by category

12 errors documented so far.

Runtime exceptions

Thrown while the game is playing, in the Editor or in a build.

Compiler errors

Reported by the C# compiler. Nothing runs until these are cleared.

Editor errors

Raised by the Unity Editor itself, usually about a broken reference.

Build errors

Raised while packaging a player, and often platform specific.

Built by David Edgecombe at Ocean View Games, a Unity studio in London.

Frequently asked questions

Does my stack trace get uploaded anywhere?
No. Matching happens in JavaScript running in your browser, against an index built into the page itself. There is no API call and no backend to send it to. You can confirm it by opening your browser's network tab while you paste, or by disconnecting from the internet once the page has loaded.
Why does it show several possible matches instead of one answer?
Because a stack trace often contains more than one error, and because a partial match is worth showing as a possibility rather than presenting as certain. Results are ranked by how much of a known message was found, and anything below a high-confidence match is labelled as a possibility rather than an answer.
My error is not listed, so what should I do?
Use the suggest link under the results, which sends it through to us with the message prefilled. The list is deliberately short: we would rather have a small number of pages that genuinely answer the question than a large number of thin ones. Errors are added based on what people actually search for and paste.
How do you decide what goes on each error page?
Every cause on every page has to be traceable to Unity documentation, the Unity issue tracker, Unity Discussions where there is real consensus, or a Stack Overflow answer with meaningful agreement. Where a cause is real in practice but cannot be sourced that way, it is flagged rather than presented with the same confidence as the rest. Pages are also held to a minimum depth in the build itself, so a thin page fails to compile rather than shipping.
Why does pasting the whole stack trace work better than the first line?
It usually does not matter, because the matcher strips stack frames, file paths, line numbers and quoted type names before comparing. Pasting everything is simply less work than picking out the right line, and it means a trace containing two separate errors surfaces both. If a paste returns nothing, try just the message text without the frames.

Last updated: