Snapchat Memories mit allen Metadaten & Captions exportieren

Der Export deiner Snapchat Memories mitsamt aller Metadaten und Captions ist nicht so trivial, wie es auf den ersten Blick scheint. In diesem Beitrag erfährst du, wie es geht, damit auch du deine Memories herunterladen kannst.

Snapchat Memories mit allen Metadaten & Captions exportieren
Bildquelle: ChatGPT

Aufbau dieses Artikels

Einleitung

Das im Titel erwähnte Unterfangen klingt auf den ersten Blick wie eine Kleinigkeit, welche innert weniger Minuten erledigt ist. Doch bei genauerem Betrachten zeigt sich, dass dies kein triviales Unterfangen ist, da der von Snapchat bereitgestellte Export nicht sonderlich benutzerfreundlich ist.

Vielleicht stellst du dir die Frage, worum man überhaupt seine Snapchat Memories exportieren möchte. Das kann folgende Gründe haben:

  • Seit kurzem (September 2025) muss man bei Snapchat für den Speicherplatz der Memories bezahlen, wenn man mehr als 5GB in den Memories gespeichert hat. Durch den Download kann man die Daten bei Snapchat löschen und somit Geld sparen. (Quelle)
  • Du möchtest eine eigene Software zur Anzeige deiner Bilder verwenden.
  • Du möchtest all deine Erinnerungen an einem Ort ablegen.
  • Du möchtest die Kontrolle über deine Daten haben oder dein Konto bei Snapchat schliessen.

Du fragst dich, warum du nicht einfach am Smartphone alle Memories markieren und in der Galerie speichern solltest? Darum:

  • Du kannst nur 100 Snaps gleichzeitig markieren.
  • Du kannst nicht alle Snaps mit einem Klick markieren, sondern lediglich die Snaps pro Monat.
  • Der manuelle Prozess ist mühsam & zeitaufwändig (vor allem wenn man viele Memories hat).

Und über den Datenschutz-Export geht's nicht? Jein. Die Metadaten (Aufnahmezeitpunkt & Standort) werden dabei nicht exportiert und die Captions (Titel, Filter & Effekte) werden als separate Bilder in einer ZIP-Datei bereitgestellt. Das bedeutet für dich: Mühsame Handarbeit beim Zusammenführen dieser einzelnen Informationen.

Gibt es da keine Lösung? Doch, die Open-Source Community (allen voran GitHub User ToTheMax) hat eine Lösung geschaffen. Ein Python-Skript, dass die Memories von Snapchat herunterlädt und die einzelnen Informationen zusammenführt. Die Lösung läuft noch nicht ganz reibungslos und es ist etwas ein Gebastel. Damit du dir den ganzen Aufwand mit dem Zusammensuchen aller Infos sparen kannst, habe ich das Vorgehen in diesem Blogpost zusammengefasst.

Datenexport bei Snapchat beantragen

Als Erstes musst du einen Datenexport bei Snapchat beantragen. Am einfachsten geht dies am Computer. Du kannst den Export auch am Smartphone beantragen (Snapchat öffnen -> auf Bitmoji oben links klicken -> Einstellungen -> Meine Daten), für die späteren Schritte benötigst du jedoch einen Computer, um Python-Skripte ausführen zu können.

Öffne die Seite accounts.snapchat.com/v2/download-my-data in einem Browser und melde dich mit deinem Snapchat Account an.

Bei deinem Account einloggen

Du landest auf folgender Seite:

Bereich "Meine Daten" bei Snapchat

Aktiviere nun den Schalter neben "Deine Memorys exportieren" sowie "JSON-Dateien exportieren". Alle anderen Haken kannst du deaktiviert lassen.

Gewünschte Daten markieren

Scrolle dann nach unten und klicke auf "Weiter".

Weiter

Nun kannst du auswählen, von welchem Datumsbereich du deine Memories exportieren möchstest. Da ich alle meine Memories exportieren wollte, habe ich mich für die Option "Immer" entschieden.

Datumsbereich festlegen

Stelle anschliessend sicher, dass deine E-Mail-Adresse im Feld "Bestätige deine E-Mail-Adresse" stimmt und klicke dann auf "Senden".

E-Mail-Adresse prüfen & Antrag absenden

Dein Exportauftrag wurde erstellt. Es dauert nun einige Stunden bis Tage, bis deine Daten bereit sind. Die Dauer des Prozesses ist abhängig davon, wie viele Daten du bei Snapchat gespeichert hast.

