Guide

How to Save Your Instagram Direct Messages

This guide explains the full path from Instagram's export tool to a private, readable archive inside KeepDM. If you want to save Instagram DMs, preserve photos and videos, and keep everything offline, this is the workflow to follow.

Overview

What is an Instagram Data Export?

Instagram lets you download a copy of your account data, including messages, photos, videos, followers, and other account information. For DMs, the export usually arrives as a ZIP file that contains JSON files for the conversation data and a media folder for attachments. This is the only official way Instagram gives you to export your direct messages in bulk, and it is the source file KeepDM reads.

The export is machine-readable instead of human-readable because Instagram is giving you the raw data structure, not a polished archive viewer. That is why the message files can look strange when you open them directly in a text editor. KeepDM exists to take that official export and make it look like a private chat app on your phone.

The Instagram export is the source of truth. KeepDM turns that source into a readable, offline archive.

The export does not include messages that were deleted before the export was created, and it may also omit threads tied to accounts that no longer exist. If you want the most complete archive possible, request the export before deleting your account or before letting a conversation disappear. An all-time export usually gives KeepDM the best possible starting point.

Step 1

Request Your Instagram Data Export

Requesting the export is the part that happens inside Instagram. Once the ZIP is ready, KeepDM takes over and turns the raw files into a readable archive.

On iPhone or Android

  • Open Instagram and go to Settings.
  • Tap Your Activity, then Download Your Information.
  • Select Messages and Media.
  • Choose JSON format instead of HTML.
  • Pick All Time if you want the most complete history.
  • Tap Request Download and wait for Instagram to email you.

On desktop

  • Log in to Instagram in a browser.
  • Open the data download or privacy section for your account.
  • Choose the Messages category and include Media if you want photos and videos.
  • Set the format to JSON so KeepDM can parse the export.
  • Submit the request and watch for the confirmation email.
  • Depending on the size of your account, the export can take minutes or days.

Step 2

Download Your Instagram ZIP File

When Instagram emails you that the export is ready, download the ZIP file to your phone so KeepDM can access it locally. Inside the archive, you will usually find an inbox folder that contains thread folders and message JSON files such as message_1.json, message_2.json, and similar files. Those JSON files are where the actual message records live, and the media folder is where Instagram places any attachments it included in the export.

File size varies a lot. A light archive may be only a few dozen megabytes, while an account with many years of messages and lots of media can easily reach hundreds of megabytes or multiple gigabytes. Bigger exports are still usable, but they take longer to download, extract, and index inside KeepDM.

If you want media, make sure the export included the media folder. If you only request messages, you may not see shared photos or videos later.

Step 3

Import Your Backup into KeepDM

Open KeepDM on your phone and tap Import Backup. Select the ZIP file you just downloaded from the Files app, Downloads folder, or the location where your browser saved it. KeepDM starts by extracting the ZIP and then reads the JSON conversation files so it can build a private chat database on your device.

The import usually has two visible phases. First, KeepDM extracts the ZIP, which can take a while on large backups. Second, it reads the conversations and indexes them so search, favorites, and media browsing work smoothly. Keep the app open while this happens, because switching away or closing the app too early can interrupt a big import.

If the archive is very large, the import can run for several minutes. That is normal, especially when the ZIP contains many photos and videos. A phone plugged into power and left on the screen is the easiest way to let the process finish without interruption.

Step 4

Browse Your Saved DMs

Conversation list

After the import, KeepDM shows your conversations in a readable list so you can jump into any thread quickly. The layout is designed to feel familiar, with the message history grouped by contact or group.

Search and saved messages

You can search across all imported conversations at once, which makes old messages much easier to find. If something matters, bookmark it as a saved message so it is easy to revisit later.

Media gallery

Shared photos, videos, and other attachments appear inline in the thread and can also be browsed in a media view. That makes it much easier to revisit a whole conversation instead of just reading text.

Biometric lock and updates

Enable Face ID or fingerprint lock if you want quick privacy on a shared device. When you have a newer Instagram export, import it again and KeepDM merges the new messages without wiping your existing customizations.

Tips

Tips for the Best KeepDM Experience

  • Keep the app open during import so the extraction and indexing steps can finish.
  • Use an all-time export if you want the fullest possible history instead of a limited date range.
  • Re-import every few months if you want the latest messages from Instagram.
  • Turn on biometric lock if you keep private chats on a phone that other people use.
  • Use search to find specific messages faster than scrolling through old threads manually.
