The Bug Report You Didn't Write

"It doesn't work" is not a bug report. It is a request for someone else to do the reporting for you: to reproduce your steps, guess your environment, and rediscover the error you already saw once and let scroll away.

The missing report costs more than the bug

A real bug usually takes minutes to fix once someone can see it. A vague report can burn an hour before anyone even reaches that point, spent asking follow-up questions, guessing at setup, and reproducing something the reporter already reproduced once. The bug was never the expensive part.

What you did

Not "using the app," the actual steps: which command, which button, which input. Someone reading your report should be able to follow the same path without asking you anything first.

What you expected

State the expectation out loud, even when it feels obvious. Obvious to you is not obvious to the person reading the report, and sometimes writing it down is how you notice the expectation itself was wrong.

What happened instead

Describe the actual result, not your interpretation of it. "It crashed" is an interpretation. "The page went blank and the console showed a red line" is what happened.

The exact error text

Not a paraphrase, not "some kind of error," the literal text. Paraphrasing an error is like paraphrasing a phone number: the parts you drop are usually the parts that mattered. Copy and paste it.

Four lines, not a paragraph

A good bug report is short. What you did, what you expected, what happened, the exact error text. Four lines, written once by the person who saw the bug, save everyone else from writing them by hand later.