Connect Data from Facebook Ads to Tableau

This simple guide gives you easy instructions on how you can extract your data from Facebook Ads and then analyze it in Tableau. Connect Facebook Ads with Tableau, and drill down to your data from advertisements, convert new users, find out how much you spent and how engaged your audience is with your product or service.

Facebook is the world's most popular social network, equipped with a powerful advertising network where billions of dollars are spent each year. Marketers love using Facebook Ads ads to reach their target audience at scale.

Tableau is a business intelligence platform and visualization tool that helps anyone see and better understand their data. People love using Tableau because it allows you to take raw data and turn it into charts, graphs, dashboards and reports that share insights and tell a story.

Extracting data

Before loading your data into Tableau, you will have to prep it first. If you don't already have a data structure in which to store the data you retrieve, you'll have to create a schema for your data tables. Then, for each value in the response, you'll need to identify a predefined datatype (INTEGER, DATETIME, etc.) and build a table that can receive them. Facebook Ads's documentation should tell you what fields are provided by each endpoint, along with their corresponding datatypes.Complicating things is the fact that the records retrieved from the source may not always be "flat" – some of the objects may actually be lists. In these cases you'll likely have to create additional tables to capture the unpredictable cardinality in each record.

Preparing data

You have three options for extracting data from Facebook. 1- You can retrieve data programmatically through the Facebook Ads Insights API. It is available to all users who use the platform. Follow the API documentation, and you will enjoy access to endpoints, like impressions, CTRs, and CPC. You can access the API through the SDKs which Facebook offers. Officially, the platforms support SDKs for PHP and Python, while there’re also a number of SDKs (community supported) for languages such as R, Ruby, and JavaScript. Data will be returned in either CSV or XLS format, and when your report is ready based on the request you may access it from a URL. 2- You can export a report that you have created and saved. All you have to do is navigate to Ads reporting from the Facebook Ads Manager navigation and click on the report and then click Export. 3- You can use a tool like Improvado. By leveraging Improvado, you can easily and quickly integrate, connect, and see all your Facebook Ads Insights data flow seamlessly into your desired visualization tool or database. Improvado does not require any technical skills to operate. You can sync your data over with just a few clicks.

Loading data

If you would like to analyze data in Tableau, you will have to convert it into a format that Tableau can read. You can import data from excel files or text files and PDFs, but the most suitable practice is to create a data warehouse that has all the data, and then to connect your data warehouse to Tableau. To import your data from a MS excel file, click on "Microsoft Excel" present under the connect tab. This will open a new dialog box so that you can easily navigate to your Excel file in the machine from which you would like to import your data. Now, click on the file and then click ‘Open’. In case there is more than one sheet in your MS Excel workbook, all of these workbooks will be automatically imported and they would be listed as sheets on the left-hand side panel of Tableau. Once you have loaded the data, Tableau offers an option to locally cache your data to expedite queries. There are almost no restrictions on how you import any type of data into Tableau.

Keeping data up to date

If you've made it this far, congrats! You probably have a written a script or program to extract your data and move it into Tableau. Now it's time to think about how you will keep this data up-to-date by loading new or updated data. Of course you can just replicate all your data each time you have updated records, but that would be extremely manual and time consuming. Luckily there is a better way. The key is to build your script so that it can sense incremental updates to your data. Thankfully, Facebook Ad's API results include fields like "date" so that you can identify records that are new since your last update (or since the newest record you've copied). Once you've taken new data into account, you can set your script up as a cron job or continuous loop to keep pulling down new data as it appears.

The Easiest And Fastest Way To Do It

If all this sounds a bit overwhelming, don't worry -- there is an easier way to get this done! Thankfully, products like Improvado were built to move data from Facebook Ads to Tableau automatically. With just a few clicks, Improvado starts extracting your Facebook Ads data via the API, structuring it in a way that's optimized for analysis, and inserting that data into Tableau.