Keep Instagram Insights History Past the 90-Day Window

Meta stores Instagram account metrics for up to 90 days. How to keep Instagram insights history: dated snapshots, official login, and what to store and check.

A person holding a cell phone in front of a laptop
Photo by SumUp / Unsplash

To keep Instagram insights history, save it yourself before it expires. Meta's API stores account-level metrics for up to 90 days, so anything older is gone unless a tool copied it at the time. Connect the account through Meta's official login, pull insights on a schedule, and store each value as a dated snapshot in your own database.

TL;DR: Meta keeps Instagram user metrics for up to 90 days (Meta docs). History only exists if something saved it. Sync on a schedule through official login, store dated snapshots per account and per post, record the API version, never overwrite corrections, and check that a tool lets you export and delete your data.

Why do old Instagram insights disappear?

They disappear because Meta only keeps them for a short window. Meta's Instagram Platform documentation says it plainly: "User Metrics data is stored for up to 90 days" (Meta, Instagram Platform insights). After that, the API can't return the numbers, and no tool can fetch them retroactively.

The window is shorter for some metrics. The account insights reference says data for the online_followers metric is only available for the last 30 days, and that data behind metrics may be delayed by up to 48 hours (Meta, Instagram account insights). So "90 days" is a ceiling, not a promise for every number.

One more detail catches people out. When data doesn't exist or isn't available yet, the API returns an empty data set rather than a zero. A sync that stores "nothing came back" as zero will quietly corrupt a creator's history. Store "missing" as missing.

Why does a long history matter to creators and brands?

A long history is what turns a pitch into evidence. Brands want to know whether reach is growing, which formats work, and whether engagement held after a viral month. A 90-day window can't answer any of that, and a screenshot of one good month is easy to fake and hard to compare with anything.

Agencies feel this at scale. They manage many creators and need the same numbers, defined the same way, across all of them, month after month. If each creator's history starts on a different day and was collected by a different method, the comparison is worthless. Have you ever tried to rebuild last year's numbers from a folder of screenshots? It doesn't work.

How does a tool keep Instagram insights history?

It keeps history by copying the numbers on a schedule, before Meta drops them. The tool never depends on Instagram still having the data. Each sync stores what it fetched with a timestamp, and trends, grades, and media kits are built from that stored copy rather than from a live API call.

Step What happens
Connect The creator signs in through Meta's official login and grants permissions
Schedule The tool queues a sync for each connected account at regular intervals
Pull Each sync fetches recent insights through the official API
Store Values are saved as dated snapshots in the tool's own database
Recover Failed syncs retry with backoff instead of losing a day
Use Trends, grades, and media kits come from the stored history

This is the job Pullsy, our analytics product for creators, was built for. In Pullsy, scheduled pulls go through Instagram's official sign-in and the results are stored long after Instagram forgets them. From building it, the lesson we'd pass on is simple: the hard part isn't the API call. It's making sure no day is ever skipped.

What happens when a sync fails?

A failed sync costs you data only if it stays failed past the window. If syncs break quietly for a few days and Meta's window moves on, those days are gone for good. So the sync engine needs a queue that doesn't lose jobs, backoff on rate limits, and a separate state for accounts whose access has expired.

Meta's rate limiting returns its own headers and error codes, including code 80002 when the Instagram business use case limit is hit (Meta, rate limiting). Pullsy maps Meta error codes to backoff with jitter, capped at 30 minutes, and treats re-authorization as its own state rather than retrying a dead token forever.

The full pattern (error classes, jitter, caps, locks, and alerts) is in our post on API rate limit backoff. We won't repeat it here. What matters for history is the consequence: every unhandled failure is a hole in a chart you can never fill.

What should you store to keep a usable history?

Store dated snapshots, not just the latest value. The shape of the stored data decides what you can show later, and a table that only holds today's follower count can never draw a trend line. Four rules cover most of it.

  1. Snapshots with timestamps. Follower counts, reach, and engagement change daily. A row per account per day is what makes a trend chart possible.
  2. Per-post metrics apart from account metrics. Brands ask "how is the account doing?" and also "how did our campaign post do?". These are different tables.
  3. When each number was fetched, and from which API version. Meta renames and retires metrics. If you know which version produced a value, a definition change doesn't silently break year-over-year comparisons.
  4. Corrections beside originals. If a later sync revises a number, keep both. Overwriting history makes audits impossible.

