PostMetricsDto

  • avgWatchTime
    Type: number | null

    Average time in milliseconds that viewers spent watching the reel. This metric is specific to Instagram Reels and is provided by the Instagram Graph API.

  • comments
    Type: number | null

    Total number of comments on the content. For Twitch streams, this represents chat messages.

  • cpe
    Type: number | null

    Cost per engagement, calculated as the ratio of cost to total engagements. Exists in organic, paid, and blended (total) variants. A lower CPE indicates more cost-efficient content. Organic formula: allocatedContentCost / engagements for this individual post. Paid variant (paidCpe): paidAdSpend / paidEngagements.

  • cpm
    Type: number | null

    Cost per thousand impressions, calculated as (cost / impressions) × 1,000. Exists in organic, paid, and blended (total) variants. A lower CPM indicates more cost-efficient content in terms of reach/visibility. Organic formula: (allocatedContentCost / impressions) × 1,000 for this individual post. Paid variant (paidCpm): (paidAdSpend / paidImpressions) × 1,000.

  • crosspostedFacebookOnlyViews
    Type: number | null

    Number of views from Facebook only for a crossposted Instagram Reel. Only populated for reels that have been crossposted to Facebook. Represents the Facebook-specific portion of total crossposted views.

  • crosspostedViews
    Type: number | null

    Number of views from both Instagram and Facebook when an Instagram Reel is crossposted to Facebook. Only populated for reels that have been crossposted to Facebook.

  • engagementRate
    Type: number | null

    Percentage of impressions that resulted in an engagement action. Calculated as (engagements / impressions) × 100. Exists in organic, paid, and blended (total) variants. Per-post value. Formula: (engagements / impressions) × 100. Paid variant (paidEngagementRate): (paidEngagements / paidImpressions) × 100.

  • engagements
    Type: number | null

    Total number of engagement actions on the content. Calculated as the sum of likes, comments, shares, clicks, and saves (where applicable). The paid engagement formula differs slightly by content type (e.g., TikTok excludes saves from paid engagements).

  • estimatedValueGenerated
    Type: number | null

    Estimated monetary value of organic engagement, calculated using industry benchmark rates. Calculated as the sum of value of likes, value of comments, value of impressions, and value of shares, using platform-specific benchmark multipliers. Also referred to as "estimated value generated" in some API responses. Per-post value. Formula: valueOfLikes + valueOfComments + valueOfImpressions + valueOfShares using the benchmark multipliers for this post's content type. Note: instagram_reel uses impressions × VPV; instagram_story uses only the impressions component.

  • impressions
    Type: number | null

    Total number of times the content was displayed. The source of this metric varies by content type: for video content types like reels, it may represent video plays; for story and streaming content, it may represent views.

  • likes
    Type: number | null

    Total number of likes received on the content.

  • navigationSwipeForward
    Type: number | null

    Number of swipes to advance to the next Instagram Story. A sub-metric of the total navigation count.

  • navigationTapBack
    Type: number | null

    Number of taps to go back to the previous Instagram Story. A sub-metric of the total navigation count.

  • navigationTapExit
    Type: number | null

    Number of taps to exit the Instagram Story viewer. A sub-metric of the total navigation count.

  • navigationTapForward
    Type: number | null

    Number of taps to skip to the next Instagram Story. A sub-metric of the total navigation count.

  • paidComments
    Type: number | null

    Paid variant. Total number of comments on the content. For Twitch streams, this represents chat messages.

  • paidCpe
    Type: number | null

    Paid variant. Cost per engagement, calculated as the ratio of cost to total engagements. Exists in organic, paid, and blended (total) variants. A lower CPE indicates more cost-efficient content. Organic formula: allocatedContentCost / engagements for this individual post. Paid variant (paidCpe): paidAdSpend / paidEngagements.

  • paidCpm
    Type: number | null

    Paid variant. Cost per thousand impressions, calculated as (cost / impressions) × 1,000. Exists in organic, paid, and blended (total) variants. A lower CPM indicates more cost-efficient content in terms of reach/visibility. Organic formula: (allocatedContentCost / impressions) × 1,000 for this individual post. Paid variant (paidCpm): (paidAdSpend / paidImpressions) × 1,000.

  • paidEngagementRate
    Type: number | null

    Paid variant. Percentage of impressions that resulted in an engagement action. Calculated as (engagements / impressions) × 100. Exists in organic, paid, and blended (total) variants. Per-post value. Formula: (engagements / impressions) × 100. Paid variant (paidEngagementRate): (paidEngagements / paidImpressions) × 100.

  • paidEngagements
    Type: number | null

    Paid variant. Total number of engagement actions on the content. Calculated as the sum of likes, comments, shares, clicks, and saves (where applicable). The paid engagement formula differs slightly by content type (e.g., TikTok excludes saves from paid engagements).

  • paidImpressions
    Type: number | null

    Paid variant. Total number of times the content was displayed. The source of this metric varies by content type: for video content types like reels, it may represent video plays; for story and streaming content, it may represent views.

  • paidLikes
    Type: number | null

    Paid variant. Total number of likes received on the content.

  • paidReach
    Type: number | null

    Paid variant. Number of unique accounts that saw the content.

  • paidSaves
    Type: number | null

    Paid variant. Number of times the content was saved/bookmarked.

  • paidShares
    Type: number | null

    Paid variant. Total number of shares of the content. For Pinterest, this represents pin saves. For Twitter/X, this represents retweets.

  • paidViews
    Type: number | null

    Paid variant. Number of times the content was viewed. For Instagram content, this is the new "views" metric from the Instagram Graph API (replacing deprecated "impressions"). For TikTok, views represent organic video views.

  • potentialReach
    Type: number | null

    Potential reach of the content, representing the total audience that could have seen the content.

  • reach
    Type: number | null

    Number of unique accounts that saw the content.

  • replies
    Type: number | null

    Number of replies to the Instagram Story. This metric is specific to Instagram Stories and represents direct message replies to the story.

  • reposts
    Type: number | null

    Number of times the content was reposted by other users on Instagram. Note: availability may depend on the authentication method used for data collection.

  • saves
    Type: number | null

    Number of times the content was saved/bookmarked.

  • shares
    Type: number | null

    Total number of shares of the content. For Pinterest, this represents pin saves. For Twitter/X, this represents retweets.

  • totalInteractions
    Type: number | null

    Total number of interactions on the content as reported by Instagram. This is Instagram's own aggregate interaction count which may differ from our computed "engagements" metric.

  • videoViewTotalTime
    Type: number | null

    Total cumulative watch time in milliseconds across all views of the video content. Useful for understanding audience retention and content engagement depth.

  • views
    Type: number | null

    Number of times the content was viewed. For Instagram content, this is the new "views" metric from the Instagram Graph API (replacing deprecated "impressions"). For TikTok, views represent organic video views.