Skip to content

Analytics

Where: /analytics

Analytics answers three different questions on one page — how is the account doing, which video worked, how does it evolve — and a fourth on Instagram: did the automation convert.

It also does something the original project does not: it keeps its own history. Instagram and TikTok both answer about the present, with windows of their own choosing. UseNadia collects daily and stores the series, which is what lets a video be compared against the others at the same age rather than against whatever they total today.

The scope picks the candidates; the analysed channel is always named at the top of the page, avatar and platform included.

  • One candidate: that is the channel.
  • Several: a select next to the name chooses, without persisting anything. Reload and you are back to what the sidebar says. To pin a channel durably, pick it in the account switcher under its brand.
  • A link from a video carries ?channel=<id> and wins until you touch the select.
  • None: the page offers to take you to a brand that has one.

?tab=<name> opens the page straight on a tab.

Account metrics over 7 / 30 / 90 days, as tiles with a sparkline, plus Refresh Channel.

The small number under each tile always says what it compares to, and there are two kinds of tile:

Kind Tiles Big number Small number
Current totals Followers, Total likes, Following The state right now The movement over the last N days
Period totals Views, Videos published What was gained or published during the period vs the previous period of the same length

The ranking: one row per video, one column per metric the channel reports — date, views, reach, likes, comments, shares, saves, watch time, Engagement and Skip rate — over 30 days, 90 days or a year.

Clicking a column header sorts on it, best first (so ascending for skip rate, descending everywhere else); clicking again reverses. The default is newest first. A missing value always sorts last.

The whole window comes back in one response, with each video’s current counters, because a ranking has to see every video at once — which paged reading cannot guarantee. A channel with nothing collected gets an empty state pointing at the History tab’s switch.

The series UseNadia collected itself.

  • Collect history for this channel — the per-channel opt-in. Nothing is collected until it is on. Supported on Instagram and TikTok. The organisation-wide switch is in Settings.
  • A window from 7 days to a year.
  • Followers over time.
  • A Videos curve, with a scale of either % of views or Counts.
  • The video cards, clickable through to the video page.

On Instagram, each video card also carries the automations posed on it — an Automation badge and N people · N emails · N failed — and a With an automation filter sits above the grid. That is the answer to which videos offer something, and did it work.

Video cards load newest first, page by page, showing Loading older videos… while the catalogue fills.

Instagram channels only. Three parts, top to bottom:

  • Templates — the comment → DM automations of the workspace, each with how many posts of this channel it is posed on and how many people went through, and Open to edit it.
  • Posed on this channel — the totals (Publications, People triggered, DM delivered, Emails), then one row per pose: its words, its counters, Check now, Pause / Resume, Remove, and Show the people, each with their username, word, email and status.
  • Pose on a publication — pick a post, or a story while it is live, then the template and its words. A story is never collected into the video catalogue, so this is the only place to catch one.

Export CSV, next to Posed on this channel, downloads every person of every pose of the channel in one file — columns template, media_id, email, instagram_username, keyword, status, date — and each pose has its own Export CSV among its people. That is how you keep the emails without a Brevo connection. The file holds the 5,000 most recent people of each publication; the app warns you when one reaches it.

/analytics/video/:channel/:video, reached from a video card or a ranking row.

One video: Published from UseNadia when it came from the calendar, its age, a button through to the platform, then its metrics — views, likes, comments, shares, Engagement (likes + comments + shares, over views) and, on an Instagram Reel, the Skip rate (lower is better; current value only, and under 200 views the tile says it is noise).

Below: the description, the Automations block on Instagram, a {metric} over time chart, and the Release curve — the value at hourly milestones plus Last 24h.

The Automations block lists the templates posed on this video, one row per pose with its counters (N people · N waiting · N done · N failed · N emails) and its people, each with their Export CSV. + Pose another template poses one more — a template is posed once per publication, because offering the same thing twice would message the same people twice.

History was never switched on for this channel

The collector is opt-in per channel, on the History tab, and there is a global switch in Settings → Global Settings as well. Nothing is collected retroactively: the series starts the day you turn it on.

The channel was connected recently

Both platforms only return data from the point the connection was authorised. Give it a few days.

The account is too new

Instagram withholds insights below a follower threshold. The API returns nothing rather than an error, so the chart is simply blank.

The channel needs reconnecting

An expired token breaks analytics before it breaks posting. Check for a red dot in the account switcher.

The agent reads the same history. Everything here is also on the Public API: the live platform numbers (/analytics/:integration), per post (/analytics/post/:postId), and the three endpoints that read the collected history — the video catalogue, the account series and the per-video series.