The third rule is the one teams skip, and it's the one that hurts later. A chart that compares "reach" from two API versions as if it were the same metric looks fine and is wrong. Storing the version costs one column.

Is it safe to connect an account to an analytics tool?

It's safe when the tool uses Meta's official login. With Business Login for Instagram, the creator approves permissions in Meta's own authorization window and the app receives a token, never the password (Meta, Business Login for Instagram).

Tokens also expire. Meta's long-lived Instagram tokens last 60 days and can only be refreshed while still valid, so a well-built tool refreshes them on schedule and asks the creator to sign in again when a refresh fails. That's why "needs sign-in" should be a visible state in the product, not a silent error.

Before connecting any tool, ask:

  1. Does it use Meta's official login, or does it ask for your password? Never hand over a password.
  2. What does it store, and for how long?
  3. Can you export your history, and can you delete it?
  4. Who can see your numbers, and can you choose what goes into a media kit?

Deletion isn't optional for the tool, either. Meta's Platform Terms require developers to delete Platform Data when a user asks, or when keeping it is no longer necessary for a legitimate business purpose (Meta Platform Terms). A tool that can't delete your data on request has a problem with Meta, not just with you.

A media kit a brand can trust

A trustworthy media kit shows numbers over a meaningful period, says where they came from, and is dated. Raw metrics aren't a pitch. Pullsy's scoring service turns them into a grade and a shareable media kit, and the point for a brand is that the numbers come from the platform's API, not from a screenshot someone cropped.

What to look for in any media kit:

  • Numbers over months, not only the best month.
  • Plain explanations of each metric, since "reach" and "impressions" confuse most readers.
  • A clear source: pulled from the official API, with the date of the last sync.
  • The creator's control over which numbers are shown.

Agencies need a fence around each client

Agencies need one place for many accounts, with access fenced per client. The questions change from "is my data safe?" to "can one client's creators ever show up in another client's view?" and "does removing a team member remove their access everywhere?".

Meta's terms point the same way. Tech providers handling data for several clients must keep each client's Platform Data separate (Meta Platform Terms). In Pullsy, multi-tenant isolation is covered by tests rather than left to code review. If a tool can't tell you how it's tested, assume it isn't. More on the wider market on our creator economy page.

What should you ask before choosing a tool?

Ask how far back it keeps data, how it syncs, and whether the history is yours. A tool can only keep history from the day you connect it, so the cost of waiting is real: every month you delay is a month that's gone.

  1. Does history start the day I connect, and can I export all of it?
  2. How often does it sync, and what happens when a sync fails?
  3. Does it use Meta's official API and login?
  4. Can a brand see where the numbers in a media kit came from?
  5. Does it record which API version produced each number?
  6. Is there an API for my own reporting?

If you're a platform building this into your own product, the pieces are the same: official login, a queue that doesn't lose jobs, error handling tuned to Meta's codes, long-term snapshot storage, and clear rules on who sees what. Read Meta's terms before you design the database, because they set limits on what you may keep.

FAQ

How long does the Instagram API keep account insights?

Meta's documentation says user metrics are stored for up to 90 days, and some metrics, such as online followers, cover only the last 30 days. Anything older can't be fetched from the API, so long-term history has to be saved by a tool or your own sync while the data is still available.

Can a tool recover insights I never saved?

No. A tool can only keep history from the day you connect it, because the API won't return data past Meta's retention window. That's why connecting early matters. If you plan to pitch brands next year with a twelve-month trend, the sync needs to start now, not when the pitch is due.

Why does my synced history show gaps?

Usually because a sync failed for longer than the window, an access token expired without the creator signing in again, or the API returned an empty data set that was stored badly. A good tool shows a needs-sign-in state, retries with backoff, and stores missing values as missing rather than as zero.

Should a media kit include the dates of the data?

Yes. A media kit without dates can't be compared with anything, and brands discount numbers they can't place in time. Show the period the numbers cover, when the last sync ran, and that values came from the official API. Those three details do more for trust than any design choice.

Want a tool that keeps your Instagram history, or need this sync built into your own platform? See our Instagram analytics tool page, or read how we build integrations on the API development page, and tell us which networks you need.