# Audit and fix campaign names against the naming convention, in Google Sheets

> Tier: recipe. Operating recipe: real tool sequence, core rules, known traps.

Writes an account's naming audit to a new Google Sheet with export_naming_audit_to_sheet (one tab per level, each name's verdict against the convention, an editable New name column, an About tab), reads the typed names back with read_naming_sheet as the changes of a rename, previews and applies them with change_campaigns after the person confirms, and writes each outcome back with write_naming_sheet_outcomes.

**Intent.** The naming audit written by Get MCP Ads into a Google Sheet of the workspace's linked Google account, the team's typed names read back, renamed after one preview and one confirmation, and each outcome written into the sheet.

## When to use

- Someone asks for the naming audit in Google Sheets, or wants the team to fix names in a shared Google Sheet.

## When not to use

- Google Sheets not linked to the workspace: give the link the refusal carries, or offer the audit in a Claude Sheet (naming-audit-in-a-sheet) or in the conversation.
- No convention saved and none given: ask for the convention first.

## Sources

Required: any connected source

## Preconditions

- The account is among the chosen accounts, confirmed via list_accounts.

## Inputs

- `account` (required): One ad account of the workspace, on any ad platform.
- `window`: Meta, Google Ads and TikTok: the period whose delivering objects are read, with their spend. Default: last 30 complete days.

## Procedure

1. Call export_naming_audit_to_sheet with the account, the levels, the period on Meta, Google Ads and TikTok, the convention when none is saved, and a new request_id kept for retries. Give the person the link, the Google account that holds it and the counts to fix and to rewrite.
2. When the person says the names are ready, call read_naming_sheet with the sheet's link: it returns the changes of the rename, each with ids, current names, new names and rename details.
3. Call change_campaigns with those changes and no confirm token, show the one preview (each name before and after and its verdict), and apply only after the person confirms, with the confirm token and their reason.
4. Write each item's result back with write_naming_sheet_outcomes (id, ok, new_name, the platform's words when refused), and report renamed and refused counts.

## Decision rules

- **When** A retry after a timeout → **conclude** Repeat export_naming_audit_to_sheet with the same request_id: it answers the same sheet and never writes over names already typed.
- **When** read_naming_sheet skips rows → **conclude** Those rows lost their hidden ID, level, platform or account: say which, and leave them out of the rename.
- **When** More than 12 changes or 100 names → **conclude** Preview them in batches, one after the other.

## Evidence requirements

- The sheet's rows are check_campaign_names' reading at the time in its About tab; the preview reads each new name against the convention again.

## Human approval boundary

- Nothing is renamed by the sheet or by reading it. Only change_campaigns with the token of a preview the person confirmed renames.

## Failure modes

- Reading the sheet as live data: its cells are what was read at the time written in its header, never a link to the platform. Read the platform again before any preview.
- Renaming from read_naming_sheet's answer without showing the change_campaigns preview.
- Writing an outcome as renamed when change_campaigns said refused.

## Output

- **Sheet**: The link, the Google account that holds it, and the counts to fix and to rewrite.
- **Result**: Renamed and refused counts, each refused name with the platform's words, and the outcomes written in the sheet.

## Related

- Skill: [naming-audit-in-a-sheet](https://www.getmcpads.com/skills/naming-audit-in-a-sheet.md)
