Skip to content

Pricing - Twitter Monitoring API

Monitors are billed from the same pay-as-you-go balance as the rest of the API. There is no subscription and no minimum commitment.

Two different billing models apply, depending on the type of monitor:

  • User monitors are billed a flat hourly rate, regardless of how many events they deliver.
  • Search monitors are billed per execution, based on how many tweets that execution delivered.

User monitors

The following prices apply to all user monitors:

Unlike our Data API, user monitors operate on a flat-rate, per-hour billing system. You are charged a consistent hourly rate regardless of the volume of tweets or user profiles received from the monitor. A monitor that delivers a hundred tweets in an hour costs exactly the same as one that delivers none.

The first hourly charge is deducted when the monitor is created. Subsequent charges are deducted at the beginning of every hour, for every active monitor.

Discounted rates apply automatically at the beginning of every hour based on the total number of active monitors that you have.

Monitors countHourly rate per monitorEst. monthly rate per monitor
1 - 10$0.0069 per hour~$4.99 per month
11 - 100$0.0062 per hour~$4.49 per month
101 - 300$0.0055 per hour~$3.99 per month
301 - 500$0.0048 per hour~$3.49 per month
501 - 1000$0.0042 per hour~$2.99 per month
1000+$0.0035 per hour~$2.49 per month

Search monitors

A Search Query Monitor is billed per execution, at the same rate as our Get search results endpoint:

  • $0.0002 per tweet delivered, for every execution that finds new tweets
  • $0.0002 flat, for every execution that delivers nothing

The flat charge exists because every execution runs a real search against Twitter whether or not it matches anything. An execution that delivers 5 tweets costs $0.0010; an execution that delivers none costs $0.0002.

There is no charge for creating a search monitor, and no hourly fee.

What this costs in practice

Your bill is driven by refresh_frequency, not by how active your query is. A monitor that never matches a single tweet still executes on schedule, and still costs money:

refresh_frequencyExecutions per dayMin. cost per dayMin. cost per month
30 seconds (default)2,880$0.58~$17.28
60 seconds1,440$0.29~$8.64
300 seconds288$0.06~$1.73
3600 seconds24$0.005~$0.14

Those are minimums, not estimates — delivered tweets are charged on top, at $0.0002 each.

When search charges appear

Charges for delivered tweets are recorded as those tweets are delivered. Charges for executions that delivered nothing are settled hourly, and once more when the monitor is deleted — so a monitor you delete mid-hour is still billed for the executions it ran before deletion.

Both kinds of charge appear in your usage history as regular tweet charges.

Running out of balance

Monitors are not served on an empty balance. When a charge cannot be collected, the monitor is paused: it stops checking for updates, stops delivering webhooks, and stops accruing charges. It is not deleted, and its configuration is preserved.

Topping up your balance resumes all paused monitors automatically.

Paused monitors keep appearing in List active monitors, so if a monitor has gone quiet without you deleting it, check your balance.

FAQ

What is a monitor?

A monitor is a single record in the output of our List Active Monitors endpoint. If you are monitoring tweets, following, and profile updates by the same Twitter user — this counts as 3 different monitors.

Am I charged for duplicate webhook deliveries?

No. Each detected event is billed once, however many delivery attempts it takes.

Am I charged when my webhook endpoint is down?

Yes. The charge is for detecting the event, which happened regardless of whether your server accepted the delivery. See Processing webhook events for how to recover events your endpoint missed.

Am I charged when a search monitor execution fails on our side?

No. Executions that fail before returning results are not billed.