A native macOS application for downloading and archiving your Snapchat Memories with proper organization and metadata preservation.
Snapchat Memories Exporter is a Swift-based macOS app that allows you to download all your Snapchat memories from your data export. The app automatically organizes files by date, preserves location metadata, and provides detailed progress tracking during downloads.
- Automatic Date Organization: Files are organized into folders by year-month (e.g.,
2025-10/,2025-09/) - Metadata Preservation: Each file includes a companion JSON file with original date, location coordinates, and media type
- File Timestamp Correction: Sets actual file creation/modification dates to match the original Snapchat timestamp
- Progress Tracking: Real-time progress bar with success/failure counts
- Error Handling: Detailed reporting of failed downloads with the ability to review which files failed
- Batch Processing: Downloads all memories automatically with rate limiting to avoid overwhelming servers
- macOS 13.0 (Ventura) or later
- Active Snapchat account with data export access
- Go to the Releases page
- Download
snap_memory_saver.app.zipfrom the latest release - Unzip the file (double-click it)
- Move
snap_memory_saver.appto your Applications folder (optional but recommended) - Important: Right-click on the app and select "Open" (required for first launch)
- Click "Open" in the security dialog that appears
- The app will now run normally
This app is not code-signed with an Apple Developer certificate ($99/year). macOS will show a security warning on first launch. This is normal for free, open-source software. Using "Right-click → Open" tells macOS you trust the app.
If you prefer to build the app yourself:
- Clone the repository:
git clone https://github.com/jackfpaylor/snapchat-memories-exporter.git
cd snapchat-memories-exporter- Open the project in Xcode:
open snap_memory_saver.xcodeproj- Build and run the project:
- Select your Mac as the target device
- Press
Cmd + Ror click the "Run" button - Requires Xcode 14.0 or later
Before using this app, you need to request your data from Snapchat. Follow these steps carefully:
- Open Snapchat on your phone (iPhone or Android)
- Tap your profile picture in the top-left corner of the screen
- Tap the settings gear icon ⚙️ in the top-right corner
- Scroll down and tap on "My Data"
- Tap "Submit Request" at the bottom of the screen
This is important - you need to select specific options:
-
Select what data to include:
- Make sure "Memories" is checked ✓
- You can uncheck other items if you only want your memories
-
IMPORTANT: Choose the file format:
- Look for the option that says "Export JSON Files"
- The full text will say: "Export JSON Files - For data portability purposes"
- Tap this option to select it (this is required for the app to work)
- Do NOT select "HTML only" - the app needs the JSON files
-
Tap "Submit Request" at the bottom
- Snapchat will email you when your data is ready (usually within 24 hours)
- The email subject will be something like "Your Snapchat Data is Ready"
- The email will contain a download link
- Click the download link in the email from Snapchat
- Save the ZIP file to your computer (it will be a large file)
- Double-click the ZIP file to unzip it
- You'll see a folder with your Snapchat data inside
- Open the unzipped folder from Snapchat
- Look for a folder named "json" and open it
- Find the file named exactly:
memories_history.json - Remember where this file is - you'll need to select it in the app
Important Notes:
- The file MUST be named exactly
memories_history.json(if you don't see this file, you may have selected the wrong export option in Step 2) - Download links in the file expire after a few days, so use the app soon after downloading your data
- If links expire, you'll need to request a fresh data export from Snapchat
- Open the Snapchat Memories Exporter app from your Applications folder
- You'll see a window with two main steps
- Click the "Choose File" button
- Navigate to where you unzipped your Snapchat data
- Go into the "json" folder
- Select the file named
memories_history.json - Click "Open"
The app will show you how many memories were found (e.g., "11,916 memories found")
- Click the "Choose Folder" button
- Select a folder where you want your memories saved (like Desktop, Documents, or an external drive)
- Click "Choose Folder"
Tip: Make sure you have enough space - memories can take up several gigabytes!
- Click "Download All Memories"
- Watch the progress bar as your memories download
- The app will show you:
- How many files have been downloaded successfully
- How many failed (if any)
- Which file is currently downloading
When the download finishes:
- Green message: All files downloaded successfully!
- Orange message with "View Failed" button: Some files failed to download (usually because download links expired)
If you see failed downloads:
- Click "View Failed" to see which files didn't download
- The most common reason is expired download links
- To fix this, request a fresh data export from Snapchat and try again
Your memories will be organized in folders by date:
Your Chosen Folder/
├── 2025-10/
│ ├── 2025-10-05_05-01-04.jpg (your photo)
│ ├── 2025-10-05_05-01-04.json (information about the photo)
│ ├── 2025-10-04_23-08-19.jpg
│ └── 2025-10-04_23-08-19.json
├── 2025-09/
│ ├── 2025-09-20_06-05-48.mp4 (your video)
│ └── 2025-09-20_06-05-48.json (information about the video)
└── Unknown_Date/
└── (any files without dates)
Each photo or video has a small JSON file next to it with information like:
- The exact date and time it was taken
- GPS coordinates (if you had location enabled)
- Whether it's a photo or video
You can ignore these JSON files if you just want your photos and videos.
Problem: You probably didn't select "Export JSON Files" when requesting your data.
Solution:
- Go back to Snapchat
- Request your data again
- Make sure to select "Export JSON Files - For data portability purposes"
- Wait for the new download link
Problem: The download links in your data export have expired.
Solution:
- Request a fresh data export from Snapchat
- Download it as soon as you get the email
- Use this app within a few days of downloading
Problem: macOS is blocking the app because it's not from the App Store.
Solution:
- Don't double-click the app
- Right-click (or Control + click) on the app
- Select "Open" from the menu
- Click "Open" in the dialog box
- After doing this once, you can double-click to open it normally
Problem: The app needs permission to read your files and save to folders.
Solution:
- When the app asks for permission, click "Allow"
- If you clicked "Don't Allow" by accident, go to:
- System Settings > Privacy & Security > Files and Folders
- Find the Snapchat Memories Exporter app
- Turn on the permissions
Problem: Gatekeeper security blocking the app.
Solution:
- Right-click the app and select "Open" (don't double-click)
- If that doesn't work, run this command in Terminal:
xattr -cr /Applications/snap_memory_saver.app- Then right-click and select "Open"
The app includes a 100ms delay between downloads to avoid overwhelming Snapchat's servers and to maintain stable download speeds.
The app handles various error scenarios:
- Invalid or malformed URLs
- Expired download links (403/404 responses)
- Network timeouts
- Connection failures
- File system errors
- Uses security-scoped resources for file access (required on macOS)
- No data is collected or transmitted except to download your memories
- All processing happens locally on your machine
This application:
- Does not collect any user data
- Does not transmit data to any third-party servers
- Only communicates with Snapchat's servers to download your memories
- Operates entirely offline except for downloading files
- All your data stays on your computer
- Download links in Snapchat data exports expire after a short period
- Cannot download memories if they have been deleted from Snapchat
- Requires macOS 13.0 or later
- Large exports (10,000+ memories) may take significant time to download
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create a feature branch (
git checkout -b feature/YourFeature) - Commit your changes (
git commit -m 'Add some feature') - Push to the branch (
git push origin feature/YourFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
If you encounter issues or have questions:
- Check the Common Issues and Solutions section
- Search existing Issues
- Create a new issue with detailed information about your problem
This application is not affiliated with, endorsed by, or sponsored by Snap Inc. Snapchat is a registered trademark of Snap Inc.