> ## Documentation Index
> Fetch the complete documentation index at: https://domoinc-openapi-sync-dataflows.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Facebook Ads Connector

## Intro

Marketing experts use Facebook Ads to create targeted ads designed to reach different audiences and help them meet their business goals. Use Domo's Facebook Ads Connector to compile reports about all aspects of advertising, including accounts, campaigns, spending, and the like. To learn more about the Facebook API, visit their page ([https://developers.facebook.com/docs/marketing-apis](https://developers.facebook.com/docs/marketing-apis "https://developers.facebook.com/docs/marketing-apis") ).

The Advanced version of the Facebook Ads connector allows you to access more reports than this simplified version but also requires more configuration. For information about the Advanced version, see Facebook Ads Advanced Connector.

You connect to your Facebook account in the Data Center. This topic discusses the fields and menus that are specific to the Facebook Ads connector user interface. General information for adding DataSets, setting update schedules, and editing DataSet information is discussed in [Adding a DataSet Using a Data Connector](/s/article/360042926274 "Adding a DataSet Using a Data Connector").

<table class="mt-responsive-table" data-aura-rendered-by="33:195;a"><tbody><tr><td class="mt-noheading" colspan="1" rowspan="1"><p><b> Primary Use Cases </b></p></td><td class="mt-noheading" colspan="1" rowspan="1"><ul><li><p> Tracking how many people view individual ads </p></li><li><p> Tracking how many people are reached by each campaign </p></li><li><p> Tracking how much money has been spent on campaigns </p></li></ul></td></tr><tr><td class="mt-noheading" colspan="1" rowspan="1"><p><b> Primary Metrics </b></p></td><td class="mt-noheading" colspan="1" rowspan="1"><ul><li><p> Reach </p></li><li><p> Spend </p></li><li><p> Cost per lead </p></li><li><p> Leads generated </p></li><li><p> Impressions </p></li><li><p> Clicks </p></li><li><p> Cost per click </p></li></ul></td></tr><tr><td class="mt-noheading" colspan="1" rowspan="1"><p><b> Primary Company Roles </b></p></td><td class="mt-noheading" colspan="1" rowspan="1"><p> Digital marketers </p></td></tr><tr><td class="mt-noheading" colspan="1" rowspan="1"><p><b> Average Implementation Time </b></p></td><td class="mt-noheading" colspan="1" rowspan="1"><p> 1-2 hours </p></td></tr><tr><td class="mt-noheading" colspan="1" rowspan="1"><p><b> Ease of Use (on a 1-to-10 scale with 1 being easiest) </b></p></td><td class="mt-noheading" colspan="1" rowspan="1"><p> 3 </p></td></tr></tbody></table>

## Best Practices

* This connector is used to get basic information, such spend, reach, cost per click, and impressions. It does not provide many options for customization. For more detailed, complex reports, the
  Facebook Ads Advanced connector should be used.
* This connector can take a very long time to run if the date range is very long and/or the account selected has a large number of campaigns or ads. The long run time occurs because Facebook is taking a long time to calculate the selected metrics. If the DataSet is taking too long or doesn't complete, the date range needs to be smaller.

## Prerequisites

To connect to Facebook and create a Facebook Ads DataSet, you must have the following:

* The email address associated with your Facebook account, or your telephone number
* Your Facebook password
* Access to your company's Facebook Ads account

## Connecting to Your Facebook Account

This section enumerates the options in the Credentials and Details panes in the Facebook Ads Connector page. The components of the other panes in this page, **Scheduling** and **Name & Describe Your DataSet,** are universal across most connector types and are discussed in greater length in [Adding a DataSet Using a Data Connector](/s/article/360042926274 "Adding a DataSet Using a Data Connector").

### Credentials Pane

The Domo Facebook Ads connector uses OAuth to connect, so there is no need to enter credentials within Domo. Click **Connect** (or select **Add Account** if you have existing Facebook Ads accounts in Domo) to open the Facebook OAuth screen where you can enter your Facebook credentials. Once you have entered valid Facebook credentials, you can use the same account any time you go to create a new Facebook Ads DataSet. You can manage connector accounts in the **Accounts** tab in the Data Center. For more information about this tab, see [Managing User Accounts for Connectors](/s/article/360042926054 "Managing User Accounts for Connectors").

<Note>
  **Note:** If you are already logged into Facebook when you connect in Domo, you are authenticated automatically when you click **Add account**. If you want to connect to an account that is different from the one you are logged into, you must first log out of Facebook.
</Note>

### Details Pane

This pane contains a primary **Reports** menu, along with various other menus which may or may not appear depending on the report type you select.

