X Post Metrics Scraper avatar

X Post Metrics Scraper

Pricing

from $2.20 / 1,000 x post metric snapshots

Go to Apify Store
X Post Metrics Scraper

X Post Metrics Scraper

Track public X post views, likes, reposts, quotes, replies, bookmarks, text, authors, and profile counts from known post URLs.

Pricing

from $2.20 / 1,000 x post metric snapshots

Rating

0.0

(0)

Developer

Chronometrica

Chronometrica

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

πŸ“Š What does X Post Metrics Scraper do?

X Post Metrics Scraper turns known public X or Twitter post URLs into clean metric snapshots. Use it for campaign reports, creator tracking, alerts, and scheduled history.

Each input URL creates one stable row. It can include views, likes, replies, reposts, quotes, bookmarks, post text, author identity, and public profile counts.

This Actor reads public logged-out X data. It does not use cookies, log in to X, open private posts, or run keyword searches.

With X Post Metrics Scraper, you can:

  • πŸ“ˆ Track post engagement over time.
  • πŸ§‘β€πŸ’» Compare creators, brands, and campaigns.
  • πŸ”” Send metric snapshots to alerts and dashboards.
  • πŸ†” Keep stable post and profile IDs for matching.
  • πŸ“¦ Export clean rows to JSON, CSV, Excel, XML, RSS, or an API.

πŸ“¦ What X post data can I extract?

One dataset row represents one attempted public X post URL.

Data groupExample fields
πŸ”— Post identityinputUrl, postUrl, postId, postType
🧾 Post detailstext, publishedAt
πŸ‘€ AuthorprofileId, profileUrl, profileUsername, profileName
πŸ“Š Post metricsviews, likes, replies, reposts, quotes, bookmarks
πŸ‘₯ Profile metricsprofileFollowers
🎯 QualitypostMetricStatus, status, statusReason
πŸ•’ ObservationobservedAt

Missing public values stay null. They are never changed to a made-up zero. Metric status records show whether each value was present, unavailable, or not attempted.

βš™οΈ Can I use X Post Metrics Scraper through an API?

Yes. Run it in Apify Console or connect it through:

  • Apify API
  • Python SDK
  • JavaScript SDK
  • Webhooks
  • Scheduled Tasks
  • Apify integrations

🎯 Why collect X post metrics?

Use caseHow the data helps
πŸ“£ Campaign reportsCompare public results across campaign posts.
πŸ§‘β€πŸŽ¨ Creator trackingFollow post and profile growth over time.
🏷️ Brand monitoringWatch known brand posts without manual checks.
🧱 Data pipelinesLoad stable snapshots into a sheet or warehouse.

πŸ’΅ Pricing event

The product is designed for pay-per-result pricing. One paid result means one successful public post metric row. Invalid inputs and missing posts are not billable result events.

The price ranges from $2.20 to $4.50 per 1,000 results, based on your Apify plan. Platform usage is included. Use Apify's maximum charge setting to cap paid results.

πŸš€ How do I use X Post Metrics Scraper?

  1. Open X Post Metrics Scraper in Apify Console.
  2. Paste one or more public X post URLs into Post URLs.
  3. Click Start.
  4. Open the Output tab.
  5. Download the dataset or connect it to your workflow.

⬇️ Input

Paste up to 1,000 full public post URLs into startUrls.

{
"startUrls": ["https://x.com/OpenAI/status/2077446718728425686"]
}

Supported URLs contain /status/{post ID} and use x.com or twitter.com. Raw post IDs, profile URLs, searches, lists, and private posts are not supported. Duplicate URLs are checked once.

When an input URL is a repost, the row describes the original post shown by X. inputUrl keeps the URL you supplied. postUrl, post identity, author, text, and metrics describe the visible original post.

⬆️ Output sample

{
"platform": "x",
"inputUrl": "https://x.com/OpenAI/status/2077446718728425686",
"postUrl": "https://x.com/OpenAI/status/2077446718728425686",
"postId": "2077446718728425686",
"postType": "post",
"publishedAt": "2026-07-01T12:00:00.000Z",
"text": "Example post",
"profileUrl": "https://x.com/OpenAI",
"profileId": "4398626122",
"profileUsername": "@OpenAI",
"profileName": "OpenAI",
"views": 1200000,
"likes": 14000,
"replies": 900,
"reposts": 2100,
"quotes": 300,
"bookmarks": 1800,
"postMetricStatus": [
{
"metric": "views",
"status": "present",
"precision": "exact",
"source": "public_post"
}
],
"profileFollowers": 4200000,
"status": "ok",
"statusReason": null,
"observedAt": "2026-07-17T12:00:00.000Z"
}

X shows plain reposts and quotes as one repost total. Add reposts and quotes to match the displayed total.

πŸ“Œ Run summary

The OUTPUT record reports input count, unique inputs, saved rows, billable rows, status counts, start time, finish time, and runtime.

🚦 Status and quality fields

  • ok: the public post identity was proven and its snapshot was saved.
  • not_found: the post was missing or no longer public.
  • blocked: X did not allow the public request at that time.
  • rate_limited: X asked the run to slow down.
  • parser_miss: X returned data without a stable post identity.
  • invalid_input or unsupported_url: the input was not a supported URL.
  • source_error: X could not be read for another safe, known reason.

Good and failed rows use the same ordered fields. Unknown values stay null, which keeps CSV imports and scheduled checks stable.

πŸ”’ Source boundary

This Actor reads only data X shows without signing in. It does not use your X account, cookies, passwords, or private tokens. It does not bypass login or challenge screens.

⚠️ Limits

  • Deleted, private, age-gated, region-limited, or hidden posts may fail.
  • X may not show every metric on every post.
  • Results are snapshots. Use a schedule to build history.
  • X can change its public pages, so a later run may need an Actor update.

❓ FAQ

Does this Actor need an X login or API key?

No. It reads logged-out public X data.

Why is a metric null?

X did not show that value publicly for the post at run time. Check the matching metric status record.

How are duplicate URLs handled?

The same normalized post URL is checked once per run.

ActorUse it for
X Profile Metrics ScraperGet public profile identity, details, and audience counts from X handles or profile URLs.

πŸ›Ÿ Support

For help, share the public post URL, run ID, expected result, and actual result. Never share passwords, cookies, or private tokens.

Use public data in line with the law, X rules, and Apify rules. Do not use it to harass people or build sensitive personal profiles.