Analytics

Post metrics

What engagement metrics are collected for each published post, and how often they're updated.

After a post is published, Vlozi automatically polls the platform for engagement data and records snapshots over time. This gives you a time-series view of how each post performs throughout its life.

What's tracked

Engagement metrics (per published post)

Metric Twitter / X LinkedIn Facebook Instagram
Likes
Reposts / Shares ✅ (retweets) ⚠️ Limited ⚠️ Limited N/A
Replies / Comments ⚠️ Limited ⚠️ Limited ⚠️ Limited
Quotes ✅ (quote tweets) N/A N/A N/A
Bookmarks N/A N/A N/A
Impressions ✅ (owned posts only) ⚠️ Limited ⚠️ Limited
URL clicks ✅ (owned posts only) ⚠️ Limited N/A
Profile visits ✅ (owned posts only) N/A N/A N/A

Twitter impressions are only available for posts you own via the authenticated account. Retweets/quoted posts from others do not expose impression data.

LinkedIn / Meta metrics are limited by what the platform's public API exposes. Full impression data requires Business Suite API access (enterprise tier).

Account metrics (per connected account)

Vlozi also tracks audience growth snapshots:

Metric All platforms
Follower count
Following count
Total post count
Listed count (Twitter) ✅ Twitter only

Account stats are captured alongside post metrics in the same polling cycle.

Polling cadence

Vlozi uses a tiered polling cadence — posts receive more frequent updates when they're new (when engagement is highest) and fewer as they age.

Post age Poll interval
Less than 2 days Every 6 hours
2–7 days Once per day
7–30 days Once per week
More than 30 days No more polling (archived)

Polling is driven by a per-tenant Durable Object (AnalyticsScheduler) that wakes up, fetches metrics for all eligible posts, stores snapshots, and then schedules the next alarm based on the oldest unarchived post.

The first poll for a new post happens within 10 minutes of publication (triggered when the publish job completes).

Viewing metrics in the dashboard

Content Engine → Analytics → Posts — table of all published posts with their latest snapshot metrics.

Click any post to see the time-series chart — a graph of engagement over the polling intervals since publication.

Overview tab — top-level KPIs for your whole account:

  • Total posts published in the selected period
  • Total engagement (likes + shares + replies + quotes)
  • Period-over-period deltas (vs. same period prior)
  • Breakdown by platform

Querying metrics via the API

Latest snapshot per post:

GET /content/analytics/posts?platform=twitter&from=2026-06-01&to=2026-06-30

Time-series for one post:

GET /content/analytics/posts/:slotTargetId/series

Returns an array of snapshots ordered by capturedAt:

[
  {
    "capturedAt": "2026-06-10T09:15:00Z",
    "likeCount": 12,
    "retweetCount": 3,
    "replyCount": 1,
    "impressionCount": 540
  },
  {
    "capturedAt": "2026-06-11T09:15:00Z",
    "likeCount": 18,
    "retweetCount": 5,
    "replyCount": 2,
    "impressionCount": 721
  }
]

Account growth:

GET /content/analytics/account?connection=conn_twitter_abc123

Best-time-to-post heatmap:

GET /content/analytics/timing?platform=twitter

Returns an array of engagement totals by hour of day (0–23 UTC), averaged across all posts in the past 90 days.

Credit cost

Analytics polling costs 1 credit per connected account per day, regardless of how many posts are polled in that cycle. If you have 3 connected accounts (Twitter, LinkedIn, Instagram), analytics costs 3 credits/day.

Credits are charged in the daily rollup inside the AnalyticsScheduler DO — not on every individual poll call.

Content Engine · AnalyticsEdit on GitHub