Blog

How to Prep a D&D Session: My DM Workflow

How I prep and run a homebrew D&D session: Obsidian notes, a lazy prep template, a battle map printed to scale, and the free tools I use at the table.

Quill & Tankard

My Obsidian prep note for session 11, with the DM notes, a read-aloud strong start, and potential scenes for an arena fight.

This is exactly how I prep a D&D session and then use that prep to run the game. I'll go from reviewing my campaign notes and planning the session, to making the battle map, to running the table, and finish with how I document what happened. If you'd rather watch, there's a video version of this workflow.

Full disclosure: one of the tools here, Quill & Tankard, is the app I made to help me run the game. I know there are a lot of D&D tools out there but I opted to make something that fit my workflow. Everything else is someone else's free tool.

How do I prep a D&D session?

I prep each session in a few repeatable steps, and most of the work is filling out one template. Here's the whole workflow:

  1. Review my campaign notes in Obsidian, especially the open story threads.

  2. Fill out my session prep template: a strong start, scenes, secrets and clues, locations, NPCs, monsters, and rewards.

  3. Print the battle map to scale.

  4. Print and cut the minis.

  5. Load the session's characters, items, and sounds into Quill & Tankard and run the game from there.

  6. Write a session summary right after the game.

The rest of this post walks through each step with my real prep for session 11 of my homebrew campaign.

How do I organize my campaign notes in Obsidian?

I keep every campaign session note in Obsidian which is a clean, minimal editor that saves each note as a Markdown file on my computer. If you know how folders work on your computer, you can use Obsidian. The learning curve is low and I came over from Google Docs. Obsidian is very popular in the D&D community and has been recommended many times.

I use the free version. Obsidian also has lots of helpful and cool plugins but you don't need any of them to start. I use a Git plugin, which tracks versions and keeps a copy of my files online. The main files stay on my computer.

Each document is called a "note" and the folder that holds all of them is the "vault". My vault is organized the way I like to run my campaign, but you can set yours up however you want:

Folder

What's in it

DM Toolkit

House rules, NPC names, and other resources I might need during a session

Locations

The cities in my homebrew world, and the districts and places inside them

Lore

Items, plots, and NPCs, each broken down further

Party

One note per player character: what I want to know about them, and where their character sheet is at

Prep

One folder per session, holding that session's prep notes

Session Summaries

What actually happened in each past session

Campaign State

The current state of the story

The campaign state note

The campaign state note is the most important note I have as the DM. It tells me where the story is right now and gets updated after every session:

  • the current in-game time, roughly

  • where the party is and what's happening right now

  • who's in the party, players and NPCs

  • the open threads: tasks they're on, side quests, deals they've made, and things to follow up on

  • what the party knows about the larger plot

  • the secrets the party doesn't know yet

The campaign state note in Obsidian, with the vault's folders on the left, and the sections for where the party is and who is in the party.

What goes in a session prep template?

My session prep template has a section for pre-session DM notes, then the sections from Sly Flourish's lazy RPG prep. Prepping a session mostly means filling out these sections:

Section

What I write

DM notes

Reminders, a recap of the last session and a link to the open threads

Strong start

How the session opens: a fight, an event, or a scene

Potential scenes

A few scenes that might happen

Secrets and clues

What NPCs might reveal and/or physical clues like letters

Fantastic locations

Places to introduce. For example, a cave or a specific building in a city

Important NPCs

Who the party will meet

Monsters

What they might fight

Items and rewards

Magic items, loot, gold, and accolades

The sections come straight from Sly Flourish's lazy RPG prep, so take that and run with it.

My empty session prep template in Obsidian, with headings for DM notes, start, potential scenes, secrets and clues, fantastic locations, NPCs, monsters, and items and rewards.

Before I write anything, I open the campaign state note next to the template. Right-click a link and choose to open it to the right, and you can read the open threads while you fill out the prep.

What a finished prep note looks like

Here's my prep for session 11 of my current D&D campaign. The party is in the middle of a fight in an arena tournament called the Kingsmaker Cup in the city of Myrilith.

  • Start: a short piece of narration to read out loud, to get the combat going. I put anything I read out loud in quotes.

  • Potential scenes: someone throws a vial into the arena, what happens if they lose round 2 or 3, what happens if they win round 2, and a small ceremony if they win round 3.

  • Secrets and clues: hints about how the tournament is won, and what the payoff is.

  • Fantastic locations: a link to a separate note for the arena, with the event's mechanics, the NPCs, and the stat blocks. It was too much to fit in the session prep note alone.

  • NPCs, monsters, and rewards: who they'll meet, what they'll fight in the tournament, and what they could win.

My Obsidian prep note for session 11, with the DM notes, a read-aloud strong start, and potential scenes for an arena fight.

The links throughout my notes connect them to each other. You make one with double square brackets around a note's name, like [[Campaign State]]. Obsidian links both ways, and the graph view shows how everything connects. The bigger the circle, the more notes link to it. My campaign state note is the biggest one.

The Obsidian graph view of my vault. Each note is a circle, and the campaign state note has the most connections.

