Document Editorial SOPs in Obsidian with Daily Notes Links

A modern home office desk with a laptop open to the Obsidian app showing Daily Notes links. The scene includes scattered papers, a cup of coffee, and a potted plant, creating a vibrant and productive workspace atmosphere.

Set up a working folder structure in Obsidian

Okay first of all — I feel like anytime someone says they “document SOPs in Obsidian,” they either mean:

1. They dumped a few notes in a vault once.
2. They built a beautiful zettelkasten that accidentally became a rabbit hole of backlinks and memes.

I’ve done both. What I eventually landed on (after multiple vault purges and a period of Not Touching It) was a much simpler, flatter structure. I had too many levels and nested folders at first. What I actually needed was:

– One folder for Daily Notes
– One folder for finalized SOPs
– One folder (temporary) for WIP things I didn’t know how to classify yet

That’s it. No fancy “Projects” vs “Areas” vs “Resources” breakdowns like Tiago Forte says, unless you’re organizing a team vault. I’m not. This is just me trying to track how I do things, while everything keeps breaking 🙂

To create this:

1. Click the folder icon on the left sidebar in Obsidian
2. Make three folders: `SOPs`, `DailyNotes`, and `Scratch`
3. Inside `SOPs`, add no subfolders. Just raw notes. Trust me.

I almost put tags in file names for a while like `Zapier_TriggerNotFiring.md` but too many underscores started making things look like programming and it stressed me out. You can use tags inside the notes if needed — but keep file names calm, like `SOP Fix Zapier Webhook Twice.md` YMMV 😛

Use Daily Notes to link SOPs in context

Here’s where the magic starts — but only if you consistently use Daily Notes. I didn’t, at first. I left them blank. Just opened Obsidian, created a note manually, never clicked the little calendar icon. That was a mistake.

You want Daily Notes turned on in Settings → Core Plugins → enable “Daily Notes.” Then:

1. Go to Settings → Daily Notes
2. Set the location to your `DailyNotes` folder
3. Set a simple format like `YYYY-MM-DD`

Now every day it’ll auto-create a new note when you open Obsidian. That’s your scratch log for the day. It’s ugly. It’ll have notes like:

“`
– Webhook fired SEVEN times???
– Tried disabling app, no effect
– Will rebuild Zap from scratch (again)
– Link to SOP: [[Zapier Webhook Loop Fix]]
“`

By jotting down notes like this, you start to naturally build a library of SOPs. The trick is to use `[[square brackets]]` to link to potential SOPs even before they exist. This is where Obsidian shines. If you reference `[[StopZapTriggerStorm]]` and that file doesn’t exist yet, it’ll just make it a link anyway.

Then later, on a calmer day, you can click that link and define the real steps — turning the mess into a reusable, real SOP.

Write actual checklists inside SOP notes

There’s nothing worse than finding an old note that says “Fix this with webhook delay” and nothing else. 😐 I kept doing this. Just a sentence. No context. I was writing for presumed future-me… who forgot everything.

So instead, once a mess becomes repeatable (i.e. it broke more than once), here’s what I do:

1. Title the note simply, like `Zapier Not Catching Webhook`
2. Add a short line of context up top:
> Context: happens when switching Webhooks from Test to Live on newer Zaps

3. Write an actual checklist:

“`markdown
– [ ] Open Zapier editor
– [ ] Remove the Webhook trigger
– [ ] Re-add the Webhook Catch Hook
– [ ] Use a brand new URL — DO NOT reuse old one
– [ ] Switch to Live mode in staging tool first
– [ ] Send test payload again
“`

By doing this you’re not just documenting the logic, you’re also capturing the hazard surface. Like — the real reason things break even when they “should” work.

If you want bonus points:

– Add a `#bug` or `#workflowfix` tag at bottom (this helps if you search later)
– Include a short quote from support or error logs if available

Use backlinks to accidentally organize your SOPs

This is probably my favorite part. Because it happens without me trying. Obsidian automatically tracks backlinks as soon as you link notes together with `[[NoteTitle]]`. So when I go into an SOP like `Zapier Not Catching Webhook` and look at the backlinks panel, it shows me:

– Which Daily Notes linked here
– Other SOPs that referenced this issue
– Even Scratch notes that didn’t become real SOPs yet

It looks something like this:

“`
Linked mentions:
– 2024-04-11: “Webhook failed after node version upgrade — see [[Zapier Not Catching Webhook]]”
– RetryBlueprintFix.md
“`

I don’t maintain this. It just accumulates. But the result is, when I go into one SOP, I can often rediscover how I used it or when — which is weirdly comforting on chaotic days 🙂

Pin reference notes in sidebar for fast access

If I’m actively working with one repeating problem (looking at you, Google Sheet weird timestamp bug), I pin its SOP on the right-hand side. Here’s how:

1. Open the SOP note
2. Click the three dots in the upper corner of the note tab
3. Choose “Split Right”
4. Then hit those same three dots and click “Pin”

Now it stays there, even if you open new Daily Notes or start typing other things. I keep the SOP open while I retry and test steps. Especially helpful if you’re on Sandbox Mode or trying to troubleshoot APIs without looking at the docs for the fifteenth time.

It’s not very flashy, but it reduces those “what was I doing again” moments.

Use templates to stop rewriting the same structure

After about five SOPs, I got tired of rewriting the same lines:
– Context
– Checklist
– Related links or Zap IDs

So I made a note inside a folder called `Templates` and inside it I made this:

“`markdown
# {{title}}

> Context:

## Steps
– [ ]

## Related Links

## Tags
#bugfix #rebuild
“`

Then I installed the Obsidian Templates plugin (turn it on under Core Plugins), and told it where to look: Settings → Templates → Template folder location: `Templates`

Now, whenever I want to start a new SOP, I just:
1. Hit Command P (or Ctrl P)
2. Search for “Insert Template”
3. Hit enter, it drops in the structure

No more thinking. I just fill it in while the problem is fresh.

Use search instead of perfect naming

This was a weird turning point. I stopped caring about how I named my SOPs so much once I realized Obsidian search is pretty fast. Even mid-word fuzzy search works. I can type “zp web h” and it’ll surface `Zapier Webhook Fail`.

Pro tip — if you want to search only inside SOPs, type:
“`
path:SOPs “webhook”
“`
That’ll pull up files inside that folder with mentions of the word. Combine that with tags like `#bugfix` and you can quickly filter down without maintaining some mega-organized tree.

It’s not like Notion, where you feel guilty if your databases are ugly. Obsidian doesn’t care. And that freedom is what actually makes it work for me.

Create links to routines that are boring but break often

Last section. Some of the best SOPs are for things I do all the time — not because they’re complicated, but because they change just enough that I always forget something.

Things like:

– Reconnecting Google Sheets OAuth
– Re-running an Autocode function that freaks out once a week
– Formatting Airtable timestamps to not say “undefined”

These are simple, but surprisingly fragile. I create SOPs for them anyway so I don’t have to guess. One I revisit constantly is `Calendar Desync QuickFix`. It includes:

“`
– [ ] Check timezone in Google calendar settings
– [ ] Verify event creation from Zap uses “use app default”
– [ ] Refresh token in connected account settings
“`

It’s become muscle memory to search for this SOP whenever a coworker says “the event didn’t show up 😓”.

¯\_(ツ)_/¯ that’s life in automation land