Why four numbers beat two hundred columns
Ads Manager can show hundreds of columns. A business owner needs four to make a decision: spend, leads, cost per lead and cost per qualified lead. The last one does not exist in Ads Manager, because whether a lead became a real conversation with a customer lives in your CRM, not in Facebook.
When a client asks "is Facebook working?", you send a link, not a screenshot. They pick a period, click a campaign, see its ad sets, then the ads. In kroner.
What the dashboard does
- Pulls spend, impressions and clicks from the Meta Graph API: campaigns, ad sets, ads and a period picker.
- Matches every lead with the CRM, so you see the cost per qualified lead, not only the cost per lead.
- Shows money as Norwegians read it: 12 450 kr.
- One link for the client, without a login to Ads Manager.
- Keeps the Facebook token on the server behind a read only proxy. The browser never sees it.
The detail most dashboards get wrong: the token
If the access token sits in the JavaScript of the page, anyone who opens the dashboard can copy it and read your ad account, or worse, if the token has more permissions. In our dashboard the page asks our own server, the server adds the token and passes only read requests to Meta.
- BrowserAsks your own domain for numbers. No token here.
- Your server, the proxyAdds the token, lets through only GET requests for your ad account.
- Meta Graph APIAnswers with spend, impressions, clicks and leads.
Who this guide is for
Agencies and freelancers who report to clients every week, and owners who want one screen instead of Ads Manager. Claude Code writes the code. You decide what a qualified lead is and which four numbers the client sees first.