The Facebook Ads API has some arbitrary limits on data extraction, which is why Stract seeks to optimize queries by removing unspent or deleted ads. Even so, for data volume extractions with high granularity (several ad names, for example) and over a long period of time, API errors may be returned. If you are experiencing errors with the Facebook API, such as: Please reduce the amount of data you’re asking for, the following steps may help:

Reduce date ranges

Reduce date ranges in queries that include single metrics. We’ve found that single metrics, such as Reach, can substantially increase the load on Meta services. Including single metrics in queries for longer periods of time increases the chances of API requests failing. To help reduce the load and make the query more likely to succeed, make the date range of queries using Reach and other unique metrics as short as reasonable (28 days or less is recommended). You can also remove the Range field if it is not essential for longer historical queries. List of unique and non-aggregable fields:

  • Reach
  • Frequency
  • Single action fee
  • CPP
  • Unique CTR (link click-through rate)
  • Single output CTR
  • Single CTR (all)
  • Estimated ad recall uplift rate (%)
  • Average video viewing time
  • Second video playback curve actions: * (includes all versions of this field)
  • Average screen viewing time (s)
  • Average screen viewing percentage

Change the level of conversion metrics

Change the level at which conversion metrics are fetched Conversion-related metrics (known as “actions” in the Graph API) are extremely heavy to fetch, and including them in ad-level requests increases the chances of the query failing. Conversions are very important, so we can’t ask you to simply remove them. But to increase the chances of successful queries, you can change the data level to a higher one. For example, removing creative and ad-specific dimensions will set the query to data at the ad set or campaign level.

  • If you want to query at the campaign level, remove all ad set-specific, ad-specific and creative dimensions from the query.
  • If you want to query at the ad set level, remove all ad-specific dimensions and creatives from the query.

Note, however, that account-level data is still problematic for off-site conversions, so we don’t recommend it.

Data at the campaign or ad set level works best.

By default, Stract removes rows with zero impression data. By removing ad rows with zero impressions, we reduce the amount of data fetched, which can further reduce the chances of getting the “job failed” error. This setting adds a filter to the request to the Graph Meta API that will remove any ad set row and/or ad that contains zero impressions, so the data returned will be lighter. This does not impact the data at campaign or account level. While this configuration can help with performance, there are drawbacks you need to be aware of:

  • Using the setting will cause the query to return fewer rows than before. Ads and/or ad sets with no impressions will be absent from the data.
  • The configuration can also remove items that had no cost but still had conversions. This means that if you were aggregating conversion data at the ad or ad set level, there may be slight discrepancies compared to Facebook Ad Manager when using this setting. The data at campaign level should still be correct.

To include ad data without zero spend, add the Include ads without spend option in the sidebar, but this will slow down extractions and may generate errors in the API return.

 

Similar articles

Didn’t find what you were looking for?

Get in touch, and we’ll respond as soon as possible.

Send a question

Invite & Earn

X
Signup to start sharing your link
Signup
background banner image
loading gif

Available Coupon

X