How do I print a battle map to scale?

I used to print battle maps by copy and pasting the image into Google Docs and doing this very manual method of scaling it to a size that I want. Now, I print battle maps with the Map Print function in Quill & Tankard. I give it the map image and the size I want in feet, and it splits the map across Letter sheets with each 5 ft square printed at 1 inch, the size of a mini's base. Making the map itself is outside the scope of this post. I'm assuming you already have a map image you like.

  1. Open Map Print and add the map image. You can choose a file, drop it in, or paste it.

  2. Enter the map's width or height in feet. Map Print works out the other side, the number of squares, and how the sheets fall.

  3. Pick a grid: dark lines, light lines, or none, and how thick they are.

  4. Download the PDF, and print it at Actual size / 100%.

  5. Measure the scale check on the sheet to make sure 1 square is 1 inch.

  6. Cut the top and left margins, overlap each sheet onto its neighbor so the grid lines match, and tape them together.

The PDF includes an assembly sheet that shows where each sheet goes. A 100 ft arena, for example, comes out as 20 × 20 squares on 6 Letter sheets. The map image never leaves your browser.

Map Print with a 100 ft arena map, a dark grid, and dashed seams that split it into 6 Letter sheets labeled A1 to B3.

Minis

For minis, I use Printable Heroes. It has a wide selection of humanoids and monsters, and a lot of good free options. Print them out, cut them up, and attach each one to a base.

The Printable Heroes miniature browser with search results for knight: human knights, a death knight, an elf paladin, and clerics.

How do I run the session from one browser tab?

I run the game in Quill & Tankard, which I built because I got tired of juggling combat, background music, and my session notes across a bunch of different places. It's free, there's no account, and it saves everything in your browser. It has four tools and a compendium.

Soundboard. It holds the music, ambience, and sound effects I've collected, and each one plays with a hotkey. For town ambience and music, I press 3. Shift+S stops everything. It plays YouTube videos and publicly available audio files. See the soundboard.

The Quill & Tankard soundboard with a sound playing, and the hotkey shown on each sound's tile.

Roster. It holds every PC, NPC, and monster in my campaign, and I can filter it to one session and then by type. During prep, I fill out each character's details. For stat blocks, I use any D&D stat block generator on the web and paste the result in. Hover over a card and you see its stat block and HP. See the NPC tracker.

The Quill & Tankard roster filtered to one session, with a monster's stat block showing on hover.

Items. I make up a lot of homebrew items, just for fun, and the items tracker keeps a card for each one. Like the roster, I can filter it by session and hover over a card to see its details.

Combat tracker. I add the combatants, enter the players' initiative rolls, roll for the NPCs, and press Start Combat. It shows the round and whose turn it is, and the keyboard runs everything: the right arrow moves to the next turn. The combat log beside the order records what happened in each round, because I sometimes forget what happened earlier in a fight. When the fight ends, I press Finish Combat, and the log stays. See the initiative tracker, or my walkthrough of one fight.

The Quill & Tankard combat tracker in round 1. The Mage holds Hold Person on a paralyzed Kaz Ironvein, and the combat log reminds the DM to roll the Mage's concentration save.

Compendium. When I need a rule mid-game, I search the compendium instead of flipping through a book. Press Ctrl+K or ⌘K on a Mac, from any tool, and search creatures, spells, and conditions by name. It holds the 2024 rules content of the System Reference Document 5.2.1 (SRD), which Wizards of the Coast publishes for free. An entry opens in a panel over whatever tool you're in, so the fight stays where it is.

  • Creatures. Read a monster's stat block, then add it to the roster or straight into combat.

  • Spells. Cast a spell from a combatant's card. The tracker places the spell's conditions on its targets and tracks concentration.

  • Conditions. Click a condition tag, such as Frightened or Prone, to read what it does. The compendium holds all 15 conditions.

The Quill & Tankard compendium open over the combat tracker, showing the Fireball spell's casting time, range, components, and damage.

What do I do after the session?

Right after the session, I write a quick summary in Obsidian while everything is fresh in my mind. Then I turn it into a short podcast that my players can listen to before the next session, or any time they want to refresh their memory. The podcast is completely optional but it's fun to have. Many times, we've laughed at the table for some of the funny things the AI podcasters say, not what they say but how they say it.

  1. Write the session summary in the Session Summaries folder.

  2. Open NotebookLM, which is free, and create a notebook. Mine holds the summaries from every past session.

  3. Add a source, choose copied text, and paste in the new summary.

  4. Open Audio Overview. Pick the sources it should draw on: earlier sessions for context, or only the latest one.

  5. Add a prompt with any details you want it to follow, and press Generate.

After about 5 to 10 minutes, you get a conversational podcast of two hosts talking through the last session.

The Customize Audio Overview dialog, with my session summaries as sources and a prompt that tells the hosts what to focus on.

Try the workflow

That's my full workflow, from prep to running the game to documenting it afterwards. Every tool here is free and easy to pick up, so you can get back to world building. If you want to run your next session from one tab, open Quill & Tankard.