> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hiveku.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Manage PPC Campaigns

> Track Google Ads, Meta Ads, and TikTok Ads performance in one dashboard

The PPC dashboard pulls your active campaigns from every connected ad platform into a single view — so you can compare, pause, and budget without hopping between tabs.

<Info>
  Before you start: connect your ad accounts first. See [Connect Google Ads](/how-tos/connect-google-ads), [Connect Meta Ads](/how-tos/connect-meta-ads), and [Connect TikTok Ads](/how-tos/connect-tiktok-ads).
</Info>

## Opening the Dashboard

Path: **Marketing > PPC**

You'll see a unified list of campaigns across every ad platform you've connected.

## What You See

<CardGroup cols={2}>
  <Card title="Performance metrics" icon="chart-line">
    Spend, impressions, clicks, CTR, conversions, CPA
  </Card>

  <Card title="Campaign status" icon="circle-play">
    Active, paused, ended — at a glance
  </Card>

  <Card title="Date range" icon="calendar">
    7d, 30d, 90d, or custom range
  </Card>

  <Card title="Platform breakdown" icon="layer-group">
    Per-platform totals alongside the unified view
  </Card>
</CardGroup>

## Actions You Can Take

<Tabs>
  <Tab title="Pause or resume">
    Click the status toggle next to any campaign. Hiveku pushes the change to the native platform (Google Ads, Meta, or TikTok). The status updates immediately in the dashboard but can take a few minutes to propagate on the ad platform side.
  </Tab>

  <Tab title="Adjust budget">
    Click the budget cell in a campaign row. Edit daily or lifetime budget. Changes push to the native platform on save.

    <Tip>
      Make budget changes early in the day. Most ad platforms respect the new budget going forward but don't refund spend above the previous budget earlier in the same day.
    </Tip>
  </Tab>

  <Tab title="View individual ads">
    Click a campaign name to drill into its ad sets and individual ads. You'll see creative previews, per-ad spend, conversions, and CTR.
  </Tab>

  <Tab title="Export">
    Click **Export** to download metrics as CSV. Useful for client reports, pivoting in spreadsheets, or feeding into BI tools.
  </Tab>
</Tabs>

## Creating Campaigns

<Warning>
  Google Ads and Meta campaigns must be created in their native platforms first, then they appear in Hiveku for tracking. Hiveku doesn't fully replace the native campaign builders yet.
</Warning>

To create a new campaign:

<Steps>
  <Step title="Open the native ad manager">
    Go to [ads.google.com](https://ads.google.com), [facebook.com/adsmanager](https://facebook.com/adsmanager), or [ads.tiktok.com](https://ads.tiktok.com).
  </Step>

  <Step title="Build the campaign">
    Use the native builder — they have the full set of targeting, creative, and bidding options.
  </Step>

  <Step title="Wait for sync">
    Return to Hiveku's PPC dashboard. Within a few minutes the new campaign appears and performance data starts flowing in.
  </Step>
</Steps>

## Cross-Platform Reports

The real value of the unified dashboard is comparing platforms side by side.

* **CPA by platform** — where does each conversion cost least?
* **ROAS (return on ad spend)** — which platform returns the most per dollar?
* **Conversion rate** — which audiences actually convert?
* **CTR** — where is creative resonating?

Pick your date range, then sort by the metric that matters to the current decision. Shift budget toward winners, pause losers, and document your reasoning somewhere you'll re-read it in a month.

## Automation: Alert on Anomalies

Set up a [workflow](/how-tos/workflows) to watch for spending spikes or conversion drops.

Example: "Alert if any campaign spends over \$500 in a day without a single conversion."

```
Trigger: Schedule (hourly)
├── Query: campaigns where today's spend > $500 AND today's conversions = 0
└── For each matching campaign:
    └── Slack message to #marketing: "⚠ {{campaign.name}} spent ${{spend}} with 0 conversions"
```

Catches broken landing pages, tracking issues, or creative that suddenly stopped working.

## Budget Guardrails

Another common automation: pause any campaign that exceeds its monthly budget.

```
Trigger: Schedule (daily)
├── Query: campaigns where MTD spend > budget.monthly_limit
└── For each:
    └── Pause the campaign via platform API
    └── Notify the campaign owner
```

<Tip>
  Don't pause overspending campaigns automatically without a human notification. Sometimes the overspend is intentional (you're pushing a launch). Set the automation to notify first, then act only if you don't override within an hour.
</Tip>

## Linking to the Native Platform

Every campaign row has an "Open in Google Ads" (or Meta, TikTok) link. When you need the full set of campaign-level controls Hiveku doesn't expose yet, one click gets you there with the campaign pre-selected.

## Verify It Worked

1. Open **Marketing > PPC**
2. Confirm campaigns from every connected ad account appear
3. Pick a campaign and toggle pause/resume — check the native platform reflects the change within 5 minutes
4. Export CSV and confirm the metrics match what the native dashboards show

## Troubleshooting

<AccordionGroup>
  <Accordion title="Campaigns missing from the dashboard">
    The connection likely expired. Go to **Settings > Integrations** and look for a red banner or "Reconnect" button on Google Ads, Meta, or TikTok. OAuth tokens expire periodically — reconnecting takes 30 seconds.
  </Accordion>

  <Accordion title="Spend numbers don't match the native dashboard">
    Usually a timezone discrepancy. Native platforms report in the ad account's timezone; Hiveku reports in your project's timezone. A campaign that ran 11pm-1am in UTC might split across two days in PST. Switch to a 7-day range to smooth this out, or check the per-account timezone setting.
  </Accordion>

  <Accordion title="Metrics look delayed">
    Ad platforms have reporting lag. Google: 3-6 hours for most metrics. Meta: up to 24 hours for view-through conversions. TikTok: 6-12 hours. "Today's" numbers are always incomplete — compare yesterday's or last week's for accurate trends.
  </Accordion>

  <Accordion title="Can't pause a campaign">
    Permission issue on the connected account. The OAuth user needs **edit access** on the ad account, not just view. Re-authorize with a user who has admin rights, or ask your ad account admin to promote the connected user.
  </Accordion>

  <Accordion title="New campaign not appearing after creating in native platform">
    Sync runs every 15 minutes. If it's been longer than that, check **Settings > Integrations > Sync History** for errors. Also confirm the campaign is actually saved (not in Draft) in the native platform.
  </Accordion>
</AccordionGroup>

## What's Next?

<CardGroup cols={2}>
  <Card title="Connect Meta Ads" icon="facebook" href="/how-tos/connect-meta-ads">
    Wire up Meta if you haven't yet
  </Card>

  <Card title="Workflows" icon="diagram-project" href="/how-tos/workflows">
    Automate alerts on spend or performance anomalies
  </Card>
</CardGroup>
