Instagram’s dashboard shows you labels like “Accounts reached” or “Saves.” When you pull the same data through an API or an AI assistant, those labels become field ids like reach and media_saved. This glossary maps one to the other, ordered by how often each field actually gets requested, so the ones people ask about most are at the top.
Post and media fields, caption, reach, saves, shares, comments, likes, views, dominate. Profile and account basics come next. Audience breakdown fields and Story fields are pulled far less often, which is why they’re grouped separately near the end rather than mixed into the main table.
Field glossary
| Instagram dashboard label | Field id | What it means |
|---|---|---|
| Media type | media_type |
Whether the post is an image, video, carousel, or Reel |
| Media created | timestamp |
Date and time the post was published (Stories use story_timestamp instead) |
| Accounts reached | media_reach |
Unique accounts that saw this specific post |
| Caption | media_caption |
The post’s caption text |
| Saves | media_saved |
Unique accounts that saved this post |
| Shares | media_shares |
Number of times this post was shared |
| Comments | media_comments_count |
Comment count on the post, excluding caption and child media comments |
| Likes | media_like_count |
Like count on the post |
| Views | media_views |
Times this specific post has been seen |
| Permalink | media_permalink |
The post’s URL on Instagram |
| Engagement | media_engagement |
Likes, comments, saves, and shares added together for this post |
| Profile followers | followers_count |
Current total followers on the account, a snapshot, not a history |
| Profile media count | media_count |
Total number of posts on the profile, as of today |
| Total interactions | total_interactions |
Interactions across posts, Stories, Reels, and video combined |
| Views (account-level) | views |
Total times any content on the account was played or displayed |
| Instagram user name | username |
The account’s handle |
| Shares (account-level) | shares |
Shares across all content types on the account |
| Likes (account-level) | likes |
Likes across posts, Reels, and videos on the account |
| Comments (account-level) | comments |
Comments across posts, Reels, videos, and live videos |
| Saves (account-level) | saves |
Saves across posts, Reels, and videos |
| Profile follows | follows_count |
Number of accounts this profile follows |
| Accounts engaged | accounts_engaged |
Accounts that interacted with any of your content, ads included |
| Media product type | media_product_type |
Where the media appears: ad, feed, IGTV, or Story |
| Profile reach (1 day) |
reach_1d, alias reach
|
Unique accounts that saw any of your media in a day |
| New followers (1 day) |
follower_count_1d, alias follower_count
|
New followers gained in a day (not available under 100 total followers) |
| Reel average watch time | media_reel_avg_watch_time |
Average time viewers spent watching this Reel, in milliseconds |
| Media follows | media_follows |
Accounts that started following you after viewing this specific post |
| Reel skip rate | media_reel_skip_rate |
Share of viewers who skipped the Reel within the first 3 seconds |
| Biography | biography |
The profile’s bio text |
| Profile visits from media | media_profile_visits |
Profile visits triggered by viewing this post (not supported for Reels) |
| Profile links taps | profile_links_taps |
Taps on your address, call, email, or text button |
| Linked website | website |
The website link shown on the profile |
| Reel total interactions | media_reel_total_interactions |
Likes, saves, comments, and shares on a Reel, net of removals |
| Profile (account) name | name |
The display name on the profile |
| Reel total watch time | media_reel_total_watch_time |
Total time the Reel was played, including replays |
Audience demographics fields
These break down your follower base by country, gender, age, or city. All four follow the same pattern: a _name field for the group label and a _size field for the count in that group, audience_country_name / audience_country_size, audience_gender_name / audience_gender_size, audience_age_name / audience_age_size, audience_city_size / city, plus a combined audience_gender_age_name / audience_gender_age_size pair. Instagram only allows one breakdown per request, see the rules below.
Instagram Stories fields
Story-specific fields are requested far less often than post fields, mostly because Stories expire after 24 hours and need to be actively archived to analyze later: story_id, story_timestamp, story_reach, story_views, story_replies, story_shares, story_interactions, story_exits, story_swipe_forward, story_taps_back, and story_taps_forward. If you want Story history to persist, pull these on a daily schedule rather than checking them after the fact, once a Story expires its data goes with it.
Names that don’t exist
These are the field names people and AI assistants commonly guess that Instagram’s API doesn’t actually use. If you send one of these, you’ll get an “Unexpected field” error:
| What people type | What they meant |
|---|---|
media_timestamp |
timestamp |
website_clicks |
profile_links_taps |
permalink / caption
|
media_permalink / media_caption
|
followers |
followers_count |
media_likes / media_comments
|
media_like_count / media_comments_count
|
saved |
media_saved |
audience_city_name |
city |
media_total_interactions |
media_engagement |
Four rules that explain most Instagram errors
- New followers per day only reaches back a limited window. This is the single most common Instagram error teams hit. See the follower tracker for the fix.
- Most metrics are capped to roughly the last two years. Older history isn’t retrievable after the fact, only a running scheduled pull builds it going forward.
- Only one audience breakdown per request. Asking for country and gender together in one call fails, run them as four separate requests instead.
- Insights require a Professional account. A personal Instagram account can’t pull most of the fields above; the account needs to be a Business or Creator account.
Related reading
FAQs
What does "Accounts reached" actually map to?
The field id is reach (an alias for reach_1d) at the account level, or media_reach for a single post.
Why can't I get country and gender in the same request?
Instagram’s API only allows one audience breakdown dimension per request. Run separate calls for country, gender, age, and city, then combine the results yourself.
Do I need a business account to see these fields?
Yes. Insights data requires a Professional (Business or Creator) Instagram account connected through Facebook. A personal account can’t expose most of these fields.

