Meta Ads · Google Ads · TikTok Ads

Fast Account Health Check

A two-minute traffic light for every ad account: is sync alive, did anything drop or spike lately, and which high-severity findings are still open.

Connect RoASr

Recommendations only: the prompt never changes your ad accounts.

How to run it

Three steps, about a minute.

  1. Connect RoASr to Claude or ChatGPT

    Create an API key in RoASr and add the RoASr MCP server. Access is read-only: the prompt cannot change anything in your ad accounts.

  2. Paste the prompt

    Copy the text below into a new chat.

  3. Answer a few questions

    The prompt asks only what it cannot find itself, then reads your data and answers in a fixed format.

  4. Guides in the blog

What it asks

  • client
  • window — last 7 days

Data it reads

  • roasr_load_skill
  • roasr_limits
  • roasr_list_clients
  • roasr_list_accounts
  • roasr_metrics_summary
  • roasr_metrics_daily
  • roasr_list_findings

Method

  • roasr_frame
  • report_format
Full prompt

The prompt

Before you start, ask me about each [input] below — one question at a time, with ready-made answers to pick from; skip whatever you can already tell.

Run a fast health check of the ad accounts of [client: if not listed, call roasr_list_clients and let me pick]: are they alive, did anything break or spike in the last days, and what are the biggest open problems. Keep it short and decisive.

1. **Load the RoASr method.** Call roasr_load_skill('roasr_frame') and roasr_load_skill('report_format') and follow them exactly.
2. **Frame the data.** Call roasr_limits, roasr_list_clients and roasr_list_accounts: plan, niche, margin, KPI, account currencies, sync status and dataSince. Check [window: last 7 days (default) | last 14 days | last 30 days | custom] against the period of the same length right before it. If a window starts before dataSince, say so and narrow it. If currency.mixed is true, never sum money across accounts.
3. **Liveness.** For every account, read sync.state and lastSyncAt. An account with state failed or never gets the label "no data" and no conclusions at all; name it and move on.
4. **Pulse.** roasr_metrics_summary for the window and for the previous period, then roasr_metrics_daily for the window (one call per account via accountId when there are several). Flag only what is clearly outside the noise floor from the method:
   - a day with spend or clicks under half or over double the window median;
   - an account that had spend before and has zero spend now;
   - conversions at zero while clicks and spend continue (probable tracking break: name the first day);
   - a window-over-window change in spend, CPA or ROAS beyond about 25%, when the account has enough volume to trust it.
5. **Open problems.** roasr_list_findings for this client: take the open findings with high severity, the top 3 by priority. Do not re-audit; just quote the finding and the account it belongs to.
6. **Traffic light per account.** Green: synced, nothing flagged. Yellow: one soft flag or an open high finding. Red: sync failed, spend stopped, or conversions at zero with clicks alive.

**Output:** open with one sentence: how many accounts are green, yellow, red and the single most urgent thing. Then a table: account · platform · sync · spend change · conversions change · flags · light. Then the top 3 open high findings, then 3–5 actions grouped High / Medium / Nice-to-have, each with the expected effect.

**Output rules:**
- Recommendations only — never apply changes; RoASr tools are read-only.
- reach and frequency are not additive across days; show money per account when currencies differ.
- A small window on a small account is noise: say "too little data" instead of a verdict.
- Rule out a tracking break before calling a conversion drop a performance problem.
- "All green" is a valid answer; never invent a problem to fill the report.
- Answer in the language of this prompt.