Campaign Naming Convention Builder
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
The Campaign Naming Convention Builder scans any webpage for text input fields that are likely campaign name fields—based on name, ID, placeholder, or aria-label containing "campaign", "name", "title", or "label". It displays a real-time overlay showing the suggested campaign name built from your user-defined naming format (e.g., "{channel}_{date}_{campaign}_{version}"). The overlay updates as you type, shows the character count, and includes a one-click copy button to copy the suggested name to your clipboard. It can also auto-apply the naming convention when you leave a field empty. This helps marketing teams, advertisers, and campaign managers maintain consistent naming across platforms.
WHERE IT RUNS
It runs as a draggable overlay panel inside the BotGentz extension on any website—ad platforms (Google Ads, Facebook Ads Manager), analytics dashboards, CRM systems, or any page with campaign name fields. It works on any framework (React, Vue, Angular, vanilla HTML).
HOW TO USE
1. Install the free BotGentz extension.
2. Navigate to any page with a campaign name field.
3. Click the BotGentz icon and select "Campaign Naming Convention Builder" from the tools menu.
4. Click "Start Watching" to begin monitoring campaign fields.
5. Type in a campaign field—an overlay appears showing the suggested name based on your format.
6. Click the copy icon in the overlay to copy the suggested name to your clipboard.
7. The tool can auto-apply the suggestion when you leave a field empty (on blur).
8. Configure your naming format and default values in the settings.
9. Use "Apply to All" to apply the convention to all detected fields.
10. Click "Refresh" to update overlays if new fields appear.
11. Click "Stop" to remove overlays and stop monitoring.
12. Drag the panel to reposition it, resize it, collapse it, or press Escape to close.
THE ACTUAL MECHANISM — intelligent field detection with placeholder-based name construction and live preview
This tool scans the DOM for text inputs and textareas using a heuristic detection algorithm: it checks name, ID, placeholder, className, and aria-label for campaign-related keywords. For each detected field, it creates a fixed-position overlay above the field using the field's bounding client rect. The overlay displays the constructed campaign name based on the user-defined format, with placeholders like {channel}, {date}, {campaign}, {version}, {country}, {language}, {product}, and {audience} replaced by values extracted from the field text or user defaults. The tool attempts to parse existing text to seed placeholder values. Event listeners are attached to each field so overlays update on every keystroke. A MutationObserver watches for new fields added dynamically. A one-click copy button is built into the overlay. All settings (format, default values, preview toggle) are stored via GM_setValue and applied globally.
THE PANEL
The panel is fully draggable by its title bar and snaps to the nearest edge of the viewport when released. You can resize it horizontally by dragging the left or right border; the height expands to fit content up to a maximum, with scrolling inside the settings area. A collapse button minimizes the panel to a small floating chip showing "⚙️ Naming Builder" — click it to expand back. Press Escape at any time to close the panel entirely. The panel remembers its last position, size, and expansion state per domain via localStorage.
PLEASE NOTE
- This tool requires the free BotGentz extension (available for Chromium‑based browsers and Firefox).
- The tool detects campaign name fields heuristically—if a field is not detected, it may not be a standard campaign name field.
- The naming format uses placeholders in curly braces. Supported placeholders: {channel}, {date}, {campaign}, {version}, {country}, {language}, {product}, {audience}.
- Date defaults to today's date in YYYYMMDD format.
- No page content is ever sent to any server—all detection and processing happens locally in your browser. Only anonymized usage metrics (panel open/close, format selections) are collected; you can disable this in the extension settings at any time.