File formats

Every input we accept and how it's read.

This is the full list of inputs 2anki accepts. The hard limits live on Limits and quotas — this page is the format reference.

Plan: Free (any plan can upload any format; paid plans get bigger files and AI-generated cards)

FormatHow 2anki reads itLimitsNotes
Notion HTML export (.zip)Each .html file inside becomes a deck. Toggles inside the file become cards. The assets/ folder is bundled into the deck.Same size limit as any upload.The .zip Notion gives you when you export with "HTML" + "Include subpages". The cleanest non-Notion-integration path.
HTML (.html)Each <details> block becomes a card — <summary> is the front, the rest is the back. <code> becomes cloze. <strong> becomes input (with the Treat Bold Text as Input option on).Same size limit as any upload.Hand-written HTML works the same way. See HTML.
Markdown (.md)Bullet pairs become cards: parent bullet is the front, child bullet is the back. Backticks become cloze.Same size limit as any upload.Requires the Markdown Nested Bullet Points card option (on by default). Obsidian vaults work the same way. See Markdown and Obsidian.
ZIP (.zip)Extracted; the contents are processed in place. Notion HTML exports, folders of HTML files, or mixed bundles all work.Same size limit as any upload. Entries are checked for unsafe paths before extraction.If you have a Notion export with images, keep it zipped — the assets stay attached.
CSV (.csv)One row per card. The first column is the front, the second is the back.Same size limit as any upload.Use commas as the separator. TSV (tab-separated) is not supported — convert to CSV first.
XLSX (.xlsx)Same as CSV but for Excel files. First column front, second column back.Same size limit as any upload.One sheet per deck.
PDF (.pdf)Each page becomes an image. By default, page 1 is the front and page 2 is the back, page 3 the front of the next card, page 4 the back, and so on — useful for slide decks where each topic spans two slides.100 pages on free, no fixed cap on paid.Turn on Generate Flashcards with Claude AI to have Claude read the PDF and write questions instead of pairing pages. Paid only.
PPT / PPTX (.pptx, .ppt)One card per slide. The slide title is the front; the bullet points, the rendered slide image, and the speaker notes are the back. A deck whose slides carry no text at all falls back to the PDF page-pair layout.Same as PDF.Put the question in the slide title and the answer in the body or notes. Binary .ppt always uses the page-pair layout.
Word (.docx, .doc)Converted to PDF via LibreOffice, then handled like a PDF.Same as PDF.Best with Claude AI for prose-heavy documents — the page-pair path works for documents you've structured like slides.
OPML (.opml)Each parent→child outline relationship becomes one Basic card: the parent text is the front, the child text is the back.Same size limit as any upload.Export from OmniOutliner, iThoughtsX, or any outliner that supports OPML.
Brainstorms JSON (.brainstorms.json)Same parent→child edge rule as OPML — each edge becomes one Basic card.Same size limit as any upload.Export from Brainstorms (iOS/macOS) using the JSON export option. The file must end in .brainstorms.json.

HTML and Markdown

HTML and Markdown have their own pages because the syntax for cloze and input cards is worth a couple of examples each:

For the format-by-format pitfalls users actually hit, see Common problems.