Why This Decision Is Bigger Than It Looks
Picking a note-taking tool feels like a small decision, the kind you make in an afternoon after watching a couple of videos. It is not small, because a second brain is the one system you keep for years, across every class, project, job search, and side hustle you will ever run. The wrong pick does not fail loudly. It fails quietly, a few years in, when you realize half your thinking is trapped in a format you can no longer easily use.
This guide is not going to tell you Notion is bad or Obsidian is a religion or that real developers only use plain text. All three are legitimate. What matters is that you understand the actual tradeoff each one is making, in plain terms, before you sink two years of notes into it.
What Each Option Actually Is
Notion: A Database Wearing a Notebook's Clothes
Notion is cloud-first and proprietary. Every page you write is not a file, it is a set of blocks stored inside Notion's own database on Notion's servers. That single fact explains almost everything else about it. Because your content lives in a structured database rather than a stack of documents, Notion can do things a text editor cannot: relational databases that link a reading list to a course to a semester, multiple views of the same data as a table, board, or calendar, reusable templates, real-time multiplayer editing with a club or study group, and one-click publishing of a page to the public web. It also ships an official API, which is why so many student dashboards and habit trackers are built on top of it.
The tradeoff for all of that power is that your notes are not really yours in the file-system sense. You are renting structure from Notion, and if you ever want out, the parts that made Notion useful in the first place are exactly the parts that do not travel.
Obsidian: A Folder Wearing an App's Clothes
Obsidian flips the model. Your vault is a plain folder of Markdown files sitting on your own disk, full stop. That is the single most important fact about it, and everything else follows from it. The app itself is closed source but free to use, and as of 2024 Obsidian dropped its separate commercial-use license requirement, so it is free for coursework, a club, or freelance work without a second thought.
On top of that plain-file foundation, Obsidian layers backlinks, a graph view, canvas boards, and a large community plugin ecosystem that can turn it into a spaced-repetition system, a Kanban board, or a database query engine. Sync and Publish exist as paid first-party add-ons priced per month, and the numbers change often enough that you should check Obsidian's own pricing page rather than trust a screenshot someone posted a year ago.
A Plain Folder of Markdown Files: No App at All
The third option skips the app entirely. A folder, a text editor, and nothing else. Every note is a .md file you can open in literally any editor, on any operating system, for the rest of your life. There is no vendor, no login, no subscription, and no risk of a company pivoting your notebook into something it was never meant to be. This sounds primitive next to Notion's databases or Obsidian's graph view, and in terms of features, it is. What it buys back is total control: zero cost, zero lock-in, instant search with a tool like ripgrep, and perfect version history if you put the folder under git.
The Head-to-Head Matrix
| Dimension | Notion | Obsidian | Plain Markdown Folder |
| Where data lives | Notion's cloud database, not files on your disk | Local files on your disk, Markdown in a folder called a vault | Local files on your disk, exactly as you left them |
| File format & portability | Proprietary blocks, exported to Markdown/CSV/HTML on demand | Plain Markdown natively, plus optional plugin-specific syntax | Plain Markdown or plain text, nothing else |
| Offline behavior | Historically the weakest area, built around a live connection | Fully offline by default, it is just files on disk | Fully offline always, there is no connection to lose |
| Search | In-app search, requires the app and a connection for full features | Fast in-app full-text search plus any external tool you point at the folder | Whatever you bring, typically a command-line tool like ripgrep |
| Plugin/extension ecosystem | Limited to embeds and the official API | Large community plugin ecosystem, huge range of behavior | None built in, you wire up your own scripts and editor extensions |
| Collaboration | Real-time multiplayer, built for teams and clubs | No real multiplayer, single-user by design | None unless you build it yourself on top of git or a shared folder |
| Cost model | Free tier plus paid plans, check Notion's pricing page | App is free, Sync and Publish are optional paid add-ons | Free, the only cost is your editor and optional sync storage |
| Lock-in risk | High for anything database-shaped: relations, rollups, views | Low at the file layer, moderate if you lean on plugin-specific syntax | Effectively zero |
| Best-fit user | Clubs, teams, and anyone whose notes are really project databases | Students who want backlinks and a graph without giving up files | Anyone who wants the system to outlive every app they will ever install |
What Actually Survives an Export
The question that matters is not whether a tool has an export button, it is what the export button actually preserves. This is where the three options diverge the most, and it is worth looking at directly rather than trusting a features page.
| Tool | What exports cleanly | What breaks or is lost | Rough effort to fully leave |
| Notion | Simple pages, headings, basic text, images, to Markdown or HTML | Relations, rollups, linked databases, and custom views do not survive as those things | Days to weeks, depending on how database-shaped your workspace is |
| Obsidian | Every note, since it was already a Markdown file on disk | Plugin-specific syntax such as Dataview query blocks stops working without the plugin | Hours, mostly spent replacing plugin syntax with plain Markdown or nothing |
| Plain Markdown folder | Everything, because there was never a proprietary layer to begin with | Nothing structural, at most you lose whatever external script you built around it | Effectively zero, you already own the files |
The Real Case for a Plain Folder of Files
It is easy to dismiss the plain-files option as something only a certain kind of terminal-obsessed CS student would pick, but the argument for it is concrete, not aesthetic. Take a folder of Markdown notes, add ripgrep for search and git for history, and you have a system with no app to break, no subscription to lapse, and no format to convert two years from now.
Ripgrep is fast enough that searching a few thousand notes feels instant, and because it is a general-purpose command-line tool, it works the exact same way whether you are searching class notes, project logs, or a journal. Git gives you something no app-based tool offers by default: a real, inspectable history of every edit you ever made to a note, plus free syncing between machines if you push to a private repository. Here is what that actually looks like in a terminal, not in theory.
# search every note for a phrase, case-insensitive, with line numbers
rg -i -n "spaced repetition" ~/notes
# find every note that mentions two different topics
rg -l "leetcode" ~/notes | xargs rg -l "graph theory"
# see the full edit history of one note, including old versions of the text
git -C ~/notes log --follow -p -- courses/cs146-notes.md
# a one-line history of everything you touched this week
git -C ~/notes log --since="1 week ago" --oneline
That is the entire toolchain: a folder, an editor, ripgrep, and git. Nothing about it is exotic, and nothing about it requires you to trust that a company will still exist, still be free, or still support your file format five years from now. If you like the idea of software that keeps working with no server behind it, this same instinct is worth applying beyond note-taking, see the guide on tools that run entirely in the browser for the broader pattern.
The plain-files approach is not a purity test. You can still get search, backlinks, and rendered previews on top of a plain folder, either by using an editor that supports Markdown preview or by layering Obsidian on top of the exact same files later. The folder does not lock you out of convenience, it just refuses to lock the convenience into the data itself.
Where Each One Loses
Where Notion Loses
Notion's offline mode has historically been its weakest point, because the entire app is built around a live connection to its own database rather than files it can read locally. Export is the other soft spot: it looks reassuring on a pricing page, but it is genuinely lossy for anything database-shaped. Relations between pages, rollup values, and custom filtered views do not export as those things, they export as flattened text or CSV, which means the structure you spent hours building is exactly what disappears if you ever leave.
Where Obsidian Loses
Obsidian's core promise, plain files on disk, holds up well, but the plugin layer quietly reintroduces some of the same risk. Plugins are third-party code that runs with access to your entire vault, so plugin quality varies and you are trusting a lot of small, independently maintained projects. Lean heavily on plugin-specific syntax, such as Dataview query blocks, and you have created soft lock-in: the files are still Markdown, but a chunk of them stop meaning anything without that specific plugin installed. Mobile capture is capable but noticeably slower than a purpose-built quick-capture app, and there is no real multiplayer collaboration if you ever need to co-edit with a team.
Where a Plain Folder Loses
This is the option people romanticize the most and interrogate the least, so it deserves the same honesty. A plain folder has no backlinks, no graph view, and no transclusion, all of which Obsidian gives you for free. There is no built-in mobile capture flow, so jotting a thought on your phone means finding or building your own syncing text editor. There are no rendered previews unless your specific editor happens to render Markdown. And there is no team behind it building any of this for you: every convenience you want, from search to backlinks to a mobile workflow, is something you personally have to wire up. For some students that is the whole appeal. For others it is a project they never quite get around to finishing, and the notes sit in a folder that never becomes a real system.
What It Actually Costs to Leave Each One
The risk that matters with any of these tools is not whether the company disappears overnight, it is how many hours it costs you to leave and whether leaving loses structure that only ever existed inside the app. Framed that way, the three options are not close.
- Leaving Notion means exporting first, then manually rebuilding anything that depended on relations, rollups, or linked databases, since those do not survive as structured data. For a simple notebook this is a light afternoon. For a workspace built around project trackers and databases, it can run into days.
- Leaving Obsidian means your notes are already portable, since they were files the entire time. The real work is auditing plugin-specific syntax, mainly Dataview-style query blocks, and either rewriting it as plain Markdown or accepting that a handful of dynamic views stop working. Usually a few hours, not days.
- Leaving a plain folder is not really an operation, because there was nothing to migrate out of. You already own the files. The only cost is whatever small script or sync setup you built around them, and even that is optional.
Do not evaluate any note-taking tool by asking whether it looks like it might shut down. Evaluate it by asking what a normal Tuesday afternoon of leaving would actually require, because that is the cost you are really signing up for on day one.
The Verdict: Pick One Based on How You Actually Work
Pick Notion If
Your notes are really project management. You are running a club, a startup idea, or a shared class project where the value is in relational databases, multiple views of the same data, and other people editing alongside you in real time. If collaboration and structure matter more to you than raw ownership of the underlying files, Notion is doing exactly what it is built for, and you should check its current education pricing before assuming a specific number.
Pick Obsidian If
You want backlinks, a graph of how your ideas connect, and a large plugin ecosystem, but you are not willing to give up owning your files to get it. This is the middle path, and for most students building a genuine second brain out of lecture notes, reading summaries, and project logs, it is the most balanced default. Just keep an eye on how much plugin-specific syntax creeps into your notes over time.
Pick a Plain Folder of Files If
You already live comfortably in a terminal, you want a system that will still open in forty years with zero conversion step, and you are willing to build your own conveniences instead of buying them pre-assembled. This is the option that scores closest to zero on both lock-in and exit cost, at the price of doing more setup work yourself. It pairs naturally with the same offline-first mindset behind building an offline-first progressive web app, where the whole point is that the data has to survive without a server.
What I Actually Use
For what it is worth, my own setup leans toward the local-first end of this spectrum. I keep a generated Obsidian vault of notes and project state on disk, and the tool I actually reach for most when I need to find something is plain text search over that folder, not any specific app feature. The same instinct shows up in the apps I build: the free offline tools linked from my apps page store their data in the browser instead of on a server, for the same reason I keep my notes as files instead of database rows. I want the data to still be there when the vendor is not. You can see the rest of the tools I actually use, and why, on the stack page, and if you are weighing this decision against other student tool spend, the companion guide on what is actually worth paying for as a CS student covers the same ownership-versus-convenience tradeoff from a budget angle.
None of this means Notion is wrong or that plain files are morally superior. It means the decision is really about which cost you would rather pay: a monthly fee and a database you do not fully own, a bit of plugin discipline, or a weekend spent building your own conveniences. Pick the one whose cost you are actually willing to pay for the next four years, not the one with the best onboarding video.
Tools referenced in this guide
- Free vs Paid Student Tools โ What is genuinely worth paying for as a CS student, and where the free tier is already good enough.
- Building Offline-First PWAs โ How to build apps whose data survives without a server, the same local-first instinct behind picking plain-file notes.
- Free Offline PWAs โ Installable tools that keep your data in the browser instead of on someone else's server.