Guru
Blog / Anki on iOS

How to Open .apkg Files on iPhone (Anki Decks)

TL;DR A .apkg is an Anki deck package. iOS can't open it by itself — you need an app with a real Anki engine. Save the file to the Files app, tap it (or use the Share sheet), and open it in Guru or AnkiMobile. Cards, media, and — if the deck was exported with it — scheduling all come through. Full migration walkthrough here.

What a .apkg actually is

A .apkg file is a zipped package containing an Anki deck: the notes, the cards generated from them, their note types and templates, any media (images/audio), and optionally the scheduling state — due dates, intervals, review history. It's the standard way Anki decks move between people and devices; every shared deck on AnkiWeb downloads as one.

Because it's a package for a specific ecosystem, the iPhone shrugs at it by default. Safari may download it, Files will happily store it — but "no app can open this" until an app that speaks Anki's format is installed.

The 30-second path

  1. Get the file into Files. Downloads from Safari land in Files → Downloads automatically. From a Mac, AirDrop it. From email or a chat app, use the Share sheet → "Save to Files."
  2. Tap the file (or long-press → Share) and choose an Anki-compatible app:
    • Guru — imports run on Anki's own engine, then the deck reviews with FSRS; free to start.
    • AnkiMobile — the official app ($24.99): tap the file and "Copy to AnkiMobile."
  3. Check the import: due counts look sane, an image card shows its image, cloze cards show blanks. Done.

Where .apkg files come from

.apkg vs .colpkg

Same idea, different scope: a .apkg carries one deck (or a subtree); a .colpkg is your entire collection — every deck, note type, and option group. Use .colpkg for wholesale migration to a new device, .apkg for sharing or moving individual decks. Both open through the same steps above.

When something doesn't come through

"All cards show as new." The deck was exported without scheduling (that's the default for decks shared publicly). Your import is fine — the history simply isn't in the file. If you control the source, re-export with scheduling included.

Images or audio missing. Media travels inside the package, but only if the exporter included it. Re-export with media, or re-download the deck — a partially-downloaded .apkg is the most common culprit.

"No app can open this" persists. The file may have been renamed (check it really ends in .apkg, not .apkg.zip) — iOS sometimes appends .zip if the server mislabeled the download. Rename it in Files back to .apkg.

Huge deck stalls mid-import. Multi-gigabyte media decks are real (medical decks especially). Keep the app in the foreground for the first import, and prefer Wi-Fi if the file still needs downloading.

Getting decks back out

Whatever app you import into, make sure the door swings both ways: from Guru any deck exports back to a standard .apkg at any time, so a deck you refine on the phone is never trapped there.

← All posts