Instagram hub

Instagram Engagement Rate API

An engagement-rate audit of a public profile's latest posts, with each post as the shared media object, for a handle, a profile URL or a numeric user id.

GET /v2/instagram/profiles/{profile}/engagement

5 credits for an audited profile 1 credit when the profile is private or not found

About this endpoint

GET /v2/instagram/profiles/{profile}/engagement takes a handle (with or without @), a profile URL or a numeric user id. It reads the profile and its latest 12 posts and returns data.lookupStatus (found, private or not_found), data.profile (the profile summary, null when not found) and data.audit.

The audit holds metrics (average and median engagement rate as (likes + comments) ÷ followers × 100, average likes and comments, comment-to-like ratio, volatility, best and worst post and a directional quality label), posts (each sampled post as the shared media object beside its rate, outlier flags and the reason it was skipped, if it was), contentSegments (the average rate by image, video and carousel), sampleCoverage, the formula used and a note on the dates covered. audit.insight is a written summary of the numbers, or null if it couldn't be generated; the rest of the audit never depends on it. canCalculateEngagement is false for private and missing profiles. An audited profile costs 5 credits; a private or missing one has nothing to audit and costs 1 credit, with no written summary. Bill from meta.creditsCharged.

Instagram Engagement Rate API FAQ

How do I get an Instagram engagement rate via API?

Call GET /v2/instagram/profiles/{profile}/engagement with your Social Fetch API key (x-api-key) and a handle, profile URL or numeric user id in the path. Read data.lookupStatus, then data.audit.metrics for the rates and data.audit.posts for the sampled posts.

How much does the Instagram engagement audit cost?

5 credits when the profile is found and audited. 1 credit when it is private or doesn't exist, because there is nothing to audit (and no written summary). Confirm every response with meta.creditsCharged, the billing source of truth.

How is the engagement rate calculated?

For each of the latest posts with visible counts, (likes + comments) ÷ followers × 100; the audit averages them and reports the median too. Posts where Instagram hides likes or comments are listed with a skipReason and left out of the averages. audit.formulaDescription repeats the formula.

What does a private or missing account return?

A private account returns lookupStatus: private with the profile Instagram shows, and an unknown one returns not_found with a null profile. In both, audit.canCalculateEngagement is false, posts is empty and the rates are null. Both are a normal 200 response, cost 1 credit instead of 5, and have no written summary (audit.insight is null).

Is the written summary always there?

No. audit.insight is null for a private or missing profile, and when it couldn't be generated; a found profile's price is the same either way. The numbers don't depend on it.