This article is for agencies. It covers the steps that are the same for every ad network: the Ad accounts page, mapping campaigns, creating offers, how spend is imported, and reconnecting an account. Connecting an account and sending conversions back differ per network, so each has its own guide:
Agency Partners: Meta
Agency Partners: Google Ads
Agency Partners: TikTok
Agency Partners: AppLovin
ℹ️ Your advertiser has to add you as a partner with the account type Agency first.
The Ad accounts page
Sign in to the advertiser's partner portal. You'll find a menu item called Ad accounts. It is only shown to agency partners.
The page lists every account you have connected:
Column | What it shows |
Account | The account name and its ID on the network. |
Network | Meta, Google Ads, TikTok or AppLovin. |
Currency | The account's currency. |
Mapped campaigns | How many of the account's campaigns are mapped to an offer. |
Status | Connected, or Needs reconnect with the reason the last import failed. |
Last import | When spend was last imported successfully. This timestamp is refreshed every few hours, even though spend is imported every hour. |
Connect an ad account
Go to Ad accounts and click Connect ad account.
Pick a network card. Cards marked Sign in connect through the network's own login. Cards marked API keys connect with keys you paste in.
Follow the steps in the guide for your network: Meta, Google Ads, TikTok or AppLovin.
ℹ️ An ad account can belong to only one partner on a platform. If another partner already connected one of your accounts, it is skipped, and the confirmation message tells you how many accounts were connected and how many were skipped.
Map campaigns to offers
Nothing is imported until a campaign is linked to an offer. Each campaign is mapped to the one offer it promotes. An offer can have many campaigns. If the advertiser lets you create offers, see the next section instead.
On the Ad accounts page, click Map campaigns next to the account.
For each campaign, choose the offer in the Offer column. The mapping is saved as soon as you pick it.
To remove a mapping, clear the offer.
Use the search box (name or campaign ID) and the Unmapped only switch to find campaigns quickly. An active campaign that isn't mapped yet is highlighted with "Active, but not mapped yet: its spend is not imported."
ℹ️ Tip: pick the right offer from the start. Spend that was already imported stays on the offer it was imported to. Changing the mapping later does not move it.
Create an offer for a new campaign
If the advertiser lets you create offers, each ad account on the Ad accounts page has a Create offer button. Use it when you start a new campaign: you get one offer per campaign, with its own tracking link and reports.
Click Create offer next to the account the campaign runs in.
Pick the App. You only see the apps the advertiser opened to your agency.
Enter the Campaign name. It becomes the offer's name, so use the same name for the campaign in the ad network.
Choose the Event setup:
Copy from "…" copies the event forwarding of an earlier offer of yours for the same app.
Start fresh leaves the event mapping to you.
Click Create offer. You land on the offer's tab for that network, with a setup checklist.
You don't need to map the new campaign yourself. Once the campaign's first clicks come in through the offer's tracking link, Swaarm links the campaign to the offer automatically and imports its spend from then on. If that can't be done unambiguously (for example, the campaign's clicks go to several offers), map it on the Map campaigns page.
How spend is imported
Spend of your mapped campaigns is imported every hour.
Each run re-reads the last few days, so today's spend keeps catching up and later corrections by the network are picked up. When you map a campaign, its spend from the last few days is imported too. Older spend is not.
In the partner portal, the spend shows as Total Spend on your dashboard and offers. The advertiser sees the same amounts as Cost in their reports.
Send conversions back to the network (optional)
To let your campaigns optimise on the conversions you drove, set up event forwarding per offer. Open the offer in the partner portal and go to the tab for your network: Meta, Google, TikTok or AppLovin. From the Map campaigns page you can jump there with the Event setup for this offer link under a mapped campaign.
Each tab starts with a Set up this campaign checklist: copy the tracking link into your campaign, map events, test the setup, and the campaign linked to this offer. Steps tick off as you complete them.
Every tab shows a tracking link for the network. Use it as the website URL of your ads: it carries the network's URL parameters and click ID, which conversions are matched on. Then map the offer's events to the network's events.
⚠️ Only events you map are sent.
Tokens and keys are stored securely and are never shown again after saving. Enter a new one only to replace it. Remove Settings stops sending conversions for that offer.
What you enter and how you test depends on the network. See the guide for Meta, Google Ads, TikTok or AppLovin.
Reconnect an account
If an import fails, for example because a login expired or access was revoked, the account's status changes to Needs reconnect and the reason is shown underneath. Spend for that account is not imported until you fix it.
Click Reconnect next to the account. The connect dialog opens with the network already selected.
Sign in again (or enter fresh keys for AppLovin).
Your campaign mappings are kept. The next hourly import catches up on the last few days.
Disconnect an account
Click the disconnect icon next to the account and confirm. The account's campaign mappings are removed and no more spend is imported from it.
ℹ️ Spend that was already imported stays in the reports.
Troubleshooting
Issue | What to check |
You don't see Ad accounts in the menu | Your partner's Account Type must be Agency. Ask the advertiser to check it. |
An offer is missing from the offer picker on Map campaigns | You need access to that offer. The advertiser can grant it. |
"Skipped because another partner already connected it" | That ad account is already connected by another partner on this platform. It can belong to one partner only. |
No spend shows up | Check that the campaign is mapped to an offer and that the account status is Connected. Spend is imported hourly, so allow up to an hour after mapping. |
Status shows Needs reconnect | Read the reason under the status and click Reconnect. For AppLovin, copy the keys again from Account › Keys. |
No Create offer button on Ad accounts | The advertiser hasn't allowed offer creation yet (partner › Management › Agency). If the button is greyed out, reconnect the account first. |
The App list in Create offer is empty | The advertiser hasn't opened any apps to your agency yet. |






