Hello, everyone!
Are there any digital marketing ops out there that have attempted to pull ad performance data (reach, impressions, CPM, CTR, etc.) from the likes of Meta/FB’s Marketing API via a Webhook?
Call us cheap, but our organization can’t justify spending hundreds/month on Supermetrics. However, we do want the ability to monitor/report on digital ad performance both internally and for client-facing portals.
My current workflow includes monitoring integrated marketing campaigns across several platforms (Meta, Google, TikTok, etc.). As of right now, I’m manually copying performance data into a Trello board . This seems like a perfect candidate for a Zapier workflow.
Has anyone successfully integrated Facebook’s Marketing API (particularly the Insights edge) into a Zap that enables automated reporting/monitoring?
Here is the progress I’ve made so far:
Current Zap outline = Trello → Zapier → FB Marketing API → Zapier → Trello
- When I launch a new Facebook ad, I create a new Trello card and record the Facebook ads’ Campaign ID in a custom field.
- When I want to pull that ad’s performance data, I click a custom button on that Trello card which makes an HTTP Post to my Zapier Webhook; this sends the ad’s Campaign ID number and the name of the Trello card.
- This is accomplished using Trello’s built-in automation tools. The payload uses Butler variables (example below) to pull data from that specific card:
- {{%Campaign ID #}}|{cardname}
- This triggers the Zap. Next, Zapier makes a GET request via Facebook’s Graph API.
- This requires a long-access FB Graph API token from your Facebook Developer account. Here is a tutorial video that I found helpful.
- The GET command will look like this:
- URL: https://graph.facebook.com/v15.0/eINSERT_CAMPAIGN_ID]/insights?access_token=
- Parameters will include your “access_token” and the “fields” you want to pull (eg: campaign_name, spend, clicks, ctr, etc.)
- The Campaign ID is merged into the URL value using the output of the previous steps from Trello.
- Once the data is received back from Facebook, Zapier will look up the originating Trello card using the card’s name/title.
- You apparently can’t use the card’s unique ID for search… go figure.
- You apparently can’t use the card’s unique ID for search… go figure.
- Lastly, Zapier places the ad performance data in a new Trello comment.
- I’m still working on finding all of the relevant “fields” and adding them to the main GET request.
I’ve recorded a brief example showing the custom button/Zap in action. Hopefully this makes things a bit more clear.
Some of my remaining questions are as follows:
- How do you request performance data from the Facebook Marketing API that is broken down by ad set? I often run campaigns with multiple target audiences, and want to see how they compare.
- Is this possible to do with other advertising platforms, such as Google Ads or TikTok?
- Could this data be pulled at a regular interval and placed in a storage location (Google Sheets) and then accessed via a data visualization tool (Looker Studio or Tableau)?
I’m still relatively new to all of this, and it seems to be an obvious Zapier feature request. Until that comes to be, I would love to hear if/how others have approached this problem.
Cheers!
Wilson