LabArticleOperator-judged

Name the campaign so a stranger can read the stack

Use angle__targeting__inventory__pageTemplate__wave. A generic name like growth test hides what was isolated. The name is the experiment label a later operator can read without the original chat.

Published 2026-09-09 · Search job: campaign naming convention

A campaign naming convention is how a stranger reads the stack. Use angle__targeting__inventory__pageTemplate__wave. Do not use one generic name like "growth test" if the campaign is actually a Cursor, desktop-web, direct-response, prompt-pack funnel.

The June 2026 plan's examples:

  • ai-chat-control__tech-business__desktop-web__short-direct__w1
  • builder-tool-workflow__developer-tools__mobile-web__interactive-planner__w1
  • no-friction-buying__founder-small-team__desktop-web__pain-led-story__w1

Each segment is a layer in Creative, audience, and page as one matrix. If the name cannot assign the cell to one angle, the cell should not be in the first-wave paid test.

Name the creatives the same way

Creative names should include angle, message, visual, page target, and wave:

  • ai-chat__prompt-to-campaign__chat-mock__short-direct__w1
  • no-friction__no-sales-call__founder-checklist__pain-led__w1
  • api-quickstart__media-buying-api__terminal-card__technical__w1

Copy variants inside a template use angle.template.copyVariant:

  • ai-chat-control.short-direct.outcome-first
  • no-friction-buying.pain-led-narrative.pain-first
  • api-quickstart-intent.technical-quickstart.tool-first

The names are not decoration. They are the only reliable join when reporting, visit logs, and creative associations disagree about what ran.

What a stranger should be able to answer

Without opening a planning doc, the name should answer:

  • Which promise was this click buying?
  • Which audience or inventory hypothesis?
  • Which page style received the visit?
  • Which wave, so a later edit is not confused with the original cell?

If you need to change a layer, copy the campaign instead of editing it and change the segment that moved. Editing in place under the old name is how two tests become one average.

Supply-bench cells can follow the same spirit (supplybench__...__weekend-quiz__w1) and still stay out of the product-funnel namespace. Do not reuse an ai-chat-control prefix on a consumer probe.

The name is also how you keep one trafficking change per day honest on the ideas side. If yesterday's cell was ...__short-direct__w1 and today's edit silently points at a planner page under the same string, the ledger will say one campaign and the visits will say two templates. Change the pageTemplate segment when the page changes. Change the wave segment when you copy for a new flight. Leave the other segments alone unless that layer is the experiment.

A later operator should be able to rebuild the matrix from names alone: six angle prefixes, targeting tokens, inventory tokens, template tokens, and a wave suffix. If they cannot, the names failed before the ads did.