<table border="1" cellpadding="1" cellspacing="1" data-aura-rendered-by="33:195;a"><thead><tr><th colspan="1" rowspan="1"><p> Menu </p></th><th colspan="1" rowspan="1"><p> Description </p></th></tr></thead><tbody><tr><td colspan="1" rowspan="1"><p> Report </p></td><td colspan="1" rowspan="1"><p> Select the Facebook Ads report you want to run. The following reports are available: </p><table border="1" cellpadding="1" cellspacing="1"><tbody><tr><td colspan="1" rowspan="1"><p> FBAds PreBuilt Report </p></td><td colspan="1" rowspan="1"><p> Domo's complimentary pre-built report for Facebook Ads - a comprehensive analysis of advertising performance including accounts, campaigns, ad groups, and ad-level reporting. </p></td></tr><tr><td colspan="1" rowspan="1"><p> General Metrics </p></td><td colspan="1" rowspan="1"><p> Returns commonly-used insight metrics at the Campaign level. </p></td></tr><tr><td colspan="1" rowspan="1"><p> Page Actions (Ad Sets) </p></td><td colspan="1" rowspan="1"><p> Returns insights related to Page and Post interactions at the Ad Set level. </p></td></tr><tr><td colspan="1" rowspan="1"><p> Page Actions (Ads) </p></td><td colspan="1" rowspan="1"><p> Returns insights related to Page and Post interactions at the Ad level. </p></td></tr><tr><td colspan="1" rowspan="1"><p> Placement Metrics </p></td><td colspan="1" rowspan="1"><p> Returns common metrics broken down by screen placement at the Campaign level. </p></td></tr><tr><td colspan="1" rowspan="1"><p> Responder Demographics </p></td><td colspan="1" rowspan="1"><p> Returns common metrics broken down by age and gender at the AdSet level. </p></td></tr></tbody></table></td></tr><tr><td colspan="1" rowspan="1"> Ad Set </td><td colspan="1" rowspan="1"> Select the ad set you want to retrieve data for. </td></tr><tr><td colspan="1" rowspan="1"><p> Ad Account ID </p></td><td colspan="1" rowspan="1"><p> Select the ID for the ad account you want to retrieve information for. </p></td></tr><tr><td colspan="1" rowspan="1"><p> Ad Campaign </p></td><td colspan="1" rowspan="1"><p> Select the ad campaign you want to retrieve information for. </p></td></tr><tr><td colspan="1" rowspan="1"><p> Ad </p></td><td colspan="1" rowspan="1"><p> Select the ad you want to retrieve data for. </p></td></tr><tr><td colspan="1" rowspan="1"> Time Increment </td><td colspan="1" rowspan="1"><p> Select the time range your data is broken down by. </p><p> The following table shows what you should enter as your <b> Time Increment </b> value, based on what appears in your Facebook Ads UI: </p><table class="mt-responsive-table"><thead><tr><th colspan="1" rowspan="1"> Facebook Ads UI </th><th colspan="1" rowspan="1"> Time Increment Value </th></tr></thead><tbody><tr><td colspan="1" rowspan="1"> No time breakdown </td><td colspan="1" rowspan="1"> Blank or <span class="mt-font-courier-new"> all\_days </span></td></tr><tr><td colspan="1" rowspan="1"> Monthly breakdown </td><td colspan="1" rowspan="1"><span class="mt-font-courier-new"> monthly </span></td></tr><tr><td colspan="1" rowspan="1"> Weekly breakdown </td><td colspan="1" rowspan="1"><span class="mt-font-courier-new"> 7 </span></td></tr><tr><td colspan="1" rowspan="1"> Daily breakdown </td><td colspan="1" rowspan="1"><span class="mt-font-courier-new"> 1 </span></td></tr></tbody></table></td></tr><tr><td colspan="1" rowspan="1"><p> Duration </p></td><td colspan="1" rowspan="1"><p> Select whether to pull data for a single date or a range of dates. </p></td></tr><tr><td colspan="1" rowspan="1"><p> Report Date </p></td><td colspan="1" rowspan="1"><p> Specify whether the report data is for a specific or relative date. Choose <b> Relative </b> if you always want the report to retrieve data for a given number of days back from the current date (which you specify in <b> Days Back </b> ). For example, if you enter <span class="mt-font-courier-new"> 5 </span> for <b> Days Back </b> and set the DataSet to update daily, each new day the report will update to show information for the date 5 days in the past. </p></td></tr><tr><td colspan="1" rowspan="1"><p> Select Specific Date </p></td><td colspan="1" rowspan="1"><p> Select the report date using the date selector. </p></td></tr><tr><td colspan="1" rowspan="1"><p> Start Date </p></td><td colspan="1" rowspan="1"><p> Specify whether the first date in your date range is a specific or relative date. Choose <b> Relative </b> if you always want the report to retrieve data for a given number of days back from the current date (which you specify in <b> Days Back to Start From </b> ). If you choose <b> Relative </b> here, you should also choose <b> Relative </b> for <b> End Date </b> and specify a value for <b> Days Back to End At </b>. </p><p> For example, if you enter <span class="mt-font-courier-new"> 10 </span> for <b> Days Back to Start From </b> and <span class="mt-font-courier-new"> 5 </span> for <b> Days Back to End At </b> and you set the DataSet to update daily, each new day the report will update to show information for 5 to 10 days in the past. </p></td></tr><tr><td colspan="1" rowspan="1"><p> End Date </p></td><td colspan="1" rowspan="1"><p> Specify whether the last date in your date range is a specific or relative date. Choose <b> Relative </b> if you always want the report to retrieve data for a given number of days back from the current date (which you specify in <b> Days Back to End At </b> ). If you choose <b> Relative </b> here, you should also choose <b> Relative </b> for <b> Start Date </b> and specify a value for <b> Days Back to Start From </b>. </p><p> For example, if you enter <span class="mt-font-courier-new"> 10 </span> for <b> Days Back to Start From </b> and <span class="mt-font-courier-new"> 5 </span> for <b> Days Back to End At </b> and you set the DataSet to update daily, each new day the report will update to show information for 5 to 10 days in the past. </p></td></tr><tr><td colspan="1" rowspan="1"><p> Select Specific Start Date </p></td><td colspan="1" rowspan="1"><p> Select the first date in your date range using the date selector. </p></td></tr><tr><td colspan="1" rowspan="1"><p> Select Specific End Date </p></td><td colspan="1" rowspan="1"><p> Select the last date in your date range using the date selector. </p></td></tr></tbody></table>

