campaign notes · gm craft

How to Keep Track of Your D&D Campaign (Without a Spreadsheet)

July 19, 2026 · Updated October 14, 2026

To keep track of a D&D campaign, you need three things: a single place where your campaign’s facts live, a habit of updating those facts from what actually happened at the table, and a quick check before each session so last month’s details don’t ambush you tonight. Most GMs have a pile of notes, update them when they remember, and skip the check entirely. That’s why the innkeeper changes names and the dead cultist shows up for dinner.

Here’s the system, tool-agnostic first, then the shortcuts. It works for 5e, Pathfinder, Call of Cthulhu, or a homebrew system, because none of it touches the rules. It’s about people, places, items, quests, and what happened.

Why campaigns lose track (it’s not laziness)

Campaigns drift for a structural reason: the table writes your story faster than you can file it. In a novel, the author decides every fact. In a campaign, four players invent an alias for the rogue, adopt a goat, and talk the bandit captain into switching sides, all in one evening. You improvise an innkeeper’s name in half a second. Nobody writes it down. Three months later a player asks after him.

Three patterns cause most of the trouble:

  • Improvised details. Names, descriptions, and prices you made up on the spot and never recorded. They exist only in your players’ memories, which are better than yours.
  • State that changed in play. Someone died, an item changed hands, a faction turned hostile. Your notes still describe the world as it was before the session.
  • Secrets and who knows them. The mayor is secretly with the cult. Which players know that? Since when? That fact lives in your head and nowhere else.

Any system has to handle all three, not just the first.

Step 1: Keep a codex, not a diary

Most campaign notes are a diary: one long document per session, in the order things happened. Diaries are great for remembering how a night felt and terrible for answering “who is the harbormaster again?” mid-session.

What you need alongside the diary is a codex: one short entry per thing that matters.

  • Entries: every NPC, player character, faction, location, item, quest, and house rule.
  • A few facts per entry: short and specific. status: alive. location: Saltmere harbor. owner: Kestrel. Not paragraphs. Paragraphs hide the one fact you need while a player waits.
  • Links between entries: Hollis Brand runs Saltmere. The Drowned Choir wants the Sunken Crown. Kestrel holds the wax seal. Most plot-critical facts are relationships, and they’re exactly what diary-style notes lose.

Keep entries small. A codex you dread updating is a codex that’s already out of date. (If you’re choosing software for this, we compared the main options in our campaign management tools roundup.)

Step 2: Update the codex from what actually happened

This is the step that separates a campaign that holds together from one that slowly contradicts itself. After each session, before you forget, go through your notes and ask four questions:

  1. Who died, or changed? Mark it, and note which session it happened in.
  2. Who moved? The NPC who fled town is no longer behind the counter.
  3. Which items changed hands? Loot, stolen goods, the cursed sword someone insisted on keeping.
  4. What did the players learn? Any secret that came out, and which session it came out in.

Record when each fact changed, not just the new value. status: dead (session 2) is far more useful than status: dead, because it tells you that the scene you prepped for session 1’s flashback is still fine, and the one where she greets the party in session 3 is not.

Ten minutes the morning after a session saves you an hour of “wait, did that happen?” later.

Step 3: Track secrets separately from facts

Secrets are a different kind of fact: true in your world, unknown to your players. The mayor’s allegiance. The patron’s real name. The fact that the map is a forgery.

Mark them as secret in the entry, and when the party learns one, note the session they learned it. This gives you two things. First, you always know which reveals you still have left to play. Second, you know what your players’ characters can legitimately act on, which matters the moment a player starts treating a hunch as a fact.

Step 4: Check before every session, not at the end of an arc

A five-minute look before each session catches most problems while they’re still cheap. A workable routine:

  1. Read last session’s recap. If you don’t have one, write three lines now.
  2. Check every entry your prep touches. Is that NPC alive? Where are they? What do they know?
  3. List open quests and loose threads. These are what players will ask about.
  4. Check your secret list. Which reveals are still waiting, and does tonight’s plan spoil one by accident?

Then once per arc, skim the whole codex for anything that no longer makes sense.

Why the spreadsheet always loses

Spreadsheets fail for campaigns for the same reason they fail everywhere: they only answer questions you think to ask. A sheet will tell you Old Wren is dead, but only if you look her up, and the errors that reach the table are exactly the ones you were sure about. Worse, spreadsheets decay fastest during the busiest stretch of a campaign, when you’re prepping hard and updating nothing. By session five the sheet describes a world that no longer exists.

The automated version

Everything above can be done by hand, and GMs have run long campaigns that way for fifty years. But steps 2 and 4 are mechanical cross-referencing, which is what software is good at. This is the problem StoryGuard was built around. You write your session notes and @mention NPCs, places, and items as you go. After the session, What changed? reads your notes and proposes codex updates (who died, who moved, what changed hands, which secrets came out), and you approve each one. The prep sheet pulls together last session’s recap, open quests, loose threads, and unrevealed secrets. And a continuity check flags it when your new notes contradict what you already established, like an NPC who died two sessions ago turning up at the docks. (For what that kind of AI checking can and can’t do, see can AI help you run a campaign?)

However you implement it, the principle is the same: a codex of short facts, updated from what happened, checked before you play. Your players are already running the memory half of this system, for free, every session. The only question is whether you’re running the other half.

Keep reading
How to Retcon a Mistake in Your Campaign (Without Losing Your Players)
Your players caught a contradiction. Four ways to fix it at the table or between sessions, when to own the mistake, and how to stop it happening again.
World Anvil vs Kanka vs StoryGuard: An Honest Comparison for GMs
World Anvil, Kanka, and StoryGuard compared by what you need: a deep lore wiki, a free all-round campaign manager, or a session notebook that keeps itself current.