The best workflow is simple: request the Instagram export, import it once, and then re-import the newest ZIP whenever you want your archive to stay current.

FAQ

How-It-Works FAQs

Do I need JSON format for KeepDM?

Yes, JSON is the format KeepDM is built to read. JSON keeps the message structure, metadata, and media references intact. HTML exports are much harder to parse accurately.

Why not use HTML instead of JSON?

Instagram's HTML export is easier for humans to open, but it is less useful for software that needs clean message structure. JSON is more reliable for indexing conversations, media, and participants. KeepDM uses JSON because it gives the app the best source data.

What exactly is inside the Instagram ZIP?

The ZIP usually contains an inbox or messages folder, thread folders, JSON files, and sometimes a media folder. The JSON files hold the conversation records, and the media folder stores attachments like photos or videos. The structure can vary slightly by export version, but that is the general layout.

What is message_1.json?

message_1.json is one of the thread data files inside the export. Instagram splits larger conversations into multiple files, so message_2.json or later files may also appear. KeepDM reads all of those pieces together so the conversation appears as one thread.

What does the media folder contain?

The media folder contains attachments such as photos, videos, and audio files when Instagram includes them in the export. Some files are shared media and some are linked attachments depending on what happened in the conversation. If you want media visible in KeepDM, request it during the export step.

How do I find the ZIP file on iPhone?

After you download the file from the Instagram email, it usually appears in the Files app or the browser's download location. From there, you can open KeepDM and select the ZIP directly. If you cannot find it, use the Files search or check the Downloads folder.

How do I find the ZIP file on Android?

Android usually saves the export in the Downloads folder or a browser download location. Open KeepDM, browse to that folder, and choose the ZIP file. If you moved it elsewhere, use your file manager to locate the download first.

Can I import from a desktop export?

Yes, as long as you transfer the ZIP to your phone afterward. KeepDM imports the ZIP from local device storage, not from the browser itself. The export source can be desktop or mobile, but the app wants the file on the phone when you import it.

Do I need an all-time export?

You do not have to use All Time, but it is the best choice if you want a full archive. A shorter range can be useful if you only need recent conversations or want a smaller file. For long-term preservation, All Time is usually the safer choice.

Can I import only messages without media?

Yes, KeepDM can still read the message text if you only request Messages. The result is smaller, but you will not see photos or videos that were not included in the export. If media matters, request both Messages and Media together.

How do I know the import is working?

KeepDM usually shows extraction and reading progress while it processes the archive. If the file is large, the first phase can take a while before the conversation list appears. As long as the app is still active and the phone is not frozen, the import is usually still working.

Can I cancel an import midway?

Yes, you can stop the import by closing the app, but the archive may be incomplete if you do that. If you interrupt a large backup, it is best to start the import again from the beginning. For the cleanest result, let the process finish once it starts.

Why keep the app open during import?

KeepDM needs uninterrupted time to extract the ZIP and index the messages. Switching apps or locking the phone too early can slow the process or stop it from finishing cleanly. Leaving the app open is the simplest way to avoid problems on big backups.

Will re-import delete my customizations?

No, re-importing is designed to merge new messages with your existing archive. That keeps your custom names, profile photos, and saved messages intact. If there is a conflict, KeepDM tries to preserve your local changes first.

What if Instagram never sends the email?

Sometimes Instagram takes longer than expected to prepare the export. Check your spam folder, wait a bit longer, and make sure you requested the correct account. If it still never arrives, request the export again from Instagram's data download flow.

Is there a size limit?

KeepDM is designed to handle large archives, but the practical limit depends on your phone's memory and storage. Very large exports take longer and require more patience. If a file is huge, a powerful device and plenty of free storage help a lot.

Can I use the same ZIP on another phone?

Yes, you can move the ZIP and import it again on another device. That is how you keep the same archive across phone upgrades. The export is portable, but each phone stores its own local copy after import.

Does KeepDM support group chats?

Yes, group chats are supported when Instagram includes them in the export. KeepDM reads the participants and message history like any other thread. If the export contains the group, the app can display it.

Can I search across every conversation?

Yes, KeepDM is built for global search across all imported threads. That makes it much easier to find a specific name, phrase, or date than searching one conversation at a time. The archive becomes useful because it is searchable, not just stored.

What is the best backup routine?

Request an all-time export, import it into KeepDM, and then repeat the export every few months if you want newer messages too. That gives you a complete baseline plus regular updates. KeepDM works best when the ZIP file is treated like a living backup rather than a one-time snapshot.