GAM Sync and Mapping
Once GAM is connected, most problems fall into three buckets: the connection isn't healthy, data didn't come across on import, or a slot isn't mapped to the right ad unit. This runbook covers the incident side. For the step-by-step how-to, see Connecting GAM and the import pages.
Imports and syncs are one-way (GAM → Anima) and manual — there's no background job re-pulling your catalog on a schedule. If something changed in GAM, Anima won't know until you re-import or sync. GAM is the source of truth for ad-unit and size identity. (The one thing Anima writes to GAM is your header-bidding line items, set up separately at onboarding.)
Symptom router
| Symptom | Jump to |
|---|---|
| Connection won't verify / red badge | Connection health |
| Import buttons aren't there | Missing import permission |
| Ad units or sizes missing after import | Missing inventory after import |
| Key-values won't import | Key-values missing |
| GAM edit not reflected in Anima | Stale data |
| Slot gets bids but won't serve | Slot won't serve |
Connection health
Imports need a verified network. If the badge on Setup → GAM is stuck on Not yet verified or showing a red failure, that's where to start:
| Cause | Fix |
|---|---|
| Service account not added as a GAM user | Re-do Connecting GAM → Step 3; confirm you saved |
| API access disabled | GAM → Admin → Access & authorization → API access; enable it |
| Verification hasn't run yet | Wait 5–10 minutes; your onboarding specialist can trigger it if it's stuck |
| Service account later removed or role too restrictive | Re-add it, or raise the role to Trafficker |
The full connection troubleshooting table is on Connecting GAM.
Missing import permission
If the Import controls don't appear under Inventory → GAM, you likely don't have the gam.import_adunits permission (and the sibling permissions for sizes and key-values). Import is permission-gated. Ask your onboarding specialist to grant it, or have an admin on your account run the import.
Missing inventory after import
Ad units or sizes didn't come across:
| Cause | Fix |
|---|---|
| Wrong scope selected | Confirm the right domain (or customer) is selected before importing — importing under the wrong scope lands the data somewhere you're not looking |
| Not imported yet | The connection grants access; it doesn't auto-populate. Run Import under Inventory → GAM |
| Ad unit archived/removed in GAM | Anima imports what exists in GAM now. Restore it in GAM, then re-import |
| A size isn't available | Sizes aren't pre-loaded — they come only from a GAM sizes import. Re-run Import on sizes (sizes have no per-row sync) |
| Large network still importing | Networks with thousands of ad units take several minutes on first import; watch the progress indicator |
Key-values missing
A key-value you expect isn't in Anima after importing:
| Cause | Fix |
|---|---|
| Key isn't reportable in GAM | Import pulls reportable keys only. Mark the key reportable in GAM, then import |
| Filtered import | If you used Filter by Name / Exact Name, the key may have been outside the filter — import again without it |
| Recent GAM change | Use the per-row Sync from GAM on the key, or re-import |
Stale data
Anima shows an old name, size list, or value that you've since changed in GAM. This is expected — refreshes are manual:
| Data | How to refresh |
|---|---|
| Ad units | Per-row Sync from GAM, or re-Import under Inventory → GAM |
| Key-values | Per-row Sync from GAM, or re-Import |
| Sizes | Re-Import (no per-row sync) |
| Reporting figures | Refreshed daily by Anima's reporting pipeline — no manual action |
Imports are non-destructive for fields you've edited in Anima; GAM-authoritative fields (name, sizes) refresh from GAM. Renames belong in GAM — Anima treats GAM as the source of truth for ad-unit identity, so rename there and sync.
Slot won't serve
The slot collects bids (pbjs.getBidResponses() is populated) but nothing renders (pbjs.getAllWinningBids() is empty). GAM has the winning bid but no ad unit to serve it into:
| Cause | Fix |
|---|---|
| Slot not mapped to a GAM ad unit | Set Ad unit on the slot's Insert tab (Inventory → Ad Slots → <slot> → Insert) |
| Mapped to the wrong or a deleted ad unit | Re-map to the correct current ad unit |
| Ad unit deleted in GAM after mapping | The Anima record remains but won't serve — re-map the slot, or restore the unit in GAM and re-import |
| Ad unit's sizes don't cover the slot's sizes | Align the slot's sizes with the mapped ad unit |
For a full single-slot trace, use the slot audit.
Escalation
Contact support@animaadtech.com (or your onboarding specialist) if: the connection verifies but imports return nothing, a specific ad unit consistently fails to import, or slots stay unserved after mapping is confirmed correct. Include the network code, the affected ad-unit paths or key names, and what you've already synced.
Related
- Connecting GAM · Importing ad units · Importing sizes · Importing key-values
- GAM Line Items for Header Bidding — the one thing Anima writes to GAM
- Ads not showing · Slot audit