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

# Google Ads

> Connect Google Ads to see real cost per lead and cost per qualified lead for every campaign.

Connect your Google Ads account and Orwel pulls your campaigns and their daily cost, then ties each lead to the campaign that paid for the click. You see cost per lead, cost per qualified lead and spend that brought no qualified leads, next to the AI score of each lead.

Orwel only reads from Google Ads. It never creates, edits or pauses campaigns.

## Connect

<Steps>
  <Step title="Open Integrations">
    In the dashboard go to **Integrations** and find **Google Ads** under data sources.
  </Step>

  <Step title="Connect">
    Click **Connect** and sign in with a Google account that has access to your Google Ads account. Approve access.
  </Step>

  <Step title="Pick the account">
    If your Google account sees several Google Ads accounts (for example through a manager account), choose the one for this workspace.
  </Step>
</Steps>

The card shows **Connected** once an account is selected. **Configure** lets you pick another account, and **Disconnect** removes the connection.

## What gets synced

| Data | Grain |
| - | - |
| Campaigns (name, status, type, budget) | Per campaign |
| Impressions, clicks, cost, conversions | Daily, per campaign |
| Keywords and search terms with cost and conversions | Daily |
| Click ids (`gclid`) and the campaign of each click | Per click |

Orwel syncs every 3 hours. The **Sync** button on the Campaigns screen runs it on demand.

## How leads are tied to campaigns

1. Google adds a `gclid` (or `gbraid` / `wbraid` on iOS) to the landing URL when **auto tagging** is on in your Google Ads account. Keep it on.
2. The SDK (1.7.0 or newer) captures it and sends it with the conversion. See [Attribution](/sdk/attribution).
3. The sync maps each click id to its campaign and links the lead. A lead can arrive before the click is synced; it is linked on the next sync.

Add `utm_id={campaignid}` to your tracking template too, so leads stay attributed even when a click id is missing.

## Where to see it

The **Campaigns** screen shows, per campaign: cost, leads, qualified leads, cost per lead, cost per qualified lead, and campaigns that spent with no qualified leads. Below it, the keyword and search term breakdown highlights terms that spend without converting.

## Troubleshooting

| Problem | What to do |
| - | - |
| No accounts to choose after connecting | The Google account you used has no access to any Google Ads account. Connect with an account that does, or ask for read access in your Google Ads account settings. |
| Leads without a campaign | Check that auto tagging is on, the SDK is 1.7.0 or newer (`npm i orwel@latest`), and the conversion arrived with attribution (Dev mode warns `missing_attribution` when it did not). |
| Cost looks a few hours behind | The sync runs every 3 hours. Use **Sync** on the Campaigns screen. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.