Skip to main content

Agencies · Creative testing

RelayPerformance creative

A weekly creative test readout grouped by hook and format

Most creative test reports list ads by name and spend. These field notes cover a Relay that reads results by hook and format instead, flags tired ads, and proposes the next round, with any budget change waiting for a person.

Valnora & Elric team6 min read

A creative strategist at a performance agency spends most of Monday morning in ads manager, exporting results for each client, then trying to answer one question: which ideas are working? The export answers a different question: which ads are working. With 40 live ads per client, named things like "UGC_v3_final_B", the pattern under the names gets lost.

These notes cover a Relay, an AI coworker with its own instructions and access, that writes the weekly readout by idea rather than by ad name, and proposes the next round of tests for a person to approve.

Why group by hook and format?

An ad is a combination of choices: the hook in the first seconds, the format, the length, the offer. A test is only useful if it tells you which choice made the difference. Grouping results by hook and by format answers the question the team actually asks: should we make more of this idea, and in which shape?

That needs tags. A small creative tags table in Tables holds one row per ad: the hook, format, length, offer and the test it belongs to. The team tags each ad at launch, as part of the creative production line. The Relay reads the tags; it does not invent them. For untagged ads it suggests tags from the ad copy, and a person confirms.

Where does the Relay get the results?

From ad results to an approved test plan

A Relay runs every Monday. It reads Meta insights through a Tool connection and Google Ads reports, joins them to a creative tags table, groups results by hook and format, and drafts a readout. Budget changes wait for approval.

Data · Results and tags

  1. 01Meta ads insightsRead through Meta’s official ads MCP server, added under Settings → Tool connections.
  2. 02Google Ads reportsAd and ad group performance from the read-only Google Ads block.
  3. 03Creative tags tableOne row per ad: hook, format, length, offer and the test it belongs to, tagged at launch.

Relay · Test readout

  1. 04Weekly scheduleRuns Monday 08:00 in the client’s time zone, for each client account.
  2. 05Testing rulesMinimum spend before a call, the fatigue signals the agency uses and the client’s brand limits.
  3. 06Readout and next testsWinners and losers by hook and format, tired ads, and three proposed tests.
  4. 07Budget changes waitAny change that moves spend is proposed, not made, until a person approves it.

Two sources, both read-only for this job.

  • Meta. There is no built-in Meta Ads block. Instead, an admin connects Meta’s official ads MCP server under Settings → Tool connections. MCP is a standard way to plug a service’s tools into an AI agent. Once it is on the Relay’s allowlist, the Relay can list ad accounts and read campaign and ad insights using the agency’s connected account.
  • Google Ads. The Google Ads block reads customers, campaigns, ad groups and ad performance, and runs custom queries. It cannot change budgets, bids or status.

The Relay joins both to the tags table by ad ID, then groups spend, click-through, cost per purchase and frequency by hook and by format.

How does it decide what is a winner?

It follows the agency’s testing rules, stored in the Knowledge Base, not its own judgement. Ours say:

  • No call below the spend floor. A hook with less than an agreed spend per variant is "too early", whatever its numbers say.
  • Compare like with like. Video against video, prospecting against prospecting.
  • Fatigue is a trend, not a number. An ad is flagged when frequency passes the agreed level and click-through has fallen for three weeks in a row.
  • Respect brand limits. Some clients do not allow price-led hooks or before-and-after claims in certain categories. Proposals stay inside those limits.

What does the Monday readout look like?

What the solution produces

Monday readout, skincare client (illustrative)

Memo

Week of 5 October. Meta and Google combined. All figures illustrative.

By hook: "before and after" leads on cost per purchase across 6 ads; "founder story" trails on every format. "Dermatologist question" is too early to call (below the spend floor).

By format: 9:16 video beats static on click-through for every hook; static carousel wins on cost per purchase for the price-led hook only.

Fatigue: ad M-114 has run 24 days, frequency above 4 and click-through down for three weeks running. Suggest retiring it.

