TL;DR
- Most teams make more decisions than they can remember. A decision log is the difference between institutional memory and institutional amnesia.
- A complete log entry requires eight fields: ID, date, context, options, decision, rationale, owner/approver, and expected outcome.
- Strategic, operational, and technical decisions each warrant slightly different formats — the fields are the same, the depth and review cadence differ.
- Amazon's one-way/two-way door framework is the fastest triage tool for deciding what needs full documentation vs. a brief note.
- DACI (Driver, Approver, Contributor, Informed) is the right role framework for decision logs — not RACI, which maps task execution rather than decision authority.
- This post includes ready-to-use templates for all three decision types, worked examples, and a retrospective review format.
Most organizations make far more decisions than they document. A three-person leadership team making five meaningful decisions a week will have logged over 250 choices in a year — most of which exist only as a memory in whoever was in the room. When that person leaves, gets promoted, or simply forgets, the reasoning disappears. The next team member facing the same situation starts from scratch, relitigates settled questions, or quietly reverses a decision no one knew had already been made. A decision log does not prevent bad decisions. It prevents the same bad decision from being made twice, ensures accountability is clear at the moment of choice, and creates the raw material for honest retrospectives on whether your reasoning was sound.
This post provides practical, ready-to-use decision log templates for strategic, operational, and technical decisions — along with field definitions, worked examples, and guidance on when to use which format.
Why decision documentation matters more than most teams admit
Research on decision quality consistently points to the same gap: organizations that document their decision-making processes — capturing context, options, and rationale — outperform those that rely on institutional memory and verbal consensus. A McKinsey survey on organizational decision-making found that companies where decisions are clearly documented and ownership is explicit report 25% higher project success rates. The mechanism is not mysterious. Documentation forces clarity before a decision is made, not after. The act of writing down the options and the rationale reveals gaps in reasoning that live discussion tends to paper over.
Amazon built "Have Backbone; Disagree and Commit" into its leadership principles for exactly this reason. The principle requires leaders to challenge decisions before they are made and then commit fully once a direction is chosen — neither capitulating early to avoid conflict nor undermining the decision after the fact. The documentation layer underneath that principle is what makes it operational. When the reasoning behind a decision is written down, the "disagree" phase has something concrete to engage with. Without it, the debate is about opinions rather than evidence.
Engineering organizations figured this out early. Architecture Decision Records (ADRs), popularized by Michael Nygard and now formalized in AWS and Microsoft Azure guidance, are lightweight documents that capture a single technical decision — the context, the options considered, and the chosen approach — and store them alongside the code they describe. The format has been adopted well beyond engineering because the underlying problem is universal: decisions made without a written record degrade the quality of every subsequent decision that depends on them.
The one-way vs. two-way door triage
Before building a decision log, it is worth establishing a triage framework. Not every decision warrants the same documentation overhead. Jeff Bezos introduced the one-way/two-way door metaphor in Amazon's 2015 shareholder letter, and it remains the most practical filter for operators deciding what deserves full documentation.
One-way door decisions are largely irreversible. Walking through them and walking back is either impossible or extremely costly. These include pricing model changes, acquisitions, entering or exiting a market, major org restructuring, key executive hires, and any commitment that creates a contractual or legal obligation. These decisions warrant the full log treatment: complete fields, named approver, documented dissent if applicable, and a scheduled retrospective review.
Two-way door decisions can be undone. Piloting a new tool, testing a process change, running a pricing experiment, or restructuring a team meeting cadence are all reversible at low cost. These still belong in the log — so the organization knows what was tried and what was learned — but they can be captured in a shorter format without a formal approval chain.
The practical rule: if a new COO or senior operator joining your team in six months would need to understand why a decision was made to do their job effectively, it belongs in the log. If the answer to that question is "they'd figure it out in a week," a brief note is sufficient.
Decision log roles: DACI, not RACI
Most teams default to RACI when they think about accountability frameworks. RACI is the right tool for mapping task execution — who does the work, who owns delivery, who gets consulted during execution, who gets the status update. It is the wrong tool for decision logs, where the question is not "who is responsible for completing this task" but "who has authority to make this call."
DACI — Driver, Approver, Contributor, Informed — maps decision authority, not task ownership. Each role means something specific:
| Role | Definition | Count |
|---|---|---|
| Driver | Owns the decision process — gathers context, surfaces options, runs the analysis, brings a recommendation. Not necessarily the decision-maker. | Exactly one |
| Approver | Has final authority. Can override the Driver's recommendation. Accountable for the outcome. | Exactly one |
| Contributors | Provide input, data, or expertise. Must be consulted before the decision is finalized. Can raise objections — which must be addressed or overridden explicitly. | One to five |
| Informed | Notified after the decision is made. No input into the decision. Receive the outcome and any required actions. | Unlimited |
The most important discipline in DACI is that there is exactly one Approver. Teams that list multiple approvers have not made a decision — they have created a committee. Committees produce either consensus (slow) or the appearance of consensus with unresolved dissent underneath. Neither produces good outcomes at the speed operators need to move.
Core decision log fields
Every decision log entry — regardless of type — should capture the same eight core fields. Optional fields can be added for specific decision categories. If your log has more than twelve fields, it will not get filled out consistently.
| Field | What to capture | Required? |
|---|---|---|
| Decision ID | Sequential identifier (e.g., DEC-2026-047). Enables cross-referencing from related decisions, project docs, or tickets. | Yes |
| Date | Date the decision was finalized — not the date it was first discussed or the date the log was updated. | Yes |
| Decision title | One sentence. Phrased as an outcome, not a question. "Move to annual billing as default" rather than "Billing model discussion." | Yes |
| Context and trigger | 2–4 sentences on what prompted the decision. Include any data, events, or constraints that made this decision necessary at this time. | Yes |
| Options considered | At least two alternatives. Include the "do nothing" option when it is genuinely viable. For each option, note the key trade-off in one sentence. | Yes |
| Decision and rationale | The chosen option and the specific reasoning. Include data cited, assumptions made, and any dissenting views that were considered and overridden. | Yes |
| Driver / Approver / Contributors / Informed | Named individuals for each DACI role. Do not use team names. "Engineering" is not an approver — a person is. | Yes |
| Expected outcome | What should be measurably true if this decision was correct. Quantified where possible. This is the basis for the retrospective review. | Yes |
| Review date | When to assess actual outcomes against expected. Set at the time of decision — not retroactively. | Yes |
| Reversibility | One-way door or two-way door. Determines review depth and escalation threshold if things go wrong. | Recommended |
| Related decisions | IDs of decisions that this one supersedes, depends on, or is likely to affect. | Recommended |
| Actual outcome | Filled in at the review date. Did the expected outcome materialize? If not, what was the variance and why? | Retrospective |
Template 1: Strategic decision log entry
Strategic decisions involve material resource allocation, market positioning, org design, or product direction. They are typically one-way door decisions with a 60–180 day impact horizon. The full template applies.
Decision ID: DEC-2026-031
Date: 2026-04-14
Category: Strategic — Pricing
Reversibility: One-way door (requires customer comms, contract amendments)
Title: Move Growth plan to annual-only billing starting Q3 2026
Context and trigger: Monthly billing on the Growth plan produces a 34% higher first-year churn rate than annual billing (cohort data, Q1 2026). Monthly customers also have 22% lower feature adoption at 90 days. Churn on monthly Growth is the primary drag on net revenue retention. Three competitors moved to annual-only for their mid-tier plans in the last 12 months.
Options considered:
- Option A — Annual-only for new Growth subscribers: Eliminates monthly churn vector at the cost of some top-of-funnel conversion. Estimated 8–12% reduction in new Growth trials.
- Option B — Monthly available at a 30% premium: Preserves optionality, mitigates conversion risk. Adds pricing complexity. Competitive benchmarking suggests this is unusual for the segment.
- Option C — Do nothing: Monthly churn continues to compress NRR. Not viable given 18-month ARR target.
Decision and rationale: Option A. The LTV gain from reducing first-year churn (estimated +$180K ARR at current cohort size) outweighs the projected top-of-funnel impact. Modeling assumes conversion rate drop of 10%, which produces a net ARR gain. VP Sales dissented — flagged risk that annual commitments will lengthen sales cycles. Dissent noted; review at Q3 close.
Driver: Sarah Chen (VP Revenue Operations)
Approver: Marcus Webb (COO)
Contributors: James Park (VP Sales), Priya Mehta (Head of Finance), Lena Torres (Product)
Informed: Full leadership team, Customer Success, Marketing
Expected outcome: First-year Growth churn below 18% (from 34%) by Q4 2026. NRR above 108% by end of year.
Review date: 2026-10-01
Related decisions: DEC-2026-018 (Starter plan pricing), DEC-2025-044 (Growth feature scope)
Template 2: Operational decision log entry
Operational decisions govern process design, vendor selection, team structure, and resource allocation within an existing strategic direction. They tend to have shorter impact horizons (30–60 days) and may be two-way door decisions, but they still need documentation to prevent process drift and enable retrospectives.
Decision ID: DEC-2026-038
Date: 2026-04-22
Category: Operational — Vendor / Tooling
Reversibility: Two-way door (12-month contract with 60-day notice clause)
Title: Replace Looker with Metabase for internal BI reporting
Context and trigger: Looker renewal is due 2026-06-01 at $42K/year. Only 4 of 18 licensed seats are active. Internal reporting has migrated to Notion and Slack-embedded charts for most operational needs. Engineering has flagged Looker's LookML maintenance overhead as a recurring drag during sprint planning.
Options considered:
- Option A — Renew Looker at reduced seat count: Saves ~$18K vs. full renewal. Retains existing dashboards with minimal migration effort. Does not address LookML maintenance overhead.
- Option B — Switch to Metabase Cloud: $500/month for unlimited viewers. Eliminates LookML overhead. 3–4 week migration effort estimated by data team. Loses some Looker-specific features (scheduled looks, complex pivots) used by Finance.
- Option C — In-house dashboards only (Notion + Google Sheets): Zero tool cost. Unsustainable at current reporting complexity. Rejected.
Decision and rationale: Option B. $6K/year vs. $24K for reduced Looker contract — a $18K annual saving. Finance team will replicate the two affected dashboards manually; estimated 6 hours of work. Migration timeline: complete before 2026-05-20. Data team confirms Metabase covers 100% of active use cases.
Driver: Aiden Novak (Head of Data)
Approver: Priya Mehta (Head of Finance)
Contributors: Data team lead, Finance analyst
Informed: Engineering, CS (uses Looker for usage reports), Sales Ops
Expected outcome: Migration complete by 2026-05-20. All active dashboards replicated. Zero reporting downtime during transition. $18K annual saving realized.
Review date: 2026-06-01
Related decisions: DEC-2025-011 (Data stack consolidation)
Template 3: Technical decision log entry (ADR format)
Architecture Decision Records follow a lighter format adapted from Michael Nygard's original template. They are stored alongside the code or system they describe — in a docs/decisions/ folder in the relevant repository. ADRs are append-only: when a decision changes, a new ADR supersedes the old one rather than overwriting it. This preserves the history of architectural reasoning even as the system evolves.
ADR-017
Title: Use Postgres as the primary operational database (not MongoDB)
Status: Accepted
Date: 2026-03-08
Deciders: Ravi Sharma (CTO), Dana Osei (Lead Engineer)
Context: The data ingestion pipeline currently writes structured event records (user actions, billing events, metric snapshots) into MongoDB. As the schema has stabilized over the past two quarters, the team is experiencing increasing pain from the lack of enforced schema, complex aggregation queries, and the absence of native joins for cross-entity analytics. MongoDB was chosen in the early prototype phase for schema flexibility. That constraint no longer applies.
Options:
- Option A — Migrate to Postgres: Strong relational capabilities, enforced schema, native joins, mature ORM support. Migration effort: 3–4 weeks for data team.
- Option B — Stay on MongoDB, add Mongoose schema enforcement: Reduces migration risk. Does not resolve aggregation performance or cross-entity query complexity.
- Option C — Dual-write to both during transition: Increases operational complexity. Adds risk of data divergence. Rejected.
Decision: Option A. Migrate to Postgres. Schema is now stable. The engineering cost of maintaining MongoDB workarounds exceeds the migration effort. Postgres is the team's existing area of expertise. All BI tooling already integrates natively with Postgres.
Consequences: Positive: simpler analytics queries, enforced schema, better ORM ergonomics. Negative: 3–4 week migration window with temporary read-replica of MongoDB maintained for rollback. Any service reading from MongoDB must be updated before cutover date 2026-04-01.
Supersedes: ADR-004 (MongoDB as primary database, 2024-11-12)
Decision log retrospective: closing the loop
A decision log without retrospective reviews is a repository of intentions, not a learning system. The review date field on every entry exists for one purpose: to force the question of whether the reasoning was correct, not just whether the decision was executed.
At the review date, return to the original entry and fill in the Actual Outcome field with three things: what actually happened, what the variance was from the expected outcome, and why. The "why" is the only part most teams skip — and it is the only part that improves the next decision.
Retrospective review format
Review date: [Date the retrospective was completed]
Expected outcome: [Copied from original entry]
Actual outcome: [What measurably happened]
Variance: [Quantified gap between expected and actual]
Variance explanation: [Was the decision wrong? Was the implementation wrong? Was the assumption wrong? Were external conditions the cause?]
What we would do differently: [1–3 sentences maximum. If nothing, say so.]
Status: Closed / Superseded by [DEC-ID] / Requires re-evaluation
The four possible outcomes of a retrospective are more instructive than most teams realize. A correct decision that produced the expected outcome validates the reasoning process. A correct decision that underperformed indicates flawed implementation, not flawed reasoning. A flawed decision that worked anyway points to luck or unmeasured variables — neither of which should generate false confidence. A flawed decision that failed is the most valuable: it shows exactly where the reasoning broke down.
Where to store your decision log
Format matters less than consistency and discoverability. The log that gets used is the one that lives where decisions already get made — alongside the documents, tools, and systems that prompted the decision in the first place.
Notion or Confluence (recommended for operators)
A single database with the core fields as properties allows filtering by category, owner, date, and status. Every entry is a page, so the context and options fields can be as long as needed without cluttering the index view. Tag decisions with the relevant team or initiative for cross-referencing. This is the right format for strategic and operational decisions where prose context matters.
Git repository (recommended for technical decisions)
ADRs belong in docs/decisions/ inside the relevant repository, versioned alongside the code they describe. When the code changes, the decision record is visible in the same pull request review. This is what makes ADRs actually useful — the reasoning is present at the moment someone is about to change the system it describes.
Spreadsheet (acceptable for small teams)
A shared Google Sheet with one row per decision works for teams making fewer than five logged decisions per month. Add a tab for retrospectives. The limitation is that context fields become cramped and the document does not scale past ~100 entries. Migrate to a proper database before it becomes unmanageable.
Common implementation failures
Logging decisions after they have already been made from memory
The value of a decision log degrades sharply with time. A decision logged a week after the fact has lost the specific reasoning, the options that were genuinely on the table, and the data that was actually cited. The log becomes a post-hoc rationalization rather than a faithful record. Entries should be drafted at the point of decision — even if cleaned up slightly before filing.
Listing every meeting discussion as a decision
Over-logging is as damaging as under-logging. If the log contains 200 entries after three months, most of them trivial, the signal-to-noise ratio falls below the threshold where anyone bothers to search it. Apply the triage framework: log decisions that set precedents, commit resources, or define constraints for future decisions. Everything else is operational execution that belongs in a task tracker, not a decision log.
Using team names instead of named individuals
"Engineering approved" or "the leadership team decided" are not accountable entries. Accountability requires a named individual. When accountability is diffuse, it is effectively absent. Every entry must have a named Approver — a specific person who can be asked at the retrospective whether the decision achieved what they expected.
Skipping the retrospective
A log of decisions with no retrospective completion is a document of good intentions. Review dates that pass without entries become evidence that the organization does not hold itself to account on outcomes. The retrospective loop is what separates a decision log from an archive.