Google Sheets

Meta Ads Naming Template: The Full Convention

The naming convention to copy: structure per level, separators, variables, real examples. Works with Google Sheets and Airtable.

Updated

Access this resource for free

By submitting, you agree to our privacy policy.

A naming convention is not about tidiness. It exists to answer one precise question six weeks from now: which creative concept made money, and in which format?

The full convention is published below. The Google Sheets file adds the dropdowns and the concatenation formula, nothing else.

The principle: three levels, three questions

LevelThe question it answers
CampaignWhich objective, which market, which period?
Ad setWhich audience, which placement, which budget?
CreativeWhich concept, which format, which iteration?

A convention applied at one level only is useless: it is the intersection of all three that makes reporting readable.

Structure

Campaign

[OBJECTIVE]_[MARKET]_[OFFER]_[YYYYMM]

CONV_US_ANNUAL-PLAN_202608

VariableValues
OBJECTIVEAWA, TRAF, ENG, LEAD, CONV, RET
MARKET2-letter country code: US, UK, FR, DE
OFFERthe offer being pushed, in upper kebab-case
YYYYMMlaunch month

Ad set

[AUDIENCE]_[TYPE]_[PLACEMENT]_[BUDGET]

LAL1-BUYERS_LAL_AUTO_CBO

VariableValues
AUDIENCEshort name of the source audience
TYPEBROAD, LAL, INT, RTG, CUSTOM
PLACEMENTAUTO, FEED, REELS, STORIES
BUDGETABO or CBO

Creative

This is the level that matters most, and the one that almost always gets rushed.

[CONCEPT]_[FORMAT]_[RATIO]_[ITERATION]

UGC-UNBOXING_VID_9x16_v03

VariableValues
CONCEPTthe creative idea, stable across iterations
FORMATVID, IMG, CAR, COLL
RATIO1x1, 4x5, 9x16
ITERATIONv01, v02, v03

The key point: CONCEPT stays identical across variants. That is what lets you aggregate performance by creative idea and not just by file.

Five rules that prevent damage

1. One field separator, one word separator. Underscore between fields, hyphen inside a field. Mixing the two makes splitting impossible.

2. No accents, no spaces, no slashes. Créa_Été/Promo breaks every export. Accents and slashes turn against you the moment you cross Meta’s export with a spreadsheet.

3. Fixed-length codes. 9x16, not 9:16 and not vertical. A variable-length code breaks split formulas.

4. Dates as YYYYMM, never MM-YYYY. It is the only format that sorts correctly alphabetically.

5. The separator must match what your reporting splits on. If your dashboard runs SPLIT on _, the creative name has to carry exactly the right number of underscores. Test it on one creative before launching fifty.

Full example

LevelName
CampaignCONV_US_ANNUAL-PLAN_202608
Ad setLAL1-BUYERS_LAL_AUTO_CBO
CreativeUGC-UNBOXING_VID_9x16_v03

Reads as: conversion campaign on the US market for the annual plan, launched August 2026; lookalike of buyers, automatic placements, budget managed at campaign level; UGC unboxing creative, vertical video, third iteration.

What this convention does not fix

It says nothing about the quality of your concepts, and it does not replace team discipline. A convention that two people out of five follow produces worse reporting than no convention at all, because it looks trustworthy.

It also assumes you are willing to rename your files before import. That is the only moment when it is easy.

How this connects to automation

A strict naming convention is what lets a tool rebuild the campaign structure without you re-entering it. Apogee reads these names on import to derive concept, format and iteration, then structures the ad sets accordingly. The convention stays yours: it gets read, not imposed.

To understand the reasoning behind each field rather than copy the structure, see the Meta Ads naming convention guide.

Talk to Founder