Naming convention template
Free download as CSV and Markdown. Nothing sits in front of the file: no form, no account, no email address.
The files
What it is
A naming convention is one row per segment of a name. Each row fixes a position, a token, what the token means, the complete list of values it may take, and who owns that list.
The point is not tidiness. A name built from fixed positions and a closed list of values can be split by a script, which means an account can be grouped, filtered and reported on without anybody maintaining a mapping table by hand.
When to use it
Write it before the first campaign is built, and rewrite it only when a new kind of object appears. Retro-fitting a convention onto a live account is expensive, because renaming objects breaks the reporting history attached to them.
Use it whenever somebody new starts building in the account. A convention that lives in one person's head is a convention that ends when they take a week off.
| Type | How to fill it | |
|---|---|---|
| Level | Text | Which object this segment belongs to: campaign, ad set or ad group, ad, creative file, or a tracking parameter. A convention that does not say the level cannot be applied consistently. |
| Position | Integer | Where the segment sits in the name, counting from the left. Fixed positions are what let a name be split by a script rather than read by a person. |
| Token | Text | The short code that appears in the name: the literal text, not a description of it. Tokens are lower case, have no spaces, and never contain the separator. |
| Meaning | Text | What the token stands for, in plain words. This column is the reason somebody six months from now can read a name they did not write. |
| Allowed values | Text | The complete list of values this position may take, or the rule that generates them. An open-ended position is a position that will hold anything within a month. |
| Example | Text | A real value in this position, written as it will appear. One concrete example prevents more misreadings than a paragraph of description. |
| Required | Text | Whether this segment must appear, or may be omitted. A convention with optional segments in the middle cannot be split reliably, so optional segments belong at the end. |
| Separator | Text | The character between this segment and the next. One separator, used everywhere, and never a character that appears inside a token. |
| Case rule | Text | How the value is cased: lower case throughout is the only rule that survives contact with several people and several platforms. |
| Where it appears | Text | Every place this segment has to be repeated: the campaign name, the file name, the tracking parameter, the plan. Consistency across those is the whole benefit. |
| Maintained by | Text | Who owns the list of allowed values for this position, and who adds to it. A list nobody owns is a list that grows a synonym for everything in it. |
| Change rule | Text | What happens when this segment has to change. Renaming live objects breaks reporting history, so the rule is usually that names are set once and new objects get new names. |
| Notes | Text | Anything the next person needs: a value that was retired and why, a platform that truncates long names, a position that exists only for historical reasons. |
A name is a data structure
Most naming conventions are written as a style guide and fail for that reason. The useful way to think about a name is as a record with fields in it, where the separator is the delimiter and each position is a column.
Once a name is a record, useful things follow. An account can be grouped by any position without a mapping table. A report can be filtered to every prospecting campaign across four platforms. A spend total can be reconciled against a media plan by joining on the same tokens. None of that needs a tool; it needs consistency.
The corollary is that everything which makes a name pleasant to read — capitals, spaces, a note about who asked for it, the date somebody built it — makes it worse as a record. Names are not for reading, they are for splitting, and the meaning column in this document is where the human explanation belongs instead.
Positions before values
The first decision is how many segments there are and what each one is for. The second is what each may contain. Doing them in that order matters, because a convention with fixed positions and imperfect values can be improved, while one with drifting positions cannot be repaired at all.
Three or four segments is usually right for a campaign: the channel or account, what it is bought to do, who it is aimed at, and the period or flight. Ad sets add the audience detail; ads add the creative identifier, which should be the same identifier as the one on the creative brief row and the asset file.
Optional segments go at the end. A convention where the fourth position is sometimes the audience and sometimes the flight, depending on whether an optional third segment was used, cannot be split by position, which throws away the whole benefit.
Closed lists, with an owner each
The allowed values column is where conventions succeed or rot. An open-ended position collects synonyms: prospecting, prospect, pros, cold, acquisition, all meaning the same thing and none of them grouping together.
So every position has a list, and every list has a named owner who is the only person who adds to it. That sounds heavy for a small team and it is the cheapest governance in the document: adding a value takes a message, and the list stays short enough to be memorised by the people who use it daily.
Record retired values rather than deleting them. A name built last year with a value that is no longer used still exists in the reporting, and somebody will need to know what it meant.
One separator, and never inside a value
Pick a separator your values cannot contain, and then never use a second one.
The failure is familiar: hyphens between segments and hyphens inside a value, so that a name splits into a different number of parts depending on whether the audience was called past-buyers or repeat. Whatever splits the name has no way to tell which hyphen was structural.
The fix is a rule in the case and separator columns: values are lower case, contain no spaces, and never contain the separator. Where a value naturally has two words, the convention picks a form — joined, or an underscore inside a hyphen-separated name — and the allowed-values list shows it written out.
The same tokens everywhere
A convention is only worth having if the same tokens appear in every place the object is referred to: the campaign name, the ad name, the creative file, the tracking parameters, the media plan and the flight plan.
That repetition is what makes reconciliation possible. A line in the plan and a campaign in the account join on the same string, and a week of spend can be traced to a row without a lookup table. The where-it-appears column exists to make that requirement explicit rather than assumed.
Tracking parameters deserve particular attention, because they are usually built by a different person at a different time, and a mismatch there is invisible until somebody tries to join advertising data to anything downstream.
Renaming breaks history
The change rule column carries the most important operational fact in the document: in most platforms, renaming a live object rewrites its history in reporting, so old exports and new ones disagree.
The rule that works is that names are set once. A campaign whose objective changes is a new campaign rather than a renamed one, which is also the honest position — an object whose purpose changed is not the same object, and its results before and after should not be added together.
Where a rename is genuinely necessary, record the old name, the new name and the date in the notes, so that two exports from either side of the change can still be reconciled.
Keep the convention short enough to be used
The last failure worth naming is over-design. A convention with nine positions, three optional segments and a date format is correct and nobody follows it, which leaves an account with half-conventional names — the worst of both states, because it looks structured and cannot be split.
Four positions at campaign level is usually enough. Two more at ad set level. One at ad level. If a position cannot be filled from memory by somebody building a campaign at speed, it will be filled wrongly or left out.
The test is whether a person can write a correct name without opening the document. If they cannot, the convention is too long, and the right response is to remove a position rather than to write a longer explanation of it.
Before you adopt the convention
Seven checks. One separator, used everywhere, that never appears inside a value. Every position fixed, with optional segments at the end. Every position with a closed list and a named owner. One full example name written out per level, and each one splits correctly. The same tokens repeated in the plan, the file names and the tracking parameters. A change rule agreed before anybody renames anything live. And retired values recorded rather than deleted.
Made for your industry
Naming convention template for B2B SaaS
A free naming convention template for B2B SaaS as a CSV and a Markdown file, with segments for the ICP segment, the funnel stage and the quarter.
Naming convention template for Ecommerce
A free naming convention template for ecommerce as a CSV and a Markdown file, with segments for the catalogue segment, the promotion and the creative set.
Naming convention template for Fintech
A free naming convention template for fintech as a CSV and a Markdown file, with segments for the product, the jurisdiction and the review reference.
Naming convention template for Healthcare
A free naming convention template for healthcare as a CSV and a Markdown file, with segments for the service line, the audience type and the review.
Naming convention template for Real estate
A free naming convention template for real estate as a CSV and a Markdown file, with segments for the listing reference, the stage of sale and the office.
Templates that go with it
Account audit template
A free ad account audit template as a CSV and a Markdown file: one row per finding, with evidence, severity, a named owner and a due date.
Client handover template
A free client handover template as a CSV and a Markdown file: one row per item, with where it lives, who verified it, and what breaks if it is missed.
Creative brief template
A free creative brief template as a CSV and a Markdown file: one row per asset, with the hook, the single message, the proof, the specs and what to avoid.
Related reading
Questions
Put frontier AI to work on every ad account you run.
Tempio connects your ad accounts into one workspace and hands your own AI the numbers and the tools. Every change it writes is a draft until you approve it, or until a rule you wrote does.
Request early access- Read and draft by default. Approve is a separate permission you grant.