How to find old decisions in Slack (and stop losing new ones)
Decisions get made in Slack threads and then scroll out of sight. How to dig up an old decision today, and a lightweight system so new ones stay findable.
The KnowWhyy team · · 5 min read
"We decided that in a thread a few months ago." Everyone on a team using Slack has heard some version of this sentence, usually followed by twenty minutes of scrolling, a few wrong search terms and finally a message to whoever might remember. The decision was real and it was written down. It is just very hard to find again.
This guide covers how to find an old decision in Slack right now, and a set of small habits that make sure the next one doesn't disappear.
Why Slack is where decisions go to hide
Slack is a great place to make a decision. People can weigh in quickly, disagree in the open, and reach a conclusion in an afternoon instead of waiting for a meeting. The trouble starts afterwards.
The conclusion is buried in a reply. The first message in a thread is the question. The decision is reply 23, often phrased casually: "ok let's go with option B then."
Search matches words, not outcomes. Searching for "decided" or the feature name returns dozens of messages that mention it without settling anything.
Context is spread across channels and DMs. Part of the debate happened in #backend, part in #product, and the final call in a DM that nobody else can see.
It shows in how developers actually look for answers. In the Stack Overflow 2024 Developer Survey, only 3.7% of professional developers said Slack search is the first place they go with a technical question at work, against 18.5% who ask a coworker first. The same survey found that 70.3% of developers know which system holds an answer, but only 56.2% can find answers quickly. Knowing it's "somewhere in Slack" is not the same as finding it.
How to find an old decision today
Slack's search is better than most people think, if you use its modifiers.
in:#payments retry only one channel
from:@maria in:#payments retry one person in one channel
retry after:2025-03-01 before:2025-04-15 a date window
retry is:thread only messages inside threads
"retry policy" exact phrase
-is:dm retry leave out direct messages
A few techniques that tend to work:
Search for the outcome language, not the topic. Try words people use when they conclude: "let's go with", "agreed", "decision", "final", "going forward", "we'll do". Combine them with the channel: in:#payments "let's go with".
Narrow the date window first. If you know roughly when the change shipped, find the pull request or release date, then search the two weeks before it. Decisions usually happen shortly before the code.
Search for the artefacts. Links are easier to match than prose. Search for the PR number, the issue key, a doc title or a dashboard name that would have been pasted into the thread.
Look for the people. If you know who owned the area at the time, from: their name in the relevant channel is often the fastest path.
Open the whole thread. Once you find a promising message, read the full thread and the messages around it. The conclusion is often a reply or two after the one search found.
If you still can't find it, ask in a public channel with what you already tried. "Does anyone remember why we chose option B for payment retries? I checked #payments from March to April and PR #812" gets a much better response than "why do we do it this way?"
A lightweight decision system for Slack
Search tricks help with the past. To stop losing decisions in the future, you need a few habits that cost seconds each, not a new process.
1. Mark decisions so they're searchable
Agree on a single marker that means "this is the decision." It can be a prefix, an emoji reaction or both. A prefix is easiest to search:
DECISION: We'll retry failed card charges once after 7 seconds,
then mark the invoice as failed and email the customer.
Why: provider rate-limits retries to 1 per 5s per card; more retries
caused duplicate-charge tickets in March.
Owner: @maria · Revisit if: failed-charge rate goes above 3%
Links: PR #812, incident doc
Now "DECISION:" in:#payments finds every decision in the channel. Teams that prefer emoji can agree that a ✅ reaction on a summary message means "decided", though a text prefix is more reliable to search.
2. Close every deciding thread with a summary
The person who started the thread, or whoever is driving the decision, writes a final reply in the format above. That one message saves every future reader from reconstructing the outcome from 40 replies. Tick "Also send to #channel" so the summary appears in the main channel as well as the thread.
3. Keep decisions out of DMs
DMs are fine for quick questions, but a decision that affects other people should end up in a channel. If a call gets made in a DM or a meeting, post the summary in the relevant channel afterwards. A one-line rule your team can agree on: "If it changes how other people work, it gets a DECISION message in a channel."
4. Copy important decisions somewhere durable
Slack is where you decide. It shouldn't be the only place the decision lives, especially given the retention limits above. Within a day or so, copy significant decisions into a durable home:
a decisions database in Notion, for product and process decisions,
the PR description, when the decision is about a specific change.
Link back to the Slack thread from there, so anyone can still read the full debate.
5. Consider a #decisions channel
Some teams create a single channel where every decision summary is cross-posted, whatever channel it came from. It becomes a readable changelog of how the team works. It only works if posting there is cheap, so keep the format short.
Choosing where each decision lives
Kind of decision
Decide in
Record in
A specific code change
PR review or team channel
PR description, commit message
Architecture or tooling
Team channel or meeting
ADR in the repo, linked from Slack
Product scope or priority
Product channel
Notion page or roadmap doc
Team process
Team channel
Team handbook page
The point isn't the specific tools. It's that every decision has one obvious home, and the Slack thread links to it.
Where a tool helps
Even with good habits, most of a team's history was written before anyone adopted them. KnowWhyy indexes the Slack channels you choose, keeping thread replies together with the message that started them, alongside your GitHub and Notion. Direct messages are never read. You ask in the KnowWhyy web app, for example "what did we decide about retrying failed charges?" The answer cites the specific messages, PRs or pages it relied on, so one click takes you back to the original thread. If the indexed sources don't contain the answer, it tells you. See AI search for Slack, or start free with a team of up to 2.
The short version
Decisions in Slack are usually buried in thread replies and phrased casually, so plain keyword search misses them.
Use in:, from:, after:/before:, is:thread and exact phrases, and search for outcome words like "let's go with".
Mark decisions with a searchable prefix like DECISION: and close deciding threads with a summary.
Keep decisions out of DMs, and copy important ones into the repo or Notion with a link back.
Give every kind of decision one obvious home, so nobody has to guess where to look.