Meta Ads
Meta Ads lets your Chief of Staff read your ad accounts, campaigns, spend and results, and build custom and lookalike audiences.
Meta Ads doesn't have a "Log in with Facebook" button. You connect it by pasting an access token that you create in Meta. The token decides everything the connection can do. If Meta refuses something, connecting again with the same token won't change that: you need a new token.
The token to use: a system user token
A system user token never expires, and it only reaches the ad accounts you assign to it. You make it in Meta Business Settings, in the business portfolio that owns your ad account.
- Open Business Settings and go to Users → System users. Add a system user with the Admin role, or pick an existing one.
- On that system user, click Assign assets, choose Ad accounts, select your ad account, and turn on full control (manage the ad account).
- You also need an app that belongs to the same business portfolio. If you don't have one, create it at developers.facebook.com, choose the use case for creating and managing ads with the Marketing API, and connect it to your business portfolio.
- Back on the system user, click Assign assets again, choose Apps, select that app, and give it full control.
- Click Generate token on the system user. Choose the app, set the expiration to Never, and tick ads_read and ads_management. Copy the token.
- In MarketingSecrets.ai, open Integrations, find Meta Ads, click Connect and paste the token.
Then ask your Chief of Staff something like "how did my ads do last week?" to check it can see the account.
Meta's own guide for steps 4 and 5 is Install apps and generate tokens.
Tokens that won't work for long
- Graph API Explorer and Access Token Tool tokens are personal tokens that expire within hours. The connection works for a moment and then stops.
- A token made before you assigned the ad account. Meta never adds permissions to a token after it's made. Assign the ad account first, then generate the token.
If your Chief of Staff says Meta refused the token
MarketingSecrets.ai checks your token with Meta when you connect it and whenever you open Integrations, so the Meta Ads card only says Connected while Meta still accepts the token. When Meta refuses it, the card shows Reconnect required, and the line under it says why:
- The ad account isn't assigned. The token works, but the ad account isn't assigned to the system user that made it. Do step 2, generate a new token (step 5), and reconnect with it.
- The token expired. Usually a Graph API Explorer token. Make a system user token with expiration set to Never.
- The app that made the token was switched off. The app was deleted, or Meta deactivated its API access. A new token from that app fails the same way: reactivate the app at developers.facebook.com, or use another active app in your business portfolio, then generate a new token.
- Meta no longer accepts the token. It was revoked, or the app was removed from your business. Generate a new system user token and reconnect.
If Generate token shows no permissions to choose, the app is usually not assigned to the system user (step 4), or the app wasn't created with the Marketing API use case (step 3).