# Twitter Analytics API: Pull X Metrics as JSON Canonical: https://www.twitterapis.com/twitter-analytics-api Description: Pull public X post metrics, profile counts, and full post history as JSON at $0.0008 a call. No developer account, no dashboard export, 600 req/min cap. Generated: 2026-09-14T03:00:37.841Z --- 1. [Home](/) 2. / Twitter Analytics API ANALYTICS # Twitter Analytics API: Pull X Metrics as JSON Updated July 2026 ## How do you pull Twitter (X) analytics data with an API? A Twitter analytics API is a REST interface that returns the raw measurement fields behind X activity as JSON rather than as a dashboard: per-post like, repost, reply, quote and bookmark counts, account-level follower and post counters, and the post history you aggregate over. TwitterAPIs exposes these across nine read endpoints on one Bearer key at $0.0008 per call, with no X developer account and no monthly plan. We bill each standard metric read at $0.0008 (source: our published pricing), roughly $0.04 per 1,000 posts including their engagement counts. [Start Free](/signup?utm_source=aio&utm_medium=organic&utm_campaign=aeo-twitter-analytics-api)[Read the docs](https://docs.twitterapis.com/docs/reference/tweet-details/tweet-detail) ## Every metric, mapped to the endpoint that returns it There is no single analytics call, because analytics is not a single question. Volume, engagement, reach and audience each come off a different endpoint, all sharing one Bearer key. Pick the rows that answer your question and ignore the rest, because you are billed per call rather than per seat. What you measure Endpoint What comes back Per call Docs Per-post engagement counts GET /twitter/tweet/detail Likes, reposts, replies, quotes, bookmarks, views $0.0008 [View docs](https://docs.twitterapis.com/docs/reference/tweet-details/tweet-detail) Account-level profile counters GET /twitter/user/info Followers, following, post count, listed count, created date $0.0008 [View docs](https://docs.twitterapis.com/docs/reference/user-reads/user-info) Recent posts for a time series GET /twitter/user/tweets Paged posts with metrics attached to each record $0.0008 [View docs](https://docs.twitterapis.com/docs/reference/user-reads/user-tweets) Entire account history in one job GET /twitter/user/tweets/complete The full archive, walked for you rather than cursor by cursor $0.0024 [View docs](https://docs.twitterapis.com/docs/reference/user-reads/user-tweets-complete) A keyword corpus to score GET /twitter/tweet/advanced\_search Matching posts with full text, author, and metrics $0.0008 [View docs](https://docs.twitterapis.com/docs/reference/search/tweet-advanced-search) Replies under a post GET /twitter/tweet/replies Reply text and authors, the raw input for sentiment work $0.0008 [View docs](https://docs.twitterapis.com/docs/reference/tweet-details/tweet-replies) Who amplified a post GET /twitter/tweet/retweeters The accounts that reposted, with their profile fields $0.0008 [View docs](https://docs.twitterapis.com/docs/reference/tweet-details/tweet-retweeters) Brand and competitor mentions GET /twitter/user/mentions Every public post naming an account, newest first $0.0008 [View docs](https://docs.twitterapis.com/docs/reference/user-reads/user-mentions) Trend context around a spike GET /twitter/trends Trending topics per location, to explain a jump in volume $0.0008 [View docs](https://docs.twitterapis.com/docs/reference/trends/trends) ## What a third-party analytics API can and cannot see This is the part most vendor pages skip. Some X measurements are public and some are owner-only telemetry that never leaves X's first-party products. Knowing which is which before you scope a project saves you a rebuild later. Measurement Status Why Your own account's impressions and profile visits Not available Impression and profile-visit counts for an account you own live in X's own analytics surface and its ads products. No third-party API can read them, and we do not claim to. Public engagement counts on any post Available Likes, reposts, replies, quotes, bookmarks and the public view count ship on every post record we return, for any public account, not just one you control. Sentiment scores You compute them We return post text, replies and quote posts as clean JSON. We do not run a sentiment model over it. Feed the text to whichever classifier you already trust and keep the scoring under your own control. Share of voice against competitors You compute it Run one advanced\_search per brand term over the same window, count the matched posts and sum their engagement. The API supplies the corpus; the ratio is arithmetic you own. ## Build an engagement-rate report over a month of posts The most common first job. Pull an account's recent posts with `GET /twitter/user/tweets`, read the engagement counts already attached to each record, and divide by follower count from `GET /twitter/user/info`. No second call per post is needed, because the metrics ride along with the post. A 30-day window on a daily poster is roughly 30 records, which is two calls and under a cent. ### Pull posts and compute engagement rate curlPythonJavaScript Copy ``` curl -H "Authorization: Bearer YOUR_API_KEY" \ "https://api.twitterapis.com/twitter/user/tweets?userName=openai" ``` Swap `/twitter/user/tweets` for `/twitter/tweet/advanced_search` and the same loop becomes keyword coverage instead of account coverage, which is the shape of a share-of-voice report. For a full multi-year archive in one job rather than a paged window, call `/twitter/user/tweets/complete` at $0.0024. ## What an analysis actually costs $0.04 per 1,000 posts pulled with their metrics $0.0024 for one account's complete post archive $0.50 free signup credit, no card required A 10,000-post competitive study lands around $0.40 at the standard read rate. Model your own volume on the [Twitter API cost calculator](/twitter-api-cost-calculator) or read the endpoint-level breakdown on the [Twitter API pricing page](/twitter-api-pricing). ## Visualizing the data There is no chart endpoint, and there should not be. Every analytics call returns JSON, so the drawing is done by whatever you already use. The only step that matters is flattening the response into one row per post before it leaves your script. A `user/tweets` response is an object with `tweets`, `count`, `next_cursor` and `has_more`. The chartable numbers all sit on each item in `tweets`: `favorite_count`, `retweet_count`, `reply_count`, `quote_count`, `bookmark_count` and `view_count`, keyed by `id` and `created_at`. Those eight fields are the whole spreadsheet. Anything else on the item is context, not a series. Two shapes cover almost every request. A time series plots one count against `created_at` and answers whether a change in posting behaviour moved anything. A distribution plots the same count across posts and answers what a normal post looks like, which a monthly average hides: a single outlier drags a mean far enough that a flat month reads as growth. One caution specific to this data. Paginate to the end with `next_cursor` before you draw anything, because a chart built on the first page is a chart of the most recent twenty posts wearing the label of a quarter. `has_more` is the field that tells you the series is incomplete, and it is the one most often ignored. ## Competitive analysis Every endpoint on this page reads public data, so it does not care whose handle you pass. The account you benchmark against costs exactly what your own account costs, and that symmetry is the reason competitor work is usually the second thing people build here rather than a separate product. The mechanics are the same call you already ran. Pull a rival's recent posts with `user/tweets` at $0.0008 a call, read their profile counts with `user/info`, and compute engagement rate per post on both sides rather than comparing follower totals. Follower counts compare audiences that were bought at different times and under different rules; engagement rate per post compares what the two accounts are doing now. Where it gets more expensive is history. `user/tweets/complete` returns a full account history at $0.0024 a call rather than $0.0008, and a year of a busy account is many calls. Run it once per competitor and cache the result; the old posts do not change. For a topic rather than an account, `tweet/advanced_search` bills at the standard $0.0008 and answers share-of-voice questions that no per-account call can. The full build, including how to pick a comparison set that is not just the three brands you already think about, is on the [competitor analysis use case](/twitter-api-usecases/competitor-analysis) page. ## Where analytics work usually goes next Measurement rarely stops at counting. Once you are reading metrics you generally want the actions beside them, which is the [Twitter engagement API](/twitter-engagement-api). For continuous brand monitoring rather than a one-off study, the [Twitter mentions API](/twitter-mentions-api) is the polling surface, and the [Twitter REST API](/twitter-rest-api) overview covers auth, paging and error handling across all of it. Platform-level context on user counts and bot share lives on the [Twitter statistics](/twitter-statistics) page. Bot share is not only a platform statistic, it distorts any engagement number computed over a contaminated sample, so [scoring accounts for automation before you aggregate](/blogs/twitter-bot-detection-guide) is usually the step that decides whether a rate means anything. By the numbers ## Measurement, in numbers. Sourced figures behind X analytics access. - The official X API bills post and user reads pay-per-use at $0.010 per resource, more than ten times the standard third-party read rate. [(X Developer Platform, 2026)](https://developer.x.com/#pricing) - Official X API reads run on 15-minute rate-limit windows, and pay-per-use is hard-capped at 3 million reads per monthly billing cycle. [(X API docs, 2026)](https://docs.x.com/x-api/fundamentals/rate-limits) - TwitterAPIs bills each standard metric read at $0.0008, about $0.04 per 1,000 posts including engagement counts, under one 600 req/min ceiling per key. [(TwitterAPIs pricing, 2026)](/pricing) - Nine read endpoints carry the measurement fields used for analytics work, from per-post engagement counts to complete account history. [(TwitterAPIs docs, 2026)](https://docs.twitterapis.com/docs) - A new account starts with $0.50 in free credit and no card on file, enough for several hundred metric calls before any spend decision. [(TwitterAPIs pricing, 2026)](/signup) ## Analytics API, common questions ### What is a Twitter analytics API? A Twitter analytics API is a REST interface that returns the raw measurement fields behind X activity as structured JSON: per-post like, repost, reply, quote and bookmark counts, account-level follower and post counters, and the post history you aggregate over. It is not a dashboard. It hands you the numbers so you can build your own reporting, alerting, or model input. TwitterAPIs exposes these fields across nine read endpoints on one Bearer key at $0.0008 per call, with no X developer account and no monthly plan. ### How do I do Twitter sentiment analysis with this API? Pull the corpus, then score it yourself. Use GET /twitter/tweet/advanced\_search for a keyword or brand query, or GET /twitter/tweet/replies to read the replies under a specific post. Both return full post text, the author, the timestamp and the engagement counts as JSON. Feed that text into whichever classifier you already use, whether that is a hosted language model, a fine-tuned model, or a lexicon. We deliberately do not ship a sentiment score, because a number with no visible model behind it is not something you can defend to a client. ### Can I build a Twitter social listening tool on top of this? That is the common pattern. Poll GET /twitter/user/mentions for named-account monitoring and GET /twitter/tweet/advanced\_search for unbranded keyword coverage, store a since\_id or the newest post ID between runs so each poll is incremental, then run your own classification and alerting over the result. Because billing is per call rather than per seat, the cost tracks how often you poll and how wide your keyword set is, which makes the unit economics of a listening product predictable before you write the first line of it. ### Do I need an X developer account to read these metrics? No. There is no developer application, no app review, and no OAuth flow to complete. You sign up, receive one Bearer token, and send it on every request. Signup includes $0.50 in free credit with no card on file, which covers several hundred metric calls before you decide whether to add funds. ### Can I get analytics for accounts I do not own? Yes, for everything that is public. Engagement counts on any public post, any public account's follower and post counters, and any public account's post history are all readable with a plain GET. What you cannot get anywhere, from us or any other vendor, is the owner-only telemetry X keeps in its own analytics surface: impressions, profile visits, and link click counts for an account you control. Those never leave X's first-party products, so treat any vendor claiming to supply them as a red flag. ### How much does pulling X metrics cost? Every standard read is a flat $0.0008 per call. Post and search calls return roughly 20 records, which works out to about $0.04 per 1,000 posts including their metrics. The one exception is GET /twitter/user/tweets/complete at $0.0024, which walks an entire account archive in a single job instead of making you page through it. There is no monthly minimum and no plan tier, so a one-off analysis of a few thousand posts costs cents rather than a subscription. ### How far back can I pull posts for a historical analysis? GET /twitter/user/tweets/complete walks an account's full public archive rather than the recent window, so a multi-year backfill is a single job at $0.0024. For keyword-based history, GET /twitter/tweet/advanced\_search accepts the same date operators the X search UI uses, so you can bound a query to any past window and page through the matches at $0.0008 per call. ### Read X metrics without a developer account $0.0008 per metric read, $0.50 in free credit. Public engagement counts, profile counters, and full post history as JSON. [Start Free](/signup?utm_source=aio&utm_medium=organic&utm_campaign=aeo-twitter-analytics-api)[See the pricing](/twitter-api-pricing?utm_source=aio&utm_medium=organic&utm_campaign=aeo-twitter-analytics-api) ## Next read Continue exploring related pages: [ Twitter engagement API Like, repost and bookmark from code, then read what moved. ](/twitter-engagement-api)[ Twitter REST API The auth header, paging model and error contract in one place. ](/twitter-rest-api)[ Twitter API use cases 14 use cases from sentiment analysis to lead generation. ](/twitter-api-usecases)[ X (Twitter) statistics 2026 Sourced user, bot, and daily-activity figures for X, with a named citation on every number. ](/twitter-statistics) [View API Docs](https://docs.twitterapis.com/docs/reference/tweet-details/tweet-detail)[Start Free](/signup?utm_source=aio&utm_medium=organic&utm_campaign=aeo-twitter-analytics-api) [ TwitterAPIs ](/) The cheapest pay-as-you-go Twitter and X API. $0.0008 per call, which works out to $0.04 per 1,000 tweets on a full 20-tweet page. No subscriptions and no developer account. ## Product / API - [Pricing](/pricing) - [Cost Calculator](/twitter-api-cost-calculator) - [Rate Limits](/twitter-api-rate-limits) - [MCP Server](/mcp) - [Integrations](/integrations) - [Language Clients](/sdk) - [Changelog](/changelog) - [Status](/status) ## Developers - [Documentation](https://docs.twitterapis.com) - [API Reference](https://docs.twitterapis.com/docs/reference/search/tweet-advanced-search) - [User Info](https://docs.twitterapis.com/docs/reference/user-reads/user-info) - [User Tweets](https://docs.twitterapis.com/docs/reference/user-reads/user-tweets) - [Advanced Search](https://docs.twitterapis.com/docs/reference/search/tweet-advanced-search) - [Verified Followers](https://docs.twitterapis.com/docs/reference/follower-graph/user-verified-followers) ## Resources / Compare - [Answers](/answers) - [Reviews](/reviews) - [Free Tools](/tools) - [Twitter ID Finder](/tools/twitter-id-finder) - [Get a Twitter API Key](/twitter-api-key) - [Official X API Comparison](/twitter-api-pricing) - [Twitter API Use Cases](/twitter-api-usecases) - [Twitter API Alternatives](/twitter-api-alternatives) - [Twitter Unofficial API](/twitter-unofficial-api) - [Twitter Free API](/twitter-free-api) - [TwitterAPIs vs twitterapi.io](/twitterapis-vs-twitterapi-io) - [TwitterAPIs vs GetXAPI](/twitterapis-vs-getxapi) - [TwitterAPIs vs TweetAPI](/twitterapis-vs-tweetapi) - [TwitterAPIs vs TwexAPI](/twitterapis-vs-twexapi) - [TwitterAPIs vs RapidAPI](/twitterapis-vs-rapidapi) ## Legal - [About](/about) - [Security](/security) - [Trust](/privacy-and-data-handling) - [Terms of Service](/terms-of-service) - [Affiliates](/affiliates) - [Contact](/contact) - [Jobs](/jobs) © 2026 TwitterAPIs. All rights reserved. TwitterAPIs is an independent third-party API for developers and researchers. Not affiliated with, endorsed by, or sponsored by X Corp. All systems operational