### Other Panes

For information about the remaining sections of the connector interface, including how to configure scheduling, retry, and update options, see [Adding a DataSet Using a Data Connector](/s/article/360042926274 "Adding a DataSet Using a Data Connector").

## Tips and Tricks

### Aggregating Statistics

It is often tempting to use a Custom Insights report that is reporting at a very detailed level to calculate results for a higher level. For example, a DataSet may be reporting daily metrics for multiple campaigns. You could add up the daily data for all the campaigns in order to determine the total for the account that holds the campaigns. This works for some metrics like Clicks, Spend, or Impressions. However, for metrics that count individual people (such as "Reach"), this approach will fail and produce incorrect values. "Reach," for example, fails because individuals are counted for each day they saw an ad. Then, if the Reach values for the month are added together, those people are counted multiple times. If the user compares this result to the result for the month in the Facebook Ads UI, they find that the aggregated value is far too high. The Facebook Ads UI removed the duplicated viewers, and only counted them once in the specified time period.

To avoid this problem, any time the user wants to get a value for a larger time period, the period needs to be defined in the DataSet itself, and not calculated afterward. If a user wants Reach for a particular month, the DataSet should be defined with the start and end dates for the month, and the **Time Increment** value should be set to all\_days or left blank. The user can get monthly data, aggregated and deduplicated by Facebook, by setting a large date range (for example, Jan 1, 2016 to Dec 31, 2016) and entering monthly as the **Time Increment** value. Similarly, if a user wants Reach data at the Account level, the user needs to set the DataSet's **Level** value to **Accounts** (not **Campaigns**), followed by summing the values in Domo.

It is often useful to compare the results of the connector to the results available in the Facebook Ads UI. To perform the comparison correctly, however, the UI and the connector need to be configured identically. They need to be set to the same time period (start and end dates) as well as the same reporting level and time increment value.

## Troubleshooting

* Does the user have access to the company's Facebook Ads account?
* Is the time range valid for the account/campaigns/ad sets/ads selected?

## FAQ

<AccordionGroup>
  <Accordion title="What version of the Facebook API does this connector use?">
    This connector uses version 16 of the Facebook Marketing API ([https://graph.facebook.com/v16](https://graph.facebook.com/v16)).
  </Accordion>

  <Accordion title="Do I need a certain kind of account to set up the connector?">
    You will need a Facebook account that has access to the Facebook Ads account(s) that you are interested in. There are three levels of access available: Analyst, Advertiser and Administrator. Analyst-level access is enough for the reports available in the connector.
  </Accordion>

  <Accordion title="What is the difference between the Facebook Ads and Facebook Ads Advanced connectors?">
    The Facebook Ads Advanced connector provides far more reports and options than the Facebook Ads connector. The biggest difference is that the Custom Insights report is only available in the Advanced connector.

    The Facebook Ads connector is a predefined set of easy-to-use reports. For more options and flexibility with report configuration, you should use the Advanced connector.
  </Accordion>

  <Accordion title="How often can the data be updated?">
    The data in this connector is roughly real-time. However, many statistics are subject to change for up to 3 days as Facebook determines the exact number of views, etc.
  </Accordion>

  <Accordion title="Are there any API limits I should be aware of?">
    Facebook may enforce rate limits on calls to its API, but you should not have to worry about this.
  </Accordion>

  <Accordion title="My Facebook Ads DataSets take a long time to run. What can I do to make them run faster?">
    Facebook Ads is known to take a long time because Facebook has to calculate the results of a query before we can start pulling the data. Depending on the load on their servers, this can take a LONG time. It seems that scheduling queries for off-peak times helps DataSets run faster. For example, one team in India was able to run a Facebook Ads DataSet in 15 minutes, but when another user tried the same DataSet 6-8 hours later, it took about 2 hours.
  </Accordion>
</AccordionGroup>
