We have a need to send the tracking data on a daily basis (open, clicks, unsubscribes, etc. ) fromMarketing Cloud to Google Big Query for analytics purposes. Is there a recommendation on integration options. thanks,
Without being a BigQuery expert, I would suggest to do following:
- Create an S3 bucket on AWS
- Use AWS Transfer, to provide SFTP functionality to S3
- Add above bucket as a new file location
- Set up a daily automation run
- Add Extract Activity with a Tracking Extract to automation
- Add File Transfer activity to automation (to upload the tracking extract to S3)
- Use Amazon S3 Transfers to push data to BigQuery
It is also possible via Marketing Cloud SOAP Api is you wish to make direct Api Calls from your external application.
You can make calls to Retrieve OpenEvent, ClickEvent, etc. filtering on a date range, particular Send, particular TriggeredSend, or a combination.
There is some information on doing this in these two recent topics:
You can also enable SendLogging (Which is not on by default and requires a support request) and create a SendLog DataExtension for additional functionality -- this DE does not track Events, but it will keep track of each send and subscribers linked to the send for cross referencing on the Events, if needed.
You could use Big Query's REST API for this. The following endpoint can be used to stream data into a table:
Here's the link to the documentation with more options: https://cloud.google.com/bigquery/docs/reference/rest
The most straightforward way would be to configure a 'Tracking Extract'
Tracking extracts provide granular tracking data for import from Email Studio into external systems. Use tracking extracts to export granular data regarding several different aspects of email send jobs, such as clicks, bounces, and survey data, from Marketing Cloud. Then, import that information into an automation or system.
You can then add this extract to an automation, and drop a file on a ftp server to be consumed by your external system