How to track NPCs in your RPG campaign
Your players remember every NPC you've ever improvised. You remember roughly none of them. The smuggler with the great voice you did once? They want her back next session, and you've already forgotten her name. Here's how to keep your cast straight.
Why NPCs slip away
Running a game has a cruel asymmetry to it. A player meets one memorable stranger and files them away forever. You invent that stranger on the spot, juggle them alongside forty other people in your world, and lose them by the drive home. It isn't carelessness. It's volume. A single session can introduce a tavern keeper, a rival adventurer, a quest-giver, two named guards, and a villain glimpsed from a balcony, all new, all improvised, all competing for the same overworked slot in your head. By next week the table half-remembers that "the merchant guy" said something important, and nobody (least of all you) can say what or who. And it compounds: by session 13 the whole cast starts to fade at the edges, names blurring into the wrong faces, threads going quiet because the person holding them slipped your mind three weeks ago.
NPCs are uniquely vulnerable because the good ones are spontaneous. The prepped villain with a backstory survives. The throwaway barkeep who accidentally became the party's favourite person does not. And it's always the throwaway one the players want back, which is a small recurring heartbreak: the campaign's funniest moments leak out one forgotten name at a time.
The most beloved NPC in your campaign is the one you made up in eight seconds and immediately forgot.
What to record per NPC
You don't need a character sheet for every face the party passes. You need the few things that let you bring an NPC back convincingly. Five fields cover almost everything that matters:
- Name, plus a pronunciation note if it's the kind of name you'll fumble. A name you can't say out loud is a name you won't reuse.
- One trait, a single memorable hook. The blind ferryman. The guildmaster who never blinks. The knight who quotes scripture before every fight. One line is enough to snap the whole performance back into focus.
- What they want, their motive, even a crude one. An NPC with a want has gravity, so the party can bargain with them, betray them, or be betrayed. An NPC without one is set dressing.
- Where you met, the location they're tied to, so you know where they'll plausibly turn up again and which thread they belong to.
- Relationship to the party, the most volatile field and the most useful. Ally, debtor, grudge, unfinished business. This is the line you'll update most often, because it's the line that decides how a scene opens.
That's it. Everything else (appearance, voice, the colour of their cloak) is optional and can wait until it's relevant. The discipline isn't writing more. It's writing the five things that let a tired GM walk an NPC back on stage without missing a beat. If you want a more formal version of the same instinct, the Alexandrian's Universal NPC Roleplaying Template packs a reusable structure you can grab and play straight off the page.
Cross-link them to your world
An NPC alone on a card is half a fact. NPCs only mean something through what they're attached to, and the attachment is where forgetting does its quietest damage. The smuggler matters because she works the river docks, and she's dangerous because she answers to the Ash Wolves. Record the person without those links and you've kept a name but lost the web that made it dangerous. It's why the Alexandrian's "Don't Prep Plots" is worth keeping in mind: track NPCs as active agents with their own goals rather than lines in a script, and the campaign keeps moving even when the party doesn't.
So tie each NPC to the two things that give them weight, locations and factions. Where do they live, work, or lurk, and who do they answer to? Done consistently, this turns a flat list of names into a map of your world's relationships: open the docks and the NPCs who haunt them are right there, open a faction and its faces come with it. It's the cross-referencing that turns a pile of notes into a usable RPG campaign wiki, where the NPCs are the threads and the locations and factions the loom.
A one-card-per-NPC system
The lightest tracker that actually works is one card per NPC: no buried paragraphs in session logs, no scrolling a wall of prose to find whether the duke is owed a favour or owes one. One person, one card, one searchable place. The whole system fits in a sentence. Whenever a named NPC appears, they get a card, and whenever the relationship shifts, you update one line.
A finished card is small enough to read at a glance mid-scene:
Maela: blind ferryman, smells of river tar. Wants: safe passage for her people past the watch. Met: the docks at Vornhaven. Party: owes you nothing; you owe her one future favour, and she will call it in.
Four lines. You can run Maela off that card a year from now and the players will swear you'd planned her all along. The reason a card system beats a session log is retrieval. Logs are organised by when something happened, and you almost never remember the date. You remember the person. Cards are organised by who, which is how your brain actually files NPCs. The rule that keeps it alive: a card must be faster to update than to skip. The moment it feels like homework, it rots. Keep them short, keep them few-fielded, and the habit survives. This same instinct, capturing the recurring people, places and threads rather than the transcript, sits at the heart of good RPG session notes generally.
Common NPC-tracking mistakes
Most NPC trackers fail the same handful of ways, and none of them are about effort.
- Names without hooks. A list of twenty NPC names is twenty strangers. Without one line of trait or motive, you can't tell them apart, can't perform them, and won't reuse them. The name is the index; the hook is the NPC.
- Burying NPCs in session logs. "Talked to a guy at the docks" scattered across eight session write-ups is data you'll never retrieve mid-game. If an NPC doesn't have their own findable home, they effectively don't exist when you need them.
- Letting relationships go stale. The ally who became an enemy three sessions ago is still filed as "friendly," and you open the scene warmly to a player groaning that he betrayed you. The relationship line is the one field that must stay current; everything else can lag.
- Over-statting walk-ons. Writing a full backstory for the guard who has one line wastes the energy that should go to the NPC who'll actually return. Track depth in proportion to recurrence: a name and trait for the extra, a fuller card for anyone who keeps showing up.
- One giant document. A single endless "NPCs" doc nobody can search is a graveyard. The whole point is fast lookup; if finding the right NPC takes longer than improvising a new one, the tracker has failed at its only job.
NPCs the players track, and the ones you do
The party keeps its own NPC ledger, and it never matches yours. Players remember who insulted them, who owes them money, and who has a great voice. You need to remember who's secretly working for the villain, which thread an NPC is holding open, and what the world does next because of them. Same cast, two purposes, and a shared NPC tracker can serve both.
That's the case for a shared chronicle with a public layer the players read and a private layer only the GM sees. The party gets the faces and the relationships; you keep the secrets and the strings. One source of truth, two audiences, so the table stays aligned on who everyone is without you publishing the twist three sessions early. It's the same logic that should run a whole living campaign: shared where it helps, hidden where it must be.
Let the cast track itself
Here's the catch that defeats every system above: the GM is the person least able to maintain it. You're running the world, voicing the cast, and improvising the next NPC. You are categorically not also typing up a tidy card for the one who just walked off stage. So the tracker gets thin exactly when the session is richest, and the best improvised NPC of the night is the one most likely to vanish, because you were too busy being them to write them down. And every hour you spend afterwards filing cards by hand is an hour stolen from the next session, the part you actually showed up for. The aim was never to keep more files. It was to keep the cast and get your evening back.
Worth remembering, too, that the only cast that counts is the one that reached the table. An NPC you sketched in prep but the party never met doesn't exist in the campaign yet, so don't bury the people they actually spoke to under a backlog of ones they didn't. Track what landed in play, and hand the logistics off.
Which is why the best NPC card is increasingly one you don't write at all:
Or let the Wizard conjure the cards
Kompanion records your session straight from Discord (or an uploaded audio file, or a YouTube link), transcribes it, and then extracts a card for every named NPC (with a trait, what they want, and where they appeared) alongside cards for the locations and factions they're tied to. Your improvised smuggler shows up as a finished card before you've even left the call. AI takes the notes. You run the game, and you keep the final word: every card is yours to edit.
See how AI builds the cardsFree to start, no credit card. Create your campaign or browse a live one first.
FAQ
What should I record about each NPC?
Five things: the name, one memorable trait, what they want, where you met them, and how they relate to the party right now. Those fit on a single card and answer the only mid-session question that matters, which is who this is and why the players care.
How do you keep track of NPCs in a long D&D campaign?
Use one card per NPC instead of paragraphs buried in session logs. Keep the cards in a single searchable place, link each NPC to their locations and factions, and update the relationship line whenever the party's standing changes.
Can AI build my NPC tracker automatically?
Yes. If you record the session (for example from a Discord voice channel), an AI can transcribe it and extract a card for each named NPC, with a trait, what they want and where they appeared. You stay the editor. Kompanion conjures these cards for you.
From the GM's bookshelf
The blogosphere has been losing NPCs and inventing systems to find them again for years. Here are three reads worth more than the eight seconds it took to improvise that smuggler.
- The Alexandrian: Universal NPC Roleplaying Template: a fill-in-the-blanks structure you can keep at the table and play any NPC off cold, no backstory required.
- The Alexandrian: Don't Prep Plots: the case for prepping NPCs as agents with goals rather than scripted beats, which is the difference between a cast and a screenplay.
- Sly Flourish: Organizing Your RPG Prep Notes: a sane home for your notes, including a page per recurring NPC so the duke stops hiding in session log four.
Related: how to take RPG session notes · building an RPG campaign wiki · AI session summaries.