The compact naming standard you can apply this afternoon
Use a short, consistent internal name (API name) plus a human‑friendly label. Internal names are for integrations and automations; labels are for people. Keep internal names lowercase, underscore separated and limited to ~40 characters.
Use a simple three‑part internal pattern: <type>__<purpose>__<mode>
- type: txt, sel, dt, num, bool, ref (e.g. sel for dropdown).
- purpose: a 1–3 word noun showing intent (lead_source, lifecycle, status).
- mode: ro (read‑only/system) or rw (writable/manual). Example: sel__lead_source__ro or txt__account_notes__rw.
For dropdown values use a stable code + label convention. Store a short canonical code (<=10 chars) and a display label (<=50 chars). Use a visible separator in your mapping sheet (e.g. paid_google | Google Ads) so integrations consume the code and UIs show the label. This pattern translates across HubSpot, Salesforce, Marketo, Pardot or simple spreadsheets.
Migration and rollout checklist (quick, safe steps)
- Audit: export current field names and every dropdown's unique values from each system and spreadsheets. Keep a copy before changing anything.
- Map legacy → canonical: build a two‑column sheet with legacy value on the left and canonical code on the right; add a third column for the display label. Resolve obvious duplicates and spellings.
- Add validation lists: create the new dropdown (or separate canonical column) and populate allowed codes; keep the old field live for a short overlap.
- Feature‑flag the automation: point workflows at the new canonical field in audit or dry‑run mode where possible; use a probation flag so new/changed records are excluded until verified.
- Pilot then ramp: pick a low‑risk segment (e.g. Fareham leads or South Coast test accounts), run the sync for 24–48 hours, then roll out wider after owner signoff.
Examples, rollback tips and cross‑platform notes
Example fields (internal_name → display):
- sel__lifecycle__ro : CODE values like MQL | Marketing qualified, SQL | Sales qualified, CUST | Customer. Keep codes short and stable.
- sel__lead_source__rw : Values like organic_web | Organic web, paid_google | Google Ads, referral | Partner referral. Map old values to these codes during migration.
- sel__status__rw : Values like new_lead | New, in_progress | In progress, closed_won | Closed − won, closed_lost | Closed − lost.
Spreadsheets: keep two columns: canonical_code and display_label. Point integrations to canonical_code and use display_label only for human reports.
Rollback and small‑team recovery tips:
- Snapshot exports: before cutover export the field and value lists (CSV). Keep a copy of the mapping sheet and a timestamped backup of records you change.
- Quick kill switch: have a simple toggle (a workflow owner, feature flag or a boolean field) to route automations back to the old field or pause them entirely.
- Fast revert: if problems appear, stop automations, bulk copy old values back from your export, and re‑open the change after fixes; aim to contain the change window to a few hours when possible.
This standard is intentionally small so a two‑or‑three person team in Fareham or elsewhere on the South Coast can apply it in an afternoon and avoid common automation breakages; if you want a short handover or help mapping legacy values to canonical codes, Optira can help — and we often start with a one‑page audit and mapping worksheet.
For practical support on aligning field names and values with your local processes, see our CRM & marketing data optimisation (Fareham) page: CRM & marketing data optimisation (Fareham).