Bug severity vs priority: real examples that stick

Severity is about impact; priority is about order. The distinction sounds academic until you watch a mislabeled ticket burn a team's trust in QA.

Bug severity vs priority is the first classification question every tester gets asked, and the confusion is understandable because both fields sit next to each other on the same JIRA ticket. The distinction is simple. Severity measures how badly the bug damages the system or the user: crash, data loss, cosmetic glitch. Priority measures how urgently the business wants it fixed relative to everything else. Severity is a technical fact. Priority is a scheduling decision. They correlate often, but not always, and the cases where they diverge are exactly the ones worth understanding.

Severity vs priority: the four quadrants

Who decides which

Ownership is the part teams skip, and it's the part that prevents arguments. As the tester, I set severity, because I observed the failure and can describe its technical impact objectively. The priority call belongs to whoever owns the backlog, usually the product owner, because it depends on things I can't see from a stack trace: release commitments, customer contracts, what else is in the sprint. I can recommend a priority, and I often do, but recommending and deciding are different jobs. A tester who quietly accepts a severity downgrade, or unilaterally sets everything to highest priority, is doing the wrong half of someone else's job.

How mislabeling erodes trust

Labels are a currency, and inflation ruins currencies. Mark every bug critical and within a month "critical" means nothing; developers start triaging your tickets themselves, which is a polite way of saying they've stopped trusting your judgment. Under-labeling costs the same trust in the other direction: call a data-loss bug minor once, and every future "minor" gets a suspicious second read. The entire value of these two fields is that people can act on them without re-verifying your work. Accurate, boring, consistent labeling is one of the fastest ways a junior tester builds a reputation, because it's visible on every single ticket you file.

A simple rubric

When I'm unsure, I answer two questions separately, in order, without letting the first answer contaminate the second:

  1. If a user hits this, how bad is their day? Data lost or app unusable: critical. A core flow blocked with no workaround: major. Annoying but there's a workaround: minor. Cosmetic: trivial. That's severity, and it never changes based on deadlines.
  2. How many users will hit it, how visible is it, and what does the release calendar say? That conversation, with the product owner, sets priority.

Rule of thumb: severity answers "how bad?" and belongs to QA. Priority answers "how soon?" and belongs to the business. Never let one field silently answer the other's question.

Once the two fields stop blurring together, triage meetings get shorter, tickets stop bouncing back with relabeled fields, and your name on a bug report starts meaning the label is right. That's a small thing to be known for, and a surprisingly valuable one.