How to Create a Definition of Done in Jira
A Definition of Done (DoD) is the team-level agreement on what "complete" means for any piece of work. Without it, "done" means different things to different people: done writing code, done testing, done deploying, done documenting. In Jira, you can encode your DoD directly into your workflow so issues cannot move to Done status until every condition is met.
This guide covers creating a practical Definition of Done in Jira using workflow transitions, checklist fields, and automation rules that enforce DoD without relying on honor-system reminders.
Step-by-step guide
Define your team's DoD criteria
Before touching Jira, align as a team on what constitutes done. A typical engineering DoD includes: code reviewed and approved, unit tests written and passing, feature tested in staging, accessibility checked, documentation updated, and product sign-off received. Write these out as a numbered list. This list becomes your Jira configuration.
Add a DoD checklist custom field
In Jira Project Settings > Fields > Custom Fields, create a new "Checkboxes" field called "Definition of Done." Add each DoD item as a checkbox option. Then go to Screens > configure the field to appear on the View Issue and Edit Issue screens for Story and Bug issue types. This field appears on every story, not just when someone remembers to add it.
Configure a workflow transition guard
In Jira Project Settings > Workflows > Edit your workflow. Find the transition from your penultimate status (e.g., "In Review") to "Done." Add a Transition Condition: "All required fields must be set." Select your DoD checklist field. With this condition, Jira will block the transition to Done if any DoD checkbox is unchecked. This is the enforcement mechanism.
Set up a post-function to log the DoD completion date
On the same Done transition, add a Post Function: "Update Issue Field." Set the "DoD Completed Date" custom date field to the current date. This creates a timestamp you can use in reporting to measure how long issues spend in review before passing DoD.
Create a board filter for DoD-blocked issues
Create a JQL filter: status = "In Review" AND "Definition of Done[Checkboxes]" not in ("All checked"). Name this filter "Blocked by DoD." Add it as a Quick Filter on your board. Engineers and QA can click this filter to see which issues are stalled because DoD criteria are not met.
Run a weekly DoD retrospective
At the end of each sprint, pull a Jira report filtering for issues where the DoD date minus the Development start date is more than 3 days. These are issues that got stuck in DoD review. Use these as the input for the retrospective: what is causing DoD criteria to fail most often? Adjust the DoD list based on recurring patterns.
Common mistakes
Making the DoD too long
A DoD with 15 items becomes a bureaucratic checklist that engineers rush through without thinking. Cap DoD at 7-8 items. Everything that is "always true" (e.g., no console errors) should be enforced by CI/CD, not a manual checklist.
One DoD for all issue types
A bug fix has different done criteria than a new feature. Bugs do not need new documentation. Features need product sign-off that bug fixes often do not. Create separate DoD checklists for Story, Bug, and Tech Debt issue types in Jira.
Not updating the DoD after incidents
When a production incident traces back to a missing DoD step (e.g., "we never tested the error state"), add that step to the DoD immediately. The DoD is a living document, not a one-time configuration.
Bypassing the workflow condition for urgent fixes
Under pressure, teams skip DoD for "just this one hotfix." Every bypass erodes the norm. Instead, create a separate "Hotfix" issue type with a minimal DoD (code reviewed, deployed, smoke tested) that is fast but still structured.
Tips
Include a "Product PM sign-off" checkbox — this creates accountability and prevents engineering from closing tickets the PM has not reviewed
Use Jira Automation to send a Slack message to the PM when an issue reaches "In Review" so sign-off does not block Done for more than a few hours
Display the DoD field prominently on your board by configuring card layout to show custom fields
Export your DoD checklist completion rate from Jira monthly to show stakeholders that quality processes are being followed
How Vantage helps
Vantage tracks ticket status bi-directionally with Linear and Jira. When your team marks a ticket as Done in Jira, Vantage flags the corresponding requirement as implemented. If the ticket was closed without full DoD completion (detectable via the custom field), Vantage can surface that as a risk on the project health dashboard.