Exportauftrag erstellt

Du erhältst eine E-Mail von Snapchat, sobald der Datenexport fertig ist. Bevor du fortfahren kannst, musst du nun den Abschluss des Datenexports abwarten.

Wenn dein Datenexport fertig ist, musst du erneut die Seite "Meine Daten" von Snapchat öffnen. Du findest diese in der E-Mail von Snapchat oder mit dem zu Beginn erwähnten Link.

Link in der E-Mail von Snapchat

Klicke auf "Exporte anzeigen" und lade anschliessend deinen Datenexport herunter.

Export anzeigen & herunterladen

Es wird eine Datei mit dem Namen mydata~XXXXXXXXX.zip heruntergeladen.

Datenexport als ZIP-Archiv

Das ZIP-Archiv hat folgenden Aufbau:

mydata~XXXXXXXXX.zip
├── html
│   ├── faq.html
│   └── memories_history.html
├── index.html
└── json
    └── memories_history.json

Aufbau des Datenexports

Das Archiv enthält nicht direkt deine Memories als Datei, sondern lediglich eine JSON-Datei mit Metadaten dazu und Links um diese herunterzuladen.

Im Archiv findest du eine Datei mit dem Namen index.html. Wenn du diese Datei öffnest findest du Fragen zu häufig gestellten Fragen sowie eine Übersicht über all deine Memories, mit der Möglichkeit diese herunterzuladen.

FAQs
Übersicht über deine Memories

Wenn du den Download über diese Datei machst, werden deine Memories zwar heruntergeladen, jedoch ohne jegliche Metadaten. Das heisst du hast jedes Bild/Video deiner Memories als Datei, jedoch ohne Aufnahmedatum, Standort und auch ohne Captions (Texte und Effekte auf dem Bild). Alle Snaps mit Captions werden zudem als eigene ZIP-Datei und nicht als Bild heruntergeladen. Diese enthält dann Caption sowie Bild separat, welche du manuell zusammenführen musst.

Download mit Python-Skript

Damit du Caption und Bild nicht manuell zusammenfügen und die Metadaten eintragen musst, kannst du ein Python-Skript verwenden, welches diese Schritte für dich macht. Hiermit kannst du eine Menge Zeit sparen.

Ich verwende hierfür das Tool "Snapchat-All-Memories-Downloader" von GitHub User ToTheMax sowie den Fork (Abspaltung) bzw. Pull Request von AndrewMitchell25.

Was ist ein Fork?

Bei der Entwicklung von Software gibt es die Möglichkeit einen sogenannten Fork zu erstellen. Hierbei handelt es sich um eine Abspaltung des Quellcodes hinter der Software. Mit einer solchen Abspaltung kann der aktuelle Stand einer Software übernommen und unabhängig von der ursprünglichen Historie weiter entwickelt werden. Wenn man sich die Entwicklung einer Software wie ein Baum vorstellt, entsteht hierbei ein neuer Zweig/Ast.

Ein Fork kann beispielsweise erstellt werden, um eine einzelne neue Funktion in einer Software einzubauen, welche später zum ursprünglichen Code hinzugefügt werden kann. Die Anfrage die Änderungen eines Forks wieder in den ursprünglichen Code zu integrieren, wird "Pull Request" genannt. Ein Fork kann aber auch verwendet werden, um aufbauend auf einer bestehenden Software eine neue Lösung zu entwickeln, welche seine eigenen Ziele und Wege verfolgt.