Next tests: (1) "before and after" as a 15-second UGC cut, (2) the price hook as carousel on Google Demand Gen, (3) a new hook from the review mining sheet.

Proposed budget move: shift 20% of the founder-story ad set to the new UGC test. Waiting for approval; nothing has changed.

Creative Test Analyst Relay · waiting for the account lead

The readout goes to the account lead’s chat with the Relay, with a notification. It leads with ideas, then formats, then tired ads, then three proposed tests. The example above is illustrative. A good readout is short enough to read before standup.

If the agency also sends the readout to the client, the Relay drafts the email, and email always waits for an approval. Keep the recipient policy on internal only to start, so drafts go to the account lead, who forwards them.

What happens to budget changes?

Every call a Relay makes is classed as read, write, destructive or spend. Reads run. Anything that moves money, such as raising an ad set budget through Meta’s tools, is a spend call and waits for a person to approve the exact change, unless the Relay has delegated limits and the change fits inside them. Approved calls run once and are written to the audit log.

Google Ads changes cannot be made from the Relay at all, because that block only reads. The readout says "proposed" and a person makes the change in Google Ads.

We start every new client in Observe, where writes are blocked, and keep it there for the first month. The proposals still appear, so the team can judge them without risk.

Controls and governance

Approvals before action

Relays never send email or book meetings without an approval, under any autonomy setting. An approval covers the exact payload the reviewer saw and expires if nobody decides.

Audit trail

Proposals, approvals, declines and executed actions are written to the workspace audit log, which admins can export.

Run logs

Every workflow run records each block’s inputs, outputs and errors, so a reviewer can trace how a result was reached.

Roles and permission groups

Admin, write and read roles per workspace, plus permission groups that limit which models, blocks and integrations a team can use.

Bring your own keys

Use your organisation’s own model provider keys at organisation or workspace level.

More on how Agent Serve handles access, data and audit on the security page.

What did we learn in the first month?

  • Tagging discipline decides everything. A week with sloppy tags gave a confident and wrong readout. We now block launches until the tags row exists.
  • "Too early" is a useful answer. The spend floor stopped the team killing hooks after two days.
  • Proposals got better with context. Adding the client’s brand limits and past test results to the Knowledge Base cut proposals that the team would never run.
  • Keep the budget move small. Approving a 20% shift is an easy decision. Approving a rebuild is not, so the rules ask for small, reversible moves.

For pacing spend against a monthly plan, see ad budget pacing across Google and Meta. For running Meta campaigns from Chat, see Meta ads campaign management.

Questions teams ask

Can the Relay change budgets in Google Ads?

No. The Google Ads block in Agent Serve reads and reports only. The Relay can recommend a change, and a person makes it in Google Ads.

Can it change Meta budgets?

Meta’s ads MCP server includes tools that create and change campaigns. Calls that spend money are classed as spend and wait for approval, unless the Relay has delegated limits and the call fits inside them. Most agencies keep every spend call on approval.

Where do hook and format tags come from?

From the team, at launch. The Relay can suggest tags for untagged ads from the ad copy and creative description, but a person confirms them, because a wrong tag skews every grouped result.

Before you start

What you need

  • Meta’s ads MCP server connected under Settings → Tool connections, with the client’s ad accounts
  • Google Ads connected for the client accounts you report on
  • A creative tags table with hook, format, length and offer for every live ad
  • Your testing rules in the Knowledge Base: spend floor, fatigue signals, brand limits
  • An account lead per client who approves the readout and any budget move
  • Meta tools that create or change campaigns set to ask before running

Written by the Valnora & Elric team.

Figures, dashboards and sample outputs in this article are illustrative examples, not customer results. This article is for information only and isn't legal or regulatory advice.

Enterprise access

Put AI agents to work across your team

Agent Serve is available to teams by invitation. Tell us what you want to build and we will set up your workspace with you.