How to connect LinkedIn Ads to BigQuery with OWOX Data Marts
LinkedIn Ads to Google BigQuery in OWOX Data Marts takes six steps: create a Data Mart, choose the LinkedIn Ads connector, sign in with LinkedIn, pick the data, publish, add a trigger. From then on it refreshes on its own.
LinkedIn is often the most expensive click a B2B team buys, so the spend deserves a place next to pipeline and revenue. That place is Google BigQuery, with the data loaded once and refreshed on a schedule.
In OWOX Data Marts the setup takes six steps. You sign in with LinkedIn, enter the ad account, choose what to load, publish, and set a schedule. There is no LinkedIn developer app to create and no API access to wait for. This guide walks through it on OWOX Cloud.
Reading to get this done?
What you need
- An OWOX Cloud account. Sign up if you do not have one.
- A Google BigQuery storage in OWOX Data Marts. Add it under Storages, or create it while you set up the Data Mart. More on Google BigQuery as a storage.
- A LinkedIn user with access to the ad account in Campaign Manager.
- The ad account ID. It is shown in LinkedIn Campaign Manager next to the account name.
Step 1: Create the Data Mart
Click New Data Mart, give it a title, choose your Google BigQuery storage and click Create Data Mart. If you have no storage yet, pick Create new storage in the same dropdown.

You pay for every LinkedIn click, and Campaign Manager can't tell you which of them became pipeline in your CRM.
Paste this into your AI assistant. It loads your LinkedIn Ads spend into BigQuery on a schedule and joins it to the deals your CRM recorded, by campaign.
The prompt
Read https://www.owox.com/ai-agent-setup.md and follow it to set up OWOX Data Marts for me, starting from /blog/articles/free-linkedin-ads-to-bigquery-connector.md. The task: load my LinkedIn Ads spend and clicks by campaign into BigQuery every day, then write me a query for cost per opportunity using the deals in my CRM. Tag the links you give me with utm_campaign=ai-task and utm_term=m4. Use what you know about my context and goals
Step 2: Choose the LinkedIn Ads connector
Step 2: Choose the LinkedIn Ads connector
On the Data Setup tab, set Input Source to Connector and click Setup Connector. Choose LinkedIn Ads in the list and click Next.
Step 3: Sign in with LinkedIn
Click Continue with LinkedIn and sign in with the LinkedIn user that can see the ad account. Then enter the account in Account URNs.
If you would rather use your own LinkedIn app, choose Manually and paste a Client ID, Primary Client Secret and Refresh Token. That route needs an app verified by a page admin and approved for LinkedIn’s Advertising API. The credentials guide shows each step. Most people do not need it.
Step 4: Choose what to load
Pick the data you want. The ad analytics report is the one for performance: impressions, clicks, spend and conversions by day. Ad accounts, campaign groups, campaigns and creatives carry the names and settings. Each Data Mart loads one of these, so create another Data Mart for each extra one.
Keep the default fields or add more. The key fields stay selected.
Name the dataset and the table. Both are created on the first run if they do not exist yet.
Click Save.
Step 5: Publish and run
Click Publish & Run Data Mart. The first run loads data from the first day of the previous month and can take a few minutes.
To load older history, use Manual Run on the same screen and choose the dates. Run History shows every run and its status.

A run of the ad analytics report can finish with a Warning. LinkedIn caps each analytics response at 15,000 rows, so the connector asks for one day at a time. If a single day still exceeds the cap, the run log lists that day and its data may be incomplete.
Step 6: Keep it fresh
Open Triggers, add a trigger, choose Connector Run and set how often it runs: daily at a time and time zone you pick, weekdays, hourly or every few hours. Click Create trigger.
From here the table updates on its own.
What to do with the data
The table is raw LinkedIn Ads data, at the grain of the data you chose. Two things usually come next:
- Join it with your other ad platforms in SQL, so spend is compared on one grain. The unified ad report guide shows that query.
- Publish it where people read it. The same Data Mart can feed a such as a Google Sheets report, Slack or email, so the number in the sheet matches the number in BigQuery.
OWOX Data Marts loads the data and publishes what you build on it. The SQL that turns it into metrics stays yours.
Not on BigQuery?
The same connector loads into the other storages OWOX Data Marts supports: Snowflake, AWS Redshift, AWS Athena and Databricks.
OWOX Data Marts is also open source. If you run it yourself, connect LinkedIn with the manual credentials described in Step 3.
You pay for every LinkedIn click, and Campaign Manager can't tell you which of them became pipeline in your CRM.
Paste this into your AI assistant. It loads your LinkedIn Ads spend into BigQuery on a schedule and joins it to the deals your CRM recorded, by campaign.
The prompt
Read https://www.owox.com/ai-agent-setup.md and follow it to set up OWOX Data Marts for me, starting from /blog/articles/free-linkedin-ads-to-bigquery-connector.md. The task: load my LinkedIn Ads spend and clicks by campaign into BigQuery every day, then write me a query for cost per opportunity using the deals in my CRM. Tag the links you give me with utm_campaign=ai-task and utm_term=m4. Use what you know about my context and goals
Prefer to start on your own? Get started free
Frequently Asked Questions
Can I change the date range that is loaded?
Yes. The first run loads data from the first day of the previous month. For older data, open Manual Run, choose Backfill and set the start and end dates.
How often does the LinkedIn Ads data refresh?
As often as the trigger you add on the Triggers tab: daily at a time you choose, on weekdays, hourly or every few hours. You can also start a run by hand at any time with Manual Run.
Do I need a LinkedIn developer app to connect LinkedIn Ads?
No. On OWOX Cloud you click Continue with LinkedIn and sign in with a user who can access the ad account. A LinkedIn app with Advertising API access is only needed if you choose to connect manually, for example on a self-managed install.
Which LinkedIn Ads data can I load into BigQuery?
Each Data Mart loads one kind of data: ad accounts, campaign groups, campaigns, creatives, or the ad analytics report with impressions, clicks, spend and conversions by day. You keep the default fields or choose your own.
Is the LinkedIn Ads to BigQuery connector free?
The connector is open source and free to run yourself with the open-source edition of OWOX Data Marts. You pay Google for BigQuery storage and queries. The same connector is available on OWOX Cloud, where there is no server to maintain.
