Is it possible to use Frequency cap in Twitter ads?


Hi everyone. Stuck with this issue - is it possible to use frequency capping in Twitter Ads like in Adwords? The only article which mentions the feature - doesn’t explain how it can be implemented.

Thank you!


Hi, @Prokashev! Yes, it is possible to use frequency capping. However, this feature must be whitelisted.

In terms of how it’s implemented, it’s set at the campaign level. The param is frequency_cap and the value is an integer representing the number of times an ad could be delivered to a user. In addition, you must specify duration_in_days—also an integer—which specifies the time period during which the frequency cap is counted. Only three values are supported with duration_in_days: 1, 7, and 30. For more information, see POST accounts/:account_id/campaigns. (Also works with PUT, of course).

Here is an example request using twurl:

$ twurl -X POST -H "/1/accounts/{account_id}/campaigns?funding_instrument_id={funding_instrument_id}&name={name}&start_time=2016-08-30T00:00:00Z&paused=true&total_budget_amount_local_micro=1000000000&daily_budget_amount_local_micro=100000000&frequency_cap=10&duration_in_days=30" | jq

Hope this helps!


Thank you so much! Will try to do it this way


One more short question. I receive the error - frequency_cap requires account feature: REACH_FREQUENCY_CAP"

Is there any way to set up this feature in the account (as well as REACH_AND_FREQUENCY_ANALYTICS to check current frequency) using twurl command?

Thank you!


Thanks for the follow up, @Prokashev. That’s the error message that you’d see if the feature is not whitelisted. For whitelisting questions, please contact your account manager. Thanks!


Juan thank you so much! I suppose I’m almost done)

I’m setting up the frequency cap with a request like this:

twurl -X POST -H “/1/accounts/<account_id>/campaigns?funding_instrument_id=<fi_id>&name=<campaign_name>&start_time=2016-02-23T08:29:00Z&paused=false&total_budget_amount_local_micro=5520000000&daily_budget_amount_local_micro=38000000&frequency_cap=10&duration_in_days=30”

But the response contains: “reasons_not_servable”:[“INCOMPLETE”],“servable”:false

What does INCOMPLETE mean? Was the frequency cap set or not? As I see in the interface campaigns are running.

Thank you!


@Prokashev: A campaign is INCOMPLETE—and, thus, not servable—when all of its required components have not been set up. This includes line items, targeting, and creatives. Hope this helps!


Juan but I’m trying to enable frequency capping for existing campaign. Is it possible?


@Prokashev: If you need to modify an existing campaign, use the PUT accounts/:account_id/campaigns/:campaign_id endpoint.

Note that if your campaign does not have all the necessary components (e.g., a line item), you’ll continue to see INCOMPLETE for reasons_not_servable.