From request to a clean folder
- 1
Request the download from Instagram
Accounts Centre → Your information and permissions → Download your information. Pick your account, choose the date range and (this is the part that matters) select JSON rather than HTML. The HTML version is for reading; the JSON is what carries the timestamps.
- 2
Choose the highest media quality
Instagram offers a quality setting on the request. It affects what is in your archive permanently, and no tool can recover detail the export never contained.
- 3
Drop the zip here when it arrives
Instagram nests the media a level deeper in the zip than its own JSON says it does. The matching handles that, so you will see your posts, Reels, Stories and message photos all resolved to real dates.
- 4
Save the rebuilt archive
Photos and videos come back named by capture time, foldered by year, with EXIF and MP4 header dates written in so an import into Photos or Google Photos lands them on the right day.
What it actually changes
- Posts, Reels, Stories and message media: Anything the export ships as a file is matched against whichever JSON references it, including the media inside your direct messages.
- Emoji and accents restored: Instagram writes UTF-8 into its JSON as though it were Latin-1, so “🚀” arrives as “🚀”. The index this produces reverses that, so your captions read as you wrote them.
- EXIF dates, not just filenames: A renamed file loses its date the moment something re-sorts it. The timestamp is written into the JPEG's EXIF and the MP4's header, where photo libraries look.
- GPS from the exif_data block: Where a post recorded coordinates, they are two levels down in the JSON and invisible to most tools. They come back as real GPS tags.
- Nothing uploaded, nothing kept: The archive is read and rebuilt in your browser. This site never receives it.
Frequently asked
Why are all my photos dated the same day?
Because the export process rewrites the file timestamps to the moment the archive was built. The original capture time is not lost: it is sitting in the JSON next to each file as creation_timestamp, which is what this reads.
Can I get my photos without downloading an export?
Not for a private account, and not through any API. Instagram's Basic Display API, the last one that served personal accounts, was shut off on 4 December 2024. Its replacements require a Business or Creator account and still do not hand over the original files. The export is the route that works.
Does this need my Instagram password?
No. You log in to Instagram to request the export, on Instagram. This page only ever sees the zip you already downloaded.
What about videos from other people's accounts?
Different job entirely. That is what the rest of this site does, for public posts, from a link. Nothing here reaches another account.
Will it work on the HTML export?
Poorly. The HTML export is a website for browsing, not structured data; ask for JSON and you get timestamps, coordinates and captions.
How long does a big archive take?
It is bounded by your disk and CPU rather than a network. Tens of gigabytes is realistic; the progress line names each file as it goes.
Where this fits
This is the same job as the rest of the site (get the file, cleanly, with no account), pointed at the one category a public link can never reach: your own private posts.