“What analytics does X give you for your posts?”
What analytics does X give you for your posts?
Short answer
X's developer documentation lists post metrics in four groups: public (impressions, likes, reposts, quotes, replies, bookmarks), non-public (URL clicks, profile clicks, engagements), organic and promoted. Non-public, organic and promoted metrics cover only posts from the last 30 days. Threadgehog reads X numbers through Metricool.
Steps
- 1
List your last 10 posts
Note impressions, replies, link clicks and profile clicks.
- 2
Read non-public numbers within 30 days
Save them before the window closes.
- 3
Mark top two and bottom two
Compare opener, length and hour.
- 4
Change one thing next week
Then repeat the list.
What the developer docs cover
X's developer documentation on metrics tells you what data exists for a post and how to reach it. That is the data behind every dashboard and report that shows X numbers.
A scheduler or analytics tool that reports on X reads these same fields, so the list below also explains what a third-party report can show.
Two terms help throughout. An impression is a display of a post, and the same person can account for more than one. An engagement, in the non-public group, is a combined count, so use clicks, replies and quotes when you need specifics.
Public metrics
Public metrics are visible to anyone and need only a bearer token. For a post, the documentation lists reposts (retweet_count), quotes (quote_count), likes (like_count), replies (reply_count), impressions (impression_count) and bookmarks (bookmark_count). For video, view_count is a public metric.
Public means anyone with API access can read it for any public post. That is how a report on a competitor's post works, and it is the reason your own posts show these numbers to everyone.
Because impressions are public, you can compare your numbers with accounts you admire. Treat the comparison as rough. Their audience, topic and age of account differ from yours, and a public impression count says nothing about what they were selling or who clicked.
Non-public, organic and promoted metrics
Non-public metrics need user authentication, which means you, or a tool you authorized, reading your own posts. The documentation lists URL clicks (url_link_clicks), profile clicks (user_profile_clicks) and engagements. For video, it lists playback counts at 0, 25, 50, 75 and 100 percent.
Organic metrics cover non-promoted views and promoted metrics cover ad views, both with user authentication. The example in the documentation shows organic metrics with impressions, likes, replies, reposts, URL clicks and profile clicks.
The 30 day limit applies to all three groups: the documentation says they are only available for posts created within the last 30 days. After that, you keep only public metrics through the API, so save the private numbers if you want long-term trends.
If you use a scheduler, ask which of these fields it reads, whether it stores them past 30 days, and how often it refreshes. A tool that stores weekly snapshots gives you history beyond the 30 days X's API covers. Link clicks sit in the non-public group, so a report that includes them reads your private metrics.
Which numbers to watch
Impressions measure how often a post was displayed. Replies and quotes measure conversation. Link clicks measure whether a post sent anyone to your page, and profile clicks measure curiosity about you. Bookmarks show a post someone wanted to find again.
For a promotion account, link clicks and profile clicks are the numbers closest to results, and both are non-public, so read them within 30 days. Compare each by post, not by day, and watch the ratio of clicks to impressions rather than the raw count.
The edit guide says each version of an edited post has its own engagement metrics, attributed to the version that was visible when the engagement occurred. If you edit within the window, compare the latest version's numbers with posts that were not edited, and note the edit in your log. See edit posts on Threads and X for the rules.
A worked ratio, with invented numbers. Post A had 2,000 impressions and 10 link clicks, a ratio of 0.5 percent. Post B had 800 impressions and 12 link clicks, 1.5 percent. Post A reached more people and Post B persuaded more of the ones it reached. If your goal is visits, study Post B.
What reading the data costs through the API
If a tool reads your analytics through the X API, the pricing page applies. As of October 2026 it lists Posts: Read at $0.005 per resource, and Owned Reads at $0.001 per resource for qualifying endpoints that read your own data, such as your own posts. Pay-per-usage plans are capped at 3 million Post reads per monthly billing cycle.
API prices apply to tools that read your data through the API. These figures matter to anyone who builds a reporting tool or checks how a scheduler gets its numbers. See X API posting limits for the write side.
Cost and access are separate questions. A tool you authorize reads your private metrics on your behalf with user authentication, and the posts it reads are your own. Ask any tool you connect what it stores and how to disconnect it, and remove access for tools you no longer use.
A weekly routine
Once a week, list your last 10 posts with impressions, replies, link clicks and profile clicks. Mark the top two and the bottom two. Read them side by side and write one sentence about what is different, such as the opener, the length or the hour. Then change one thing the following week.
Pair it with the best time to post on X, which uses the same numbers to test the hour. Both routines work from the same log.
Keep the log in a spreadsheet with one row per post: date, hour, first line, impressions, replies, quotes, link clicks, profile clicks and the day you saved the numbers. Save them by day 25 so the 30 day window never costs you data.
If you manage more than one account, keep one sheet per account. Averages across accounts hide what each audience does, and a small account's ratio often behaves differently from a large one's.
One log row can look like this, with invented numbers: 14 Oct, Tuesday, 9 a.m., first line of the post, 1,450 impressions, 9 replies, 4 quotes, 18 link clicks, 31 profile clicks, numbers saved on 17 Oct.
Where Threadgehog fits
Threadgehog reads how your posts did through your scheduler: with Buffer, Publer or Postiz connected for Threads and X posts, and Metricool for X. It compares your top posts with your typical post and builds new drafts on what your top posts share. The site is in waitlist mode, with the 14-day trial starting when the Mac app opens.
Questions
What metrics does X show for a post?
The developer docs list impressions, likes, reposts, quotes, replies and bookmarks as public metrics.
Are link clicks public?
No. URL clicks and profile clicks are non-public metrics, readable with user authentication for your own posts.
How long are private metrics available?
The developer docs say non-public, organic and promoted metrics are available for posts created within the last 30 days.
Does reading metrics cost money through the API?
As of October 2026, Posts: Read is $0.005 per resource and owned reads are $0.001 per resource.
Do edited posts have separate metrics?
Yes. Each version has its own metrics, attributed to the version visible when the engagement happened.
Which tool does Threadgehog read X results through?
Your connected scheduler: Buffer, Publer or Postiz for Threads and X posts, and Metricool for X.
Sources
- X Developer Platform: metrics (checked 2026-10-17)
- X Developer Platform: edit posts (checked 2026-10-17)
- X Developer Platform: pay-per-usage pricing (checked 2026-10-17)
- Threadgehog pricing and FAQ (checked 2026-10-17)