Get Instagram demographics
Returns audience demographic insights for an Instagram account, broken down by age, city, country, and/or gender. Requires at least 100 followers. Returns top 45 entries per dimension. Data may be delayed up to 48 hours. Requires the Analytics add-on.
API key authentication - use your Zernio API key as a Bearer token
In: header
Query Parameters
The Zernio SocialAccount ID for the Instagram account
"follower_demographics" for follower audience data, or "engaged_audience_demographics" for engaged viewers.
"follower_demographics""follower_demographics" | "engaged_audience_demographics"Comma-separated list of demographic dimensions: age, city, country, gender. Defaults to all four if omitted.
Time period for demographic data. Defaults to "this_month".
"this_month""this_week" | "this_month"Response Body
application/json
application/json
application/json
application/json
application/json
application/json
import Zernio from '@zernio/node';const zernio = new Zernio({ apiKey: process.env.ZERNIO_API_KEY });const { data } = await zernio.analytics.getInstagramDemographics({ query: { accountId: 'account_abc123', },});console.log(data);{
"success": true,
"accountId": "64e1a2b3c4d5e6f7a8b9c0d1",
"platform": "instagram",
"metric": "follower_demographics",
"timeframe": "last_30_days",
"demographics": {
"age": [
{
"dimension": "25-34",
"value": 4500
},
{
"dimension": "18-24",
"value": 3200
}
],
"gender": [
{
"dimension": "M",
"value": 3000
},
{
"dimension": "F",
"value": 4800
}
],
"city": [
{
"dimension": "New York, New York",
"value": 800
},
{
"dimension": "Los Angeles, California",
"value": 650
}
],
"country": [
{
"dimension": "US",
"value": 5000
},
{
"dimension": "GB",
"value": 1200
}
]
},
"note": "Demographics show top 45 entries per dimension. Requires 100+ followers."
}{
"error": "Invalid breakdowns: location",
"validBreakdowns": [
"age",
"city",
"country",
"gender"
]
}{
"error": "Unauthorized"
}{
"error": "Analytics add-on required",
"code": "analytics_addon_required"
}{
"error": "Access denied to this account"
}{
"error": "Account not found"
}Get Instagram insights GET
Returns account-level Instagram insights such as reach, views, accounts engaged, and total interactions. These metrics reflect the entire account's performance across all content surfaces (feed, stories, explore, profile), and are fundamentally different from post-level metrics. Data may be delayed up to 48 hours. Max 90 days, defaults to last 30 days. Requires the Analytics add-on.
Get Instagram follower history GET
Returns a daily running Instagram follower count time series, served from Zernio's cross-platform daily snapshotter. Exists because Meta removed follower_count from the /insights endpoint in Graph API v22+ and never exposed a historical daily series via any public API. Response envelope matches /v1/analytics/instagram/account-insights so the same client handling works. Max 89 days, defaults to last 30 days. Requires the Analytics add-on.