How to track follower growth and post analytics
Three reads cover most reporting. GET /api/analytics/followers gives daily follower counts and change per account. GET /api/analytics/accounts compares accounts by posts and engagement. GET /api/analytics/post/:uploadId shows engagement for one post on each platform. All three work with the analytics permission, and guarded API keys can call them.
Follower counts are captured once per UTC day. LinkedIn and TikTok cannot report a follower count, so those accounts come back with isTracked: false.
How do I get follower growth?
Sidebar > Analytics. Choose a period and, if you want, one account or
platform.socifyr analytics followers --period last_3months
socifyr analytics followers --connection instagram-mybrand --jsonconst growth = await socifyr.analytics.followers({ period: 'last_month' })
console.log(growth.totals) // { followers, change }
for (const a of growth.accounts) {
console.log(a.slug, a.followers, a.change, a.changePct)
}growth = client.analytics.followers(period="last_month", platform="instagram")
print(growth["totals"])curl "https://api.socifyr.com/api/analytics/followers?period=last_month&connection=instagram-mybrand" \
-H "Authorization: Bearer $SOCIFYR_API_KEY" \
-H "X-Workspace-Id: $SOCIFYR_WORKSPACE_ID"{ "tool": "get_follower_growth", "arguments": { "period": "last_month", "connection": "instagram-mybrand" } }Prompt for your agent: "How much did my accounts grow in the last three months?" The agent calls get_follower_growth with period: "last_3months".
Response:
{
"success": true,
"data": {
"from": "2026-10-14T00:00:00.000Z",
"to": "2026-11-13T00:00:00.000Z",
"totals": { "followers": 5340, "change": 212 },
"accounts": [
{
"connectionId": "6a0502f184584482ace13d10",
"slug": "x-mybrand",
"platform": "x",
"username": "mybrand",
"isTracked": true,
"followers": 4200,
"change": 180,
"changePct": 4.48,
"series": [{ "date": "2026-10-14", "followers": 4020 }]
}
]
}
}followers is null until the first daily snapshot exists for a new account.
What query parameters do the account endpoints take?
| Parameter | Values | Default |
|---|---|---|
period | last_day, last_week, last_month, last_3months, last_year | last 30 days |
from, to | ISO 8601 dates. period overrides them. | none |
connection | A connection slug such as instagram-mybrand | all accounts |
platform | A platform name such as x | all platforms |
How do I compare accounts?
socifyr analytics accounts --period last_monthconst cmp = await socifyr.analytics.accounts({ period: 'last_month' })
for (const a of cmp.accounts) {
console.log(a.slug, a.posts, a.engagement, `${a.engagementRate}%`)
}cmp = client.analytics.accounts(period="last_month")curl "https://api.socifyr.com/api/analytics/accounts?period=last_month" \
-H "Authorization: Bearer $SOCIFYR_API_KEY"{ "tool": "compare_accounts", "arguments": { "period": "last_month" } }Each account row has followers, followerChange, posts, likes, comments, shares, saves, impressions, engagement (likes plus comments plus shares plus saves), avgEngagementPerPost, engagementRate (engagement divided by impressions, as a percent) and followerEngagementRate (average engagement per post divided by followers). Rows are sorted by engagement.
How do I see analytics for one post?
const post = await socifyr.analytics.getPost('6a05032a84584482ace13d5f')
for (const ch of post.platforms) {
console.log(ch.platform, ch.engagement?.likes, ch.engagement?.impressions)
}post = client.analytics.get_post("6a05032a84584482ace13d5f")curl https://api.socifyr.com/api/analytics/post/6a05032a84584482ace13d5f \
-H "Authorization: Bearer $SOCIFYR_API_KEY"{ "tool": "get_post_analytics", "arguments": { "postId": "6a05032a84584482ace13d5f" } }The CLI has no per-post analytics command. platforms[].engagement holds likes, comments, shares, impressions, clicks, saves, engagementRate and lastFetchedAt, and is null until metrics are fetched.
What other analytics endpoints exist?
GET /api/analyticsreturns a summary, daily snapshots and a per-platform breakdown for a date range (from,to,platform,granularityofdaily,weeklyormonthly, orperiod). The TypeScript SDK exposes it asanalytics.get().GET /api/analytics/top-postsranks posts by engagement, default window 90 days,limit1 to 50.GET /api/analytics/best-times,/exportand/platform-metricsare also available. See the REST reference.POST /api/analytics/syncrefreshes metrics now.
What errors can I get, and how do I fix them?
| Error | Cause | Fix |
|---|---|---|
isTracked: false on an account | LinkedIn and TikTok do not expose follower counts. | Nothing to fix. Use post engagement instead. |
followers: null | First daily snapshot has not run yet. | Check again tomorrow. |
Validation error on period | Value not in the list above. | Use one of the five values. |
400 on connection for /analytics | Only the two account endpoints accept connection. | Use platform on the other endpoints. |
Engagement null | Metrics have not been fetched for the post. | Wait, or call analytics.sync(). |
FAQ
Can I export analytics?
GET /api/analytics/export exists. See the REST reference for its parameters.
Do these cost anything?
No extra charge. Analytics calls are reads.