Auto-detect naming values with AI

Last updated September 17, 2026Auf Deutsch lesen

If your ad naming convention carries parts that depend on the creative, things like Dimensions, Asset Type, Style, or Hook, uplads can fill most of them for you instead of making you type a value on every ad. Some parts are resolved for free with no AI involved; others are answered by your AI provider when you have one connected.

You'll find this in the Naming schema dialog of the Ad Launcher. Load your media, then click the wand button labelled Naming schema in the toolbar of the Ads panel. The dialog holds your schemas (the Account default is the naming convention from your ad settings; New schema and Load preset... add more) and two tabs: Schema, where the parts are defined, and Ad names, where they are resolved for the ads in the batch. See How to override the naming schema for a single launch for the schema side.

Mechanical parts: file type and file name (free, no AI key)

Two kinds of parts are resolved deterministically, with no model call and no cost. They work even if you've never set up an AI provider:

  • File type (Image/Video): a token derived from the file's MIME type: videos print as Video, images as Image (a carousel prints as Carousel).
  • File name parts: a segment marked "Cut out of the file name, no AI". Choose the Capture mode: Split by a delimiter and take a part by number (negative numbers count from the end, so -1 is the last part), or a Pattern (regular expression). This is how dimensions, video length and similar facts reach the name: keep them in the file name, as in summer_hook1_9x16_15s.mp4, and cut them out. The same 9x16 / 4x5 / 1x1 tokens also drive multi-placement grouping.

The File name cleanup options sit next to them: Remove dimensions from name (9x16, 4x5, etc.), Remove brand name from filename, and Use the number at the end of the filename as ID for the Auto-id token.

If the schema has no AI parts, the Ad names tab says No AI segments, the names are ready to apply, and you can apply straight away.

AI parts for custom fields like Style, Hook, Creator Age

Parts that can't be read off the file, Style, Hook, Creator Age, and similar subjective values, are AI segments, "answered per creative by the model". Each one has:

  • An Instruction, for example "the hook in two words" or "UGC or static".
  • Allowed values, comma separated, when the answer must be one of your options (UGC, Static, Testimonial).
  • A Casing rule, so the answer stays naming-safe.
  • A When empty rule: Show fallback prints a fallback text (NA by default) so the slot stays visible, Leave out drops the part without leaving a double separator.

For each creative, the model sees the cleaned-up file name and whether the file is an image or a video, plus the instruction and the allowed values of every AI part. It does not look at the pixels, so descriptive file names make for better answers. If a value is genuinely ambiguous, the model is instructed to leave it empty rather than guess, and the fallback rule takes over.

To enable this, connect a provider under AI provider and API keys. Without one, AI parts print their fallback.

Resolving and reviewing the names

Open the Ad names tab. It lists every ad in the batch with its Creative, its Resolved name, and Notes. The footer shows AI segments cost with an estimate before anything runs.

  1. Click Resolve. One model call answers every AI part for a whole batch of creatives, so a 40-creative launch with three AI parts costs a handful of calls rather than one per creative.
  2. Read the notes: a resolved part shows model said with the raw answer, so you can see what was snapped to which allowed value.
  3. Edit any name by hand right in the table. Edited rows are marked Edited by hand; Reset to the schema name takes one back. Resolve again reruns the AI parts.
  4. Click Apply names. The names land in the Ads panel, and the name shown there is exactly what ships to Meta (see review and edit ad names).

How answers snap to your allowed values

The model never injects free-form text into a part that has allowed values. uplads matches the answer back to one of your exact options, so ugc and "user generated content" both resolve to your UGC option. If the answer matches no option, the part is treated as empty and your When empty rule decides what prints. Parts without allowed values are trimmed and cased according to the segment's casing rule so they stay naming-safe.

Where the cost appears in AI usage stats

File type and file name parts are always free. When a Resolve actually calls the model, the token usage and estimated cost are logged so they show up in your AI usage and cost view, separately from ad-copy generation. If you've set a monthly AI spend cap, naming resolves count toward it; the mechanical parts do not.

Did this answer your question?

Related articles