Obsidian Frontmatter and Tags: What to Keep When You Export
YAML frontmatter drives properties in Obsidian and drives nothing on GitHub. Inline #tags are vault navigation. Decide per destination, then keep or strip both with one option each.
Direct answer
Frontmatter is the --- block at the top of a note; Obsidian reads it as properties. Static site generators such as Hugo, Jekyll, and Astro read it too, so keep it when you publish to one of them. GitHub's file view shows it as a table or as raw text, so strip it for a README. Inline #tags are vault-only organisation and mean nothing outside Obsidian. The converter above has one option for each.
Open the Obsidian ↔ Markdown converterWhen to use this
- You are moving notes into a static site that reads frontmatter.
- A README on GitHub starts with a block of YAML nobody needs to read.
- Exported notes are peppered with #project/alpha style tags that mean nothing to the reader.
Steps
- Paste the note into the converter above.
- Set YAML frontmatter to Keep for a static site, or Strip for a README, an issue, or a wiki page.
- Set Inline #tags to Keep as text when the tags carry meaning for the reader, or Strip when they are vault navigation.
- Read the output and confirm nothing you needed was removed.
- Copy or download the result.
Example conversion
--- title: Weekly note tags: [weekly, ops] --- # Weekly note Backups ran clean. #ops/backups #weekly
# Weekly note Backups ran clean. (frontmatter: Strip, tags: Strip)
Common mistakes
- Do not strip frontmatter before publishing to Hugo, Jekyll, or Astro. Those generators need the title, date, and layout keys to build the page.
- Do not expect stripped tags to be recoverable. Keep the vault copy as the source of truth and treat the export as a derived file.
- Do not confuse a tag with a heading. A # followed by a space is a heading and is never touched; only #tag with no space is treated as a tag.
- Do not expect frontmatter tags to be removed by the tag option. That option only affects inline #tags in the body; tags listed inside the YAML block are part of the frontmatter.
FAQ
- What is Obsidian frontmatter?
- A YAML block fenced by --- at the very top of a note. Obsidian reads its keys as note properties, which drive views, filters, and plugins.
- Should I keep frontmatter when publishing?
- Keep it when the destination reads it — Hugo, Jekyll, Astro, and most static site generators do. Strip it for a GitHub README, an issue, a wiki page, or anything pasted into a chat.
- Does stripping tags remove tags from the frontmatter too?
- No. The tag option only removes inline #tags from the note body. Tags inside the YAML block are removed only when you also strip the frontmatter.
- Will it delete a #1 style reference?
- No. A hash followed only by digits is left alone, so issue references such as #1 and #482 survive.
Related Obsidian guides
How to Convert Obsidian Wikilinks to Standard Markdown
Obsidian writes links as [[Note]] and [[Note|alias]]. Only Obsidian reads that syntax. Convert each one to [alias](Note.md) so the link works on GitHub and any other renderer.
Convert Obsidian Callouts to GitHub Markdown Alerts
Obsidian callouts use > [!note] Title. GitHub supports five alert types with uppercase names and no inline title. Here is the mapping the converter applies.
Export Obsidian Notes to GitHub Without Broken Links
A vault file copied straight into a repository shows literal wikilinks, unrendered callouts, and ==highlight== markers. Convert the Obsidian syntax first, then commit.
Turn an Obsidian Vault Note Into Portable Markdown
Portable Markdown is text that renders the same in every reader. This is the list of Obsidian-only syntax that stops a note being portable, and what each piece becomes.