Weitere Details siehe Wikipedia.

  1. Öffne das Terminal auf deinem Computer. Unter Windows kannst du PowerShell verwenden.
  2. Für die nächsten Schritte benötigst du Git. Unter macOS und Linux ist Git vorinstalliert. Unter Windows kannst du Git ganz leicht mit WinGet installieren.
    Prüfen, ob Git installiert ist: git --version
    Git mit WinGet installieren: winget install --id Git.Git -e --source winget
  3. Klone das GitHub Repository.
    Befehl: git clone https://github.com/ToTheMax/Snapchat-All-Memories-Downloader.git
  4. Wechsle in das Verzeichnis des geklonten Git-Repositories
    Befehl: cd Snapchat-All-Memories-Downloader
  5. Lade den Pull Request von AndrewMitchell25 herunter
    Befehl: git fetch origin pull/108/head:overlay-support
  6. Wechsle in den eben geklonten Branch (Pull Request mit der Unterstützung für Captions)
    Befehl: git switch overlay-support
  7. Kopiere nun das ZIP-Archiv (Datenexport) von Snapchat in das aktuelle Verzeichnis. Du kannst das sowohl über die grafische Benutzeroberfläche als auch über das Terminal machen.

    Damit du weisst, in welchen Ordner du dich momentan befindest, kannst du den Befehl pwd ausführen. Dieser zeigt dir das aktuelle Verzeichnis an.

    Wenn sich dein Export in deinen Downloads befindet, kannst du folgenden Befehl verwenden (passe die Ordnernamen an deine Umgebung an):
    macOS/Linux: cp /Users/benutzername/Downloads/mydata~XXXXXXX.zip .
    Windows: cp C:\Users\benutzername\Downloads\mydata~XXXXXXX.zip .
  8. Entpacke das ZIP-Archiv
    Befehl macOS/Linux: unzip mydata~XXXXXXX.zip
    Befehl Windows (PowerShell): Expand-Archive -Path mydata~XXXXXXX.zip
  9. Für den nächsten Schritt wird Python benötigt. Unter macOS & Linux ist dies bereits vorinstalliert. Unter Windows kannst du Python mittels WinGet installieren.
    Befehl Windows: winget install --id=Python.Python.3.13 -e
  10. Erstelle eine virtuelle Python Umgebung
    Befehl macOS/Linux: python3 -m venv venv/
    Befehl Windows: py -m venv venv\
  11. Virtuelle Python-Umgebung aktivieren:
    Befehl macOS/Linux: source venv/bin/activate
    Befehl Windows: venv\Scripts\activate
  12. Installiere die Requirements
    Befehl: pip install -r requirements.txt
    Wenn sich der Befehl nicht ausführen lässt, ersetze pip im Befehl durch pip3.
  13. Nun kannst du das Python-Skript endlich ausführen
    Befehl: python main.py
  14. Der Download beginnt nun. Abhängig von der Datenmenge und deiner Internet-Geschwindigkeit kann dies einen Moment dauern. Warte bis der Vorgang abgeschlossen ist.
Download läuft

Es kann während dem Download zu Fehlermeldungen bei einzelnen Dateien kommen. Diese Dateien musst du später manuell prüfen.

Fehlermeldungen

Der Prozess ist abgeschlossen, wenn 100% erreicht wurden und angezeigt wird, wie viele Dateien heruntergeladen wurden.

Download abgeschlossen
  1. Im aktuellen Ordner existiert nun ein neuer Ordner downloads. Darin befinden sich alle heruntergeladenen Memories.
Snapchat-All-Memories-Downloader
├── downloads <-- heruntergeladene Memories
├── html
├── json
└── venv
    ├── bin
    ├── include
    └── lib

Ordner mit heruntergeladenen Inhalten

Korrupte Dateien wiederherstellen

Wenn du die heruntergeladenen Dateien ansiehst/durchgehst, fällt dir möglicherweise auf, dass einige Videodateien kein Vorschau-Icon besitzen und beim Abspielen nur die Tonspur zu hören ist.

Datei ohne Vorschau
Nur Audiospur vorhanden

Im folgenden werde ich diese Dateien als "korrupt" bezeichnen.

Um herauszufinden, welche Dateien korrupt sind, habe ich ChatGPT gebeten, mir ein Skript zu erstellen, welches alle .mp4-Dateien angibt, welche nur eine Audiospur besitzen.

Find corrupt files which were exported from snapchat memories
Find corrupt files which were exported from snapchat memories - find-corrupt-snaps.py

Korrupte Files finden - Skript (Quelle: ChatGPT)

Ich habe nach einer Möglichkeit gesucht, um an die unbeschädigten Dateien zu kommen. Dabei habe ich herausgefunden, dass dieser Fehler mit dem ursprünglichen Skript (Version vor dem Pull Request) nicht auftritt. Diese Dateien sind dann zwar ohne Captions, dafür lassen sich diese korrekt abspielen. Dieser Kompromiss ist meines Erachtens in Ordnung.

Alternativ kannst du die beschädigen Dateien manuell am Smartphone in der Snapchat App exportieren und ablegen.

Damit du die unbeschädigten Dateien erhalten kannst, musst du also das Skript auch in der ursprünglichen Version ausführen.

  1. Wechsle hierzu in den main-Branch.
    Befehl: git checkout main
  2. Benenne den Ordner mit den heruntergeladenen Memories um
    Befehl: mv downloads downloads-with-captions
  3. Installiere die Requirements
    Befehl: pip install -r requirements.txt
  4. Führe nun das Skript ohne Captions aus & warte ab, bis der Prozess abgeschlossen ist
    Befehl: python main.py
  5. Benennen den Ordner im Anschluss ebenfalls um
    Befehl: mv downloads downloads-no-captions
  6. Lade mein Skript herunter, welches die korrupten Dateien erkennt.
    Befehl: curl -o find-corrupt-snaps.py https://gist.githubusercontent.com/michivonah/ab033b1195aaba493d55235814beeafb/raw/301a6edbfaf460e7b229ca8e29cc18fde24c4d08/find-corrupt-snaps.py
  7. Passe gegebenenfalls die Ordnernamen im Skript an (wenn du andere Namen als in meinem Beispiel verwendet hast)
    Befehl: nano find-corrupt-snaps.py
# === Konfiguration ===
input_dir = r"./downloads-with-captions"    # Ordner mit defekten Dateien
fixed_dir = r"./downloads-no-captions"      # Ordner mit funktionierenden Dateien (UTC)
output_dir = r"./downloads-with-captions"   # Zielordner für kopierte Dateien
json_path = os.path.join(input_dir, "corrupt-files.json")

find-corrupt-snaps.py

Wenn du nicht willst, dass die korrupten Dateien überschrieben werden, kannst du bei output_dir einen separaten Ordner definieren.

  1. Führe mein Skript aus
    Befehl: python find-corrupt-snaps.py
  2. Das Skript findet alle .mp4-Dateien ohne Videospur und kopiert diese in den angegebenen Ordner (standardmässig der Ordner, in welchem sich die Memories mit Caption befinden).

Nach der Ausführung gibt das Skript aus, welche Dateien erkannt und in den angegebenen Ordner kopiert wurden.

Ausgabe des Skripts

Zudem legt das Skript eine Datei mit dem Namen corrupt-files.json an. Darin sind nochmals die Pfade zu allen korrupten Dateien enthalten.

  1. Nun befinden sich alle deine Snapchat Memories (nach Möglichkeit mit Caption) im Ordner downloads-with-captions.
Memories im Ordner downloads-with-captions

Die Dateien enthalten das korrekte Erstellungs-/Änderungsdatum sowie, falls vorhanden, die GPS-Koordinaten. Du kannst die Dateien nun von diesem Ordner aus, an den gewünschten Ort auf deiner Dateiablage kopieren.

Skripte & Downloads bereinigen

Nachdem du deine Snapchat Memories heruntergeladen und an den gewünschten Ort auf deiner Dateiablage kopiert/verschoben hast, empfiehlt es sich, die heruntergeladenen Skripte & Repositories wieder von deinem System zu entfernen.

  1. Deaktiviere hierfür zuerst deine virtuelle Python-Umgebung.
    Befehl: deactivate
  2. Navigiere nun einen Ordner zurück, sodass du nicht mehr im Ordner Snapchat-All-Memories-Downloader bist.
    Befehl: cd ..
    Hinweis: Wenn du zum Kopieren in einen anderen Ordner navigiert bist, musst du zuerst wieder ins Verzeichnis wechseln, in welchem du das GitHub Repository geklont hast.
  3. Wenn du dich im richtigen Verzeichnis befindest, kannst du das GitHub Repository löschen.
    Befehl: sudo rm -r Snapchat-All-Memories-Downloader
  4. Zu guter letzt kannst du noch die Datei mydata~XXXXXXX.zip in deinen Downloads löschen und das Terminal schliessen.

Fazit

Wie du siehst, ist der Export deiner Memories von Snapchat kein solch triviales Unterfangen, wie es auf den ersten Blick scheint. Es ist zwar ein Gebastel, aber die Hauptsache ist doch, dass es funktioniert. ;)

Von seitens Snapchat wäre es jedoch schön, wenn die Daten bereits von Haus aus so bereitgestellt werden würden, wie diese beim Export in der App auch daher kommen. Dann wäre dieser ganze Aufwand nicht nötig gewesen.

Ich hoffe diese Anleitung/Blogpost konnte dir dabei helfen, deine Memories zu exportieren. Solltest du Fragen, Probleme oder Feedback haben, schreib doch gerne einen Kommentar unter dem Blogpost.

Ein grosser Dank geht an die GitHub User ToTheMax und AndrewMitchell25 für ihre Arbeit zur Entwicklung der verwendeten Tools!

Links