A sales-dialer migration is three linked changes: application data moves, phone-number and carrier authority changes, and CRM write authority transfers. Treating them as one contacts export risks duplicate calls, lost do-not-call records, stranded numbers, unavailable recordings, broken CRM history, and a source that can still dial after cutover.
This vendor-neutral checklist uses representative official documentation reviewed August 8, 2026. Gangly did not run a vendor export, carrier port, or legal review. Product paths, retention, recording controls, number portability, contracts, and regulations vary. Verify every artifact, number, country, carrier, and target.
Define the application, carrier, and CRM boundary
This page owns migration operations. Use the sales dialer buyer guide for selection, the Nooks exit checklist for one vendor example, and the cold-email checklist for another channel. Selection never proves portability.
Create application, telephony, and CRM/governance workstreams. Freeze source and target tenants, plans, contracts, countries, CRMs, carriers, archive, legal holds, cutoff, port dates, canary, rollback, cancellation, retention, and deletion. Name source, target, telecom, CRM, security, privacy, legal, finance, recording, validation, and rollback owners.
Hard gates are no unauthorized or duplicate call; accepted DNC and consent; approved caller identity; correct critical CRM/media relationships; no unowned number; visible failures; tested rollback; and closure evidence. A high average match cannot excuse one lost suppression record.
Inventory users, numbers, workflow, calls, media, and history
Inventory workspaces, teams, users, roles, permissions, service accounts and SSO; phone numbers, type, country, carrier, owner, service address, PIN custodian, caller ID/CNAM, registration, routing, messaging, spam-label state, emergency configuration, and reputation processes; plus mailboxes/calendars when used.
Add people, accounts, lists, enrichment sources, cadences, steps, call/follow-up tasks, schedules, time zones, scripts, voicemail audio/drops, dispositions, mappings, automations and versions. Inventory attempts, canceled calls, connects, recordings, transcripts, summaries, coaching, scorecards, analytics definitions, dashboards, errors, retries, backfills and audit history.
Include CRM record/activity IDs, objects, fields, owners, relationships, direction, authority, custom mappings and write rules. Include suppression/DNC, consent, recording notice, complaints, holds, retention, deletion, integrations, OAuth, webhooks and extensions. Each row needs stable ID, parent/edges, owner, authority, portability label, format, count, target, test and evidence.
Build a vendor- and plan-specific portability matrix
Assign documented exportable, buyer verified, support/contract dependent, reconstruct, or unavailable. Record documentation/ticket, tenant, plan, role, path/API, filters, range, schema, format, limits, media/history/edge coverage, test date, result and exclusions.
Aircall’s data and recording documentation describes call exports, support requests for older data, and separate recording/voicemail deletion paths. Nooks documents a narrower CSV-origin call-data export. Their differences are evidence that no universal dialer export should be assumed.
Request a manifest for users, teams, numbers, caller IDs, lists, people/accounts, cadences, scripts/voicemail, calls, media, dispositions, tasks, analytics, mappings, suppression/consent, carrier/spam settings and history. Screenshots document configuration but are not complete machine-readable exports.
Map stable IDs, edges, and three authorities
Create edges for workspace→team→user; number→owner→carrier→caller identity; list/cadence→task→person→account; attempt→number→user→task; call→recording→transcript→disposition; call→CRM activity/object/owner; disposition→DNC/follow-up; coaching→call/manager; and integration→credential→scope.
The carrier owns number routing, the dialer owns call initiation and application artifacts, and the CRM owns agreed people/tasks/activity fields. Use the CRM integration guide to define create/update authority, idempotency, retry, conflicts and rollback. A call in two systems is not reconciled until person, account, owner, task, outcome and media edges match.
Normalize numbers to an approved format while preserving raw values. Store vendor, carrier and CRM IDs plus UTC timestamps. Keep passwords, port PINs, OAuth secrets and recording URLs in restricted systems, not the migration register.
Stop dialing and preserve immutable snapshot plus final delta
- Freeze users, numbers, identity, lists, cadences, tasks, modes, scripts, dispositions, mappings, recording and permissions.
- Record active sessions, ringing calls, queues, callbacks, future tasks, pending media, CRM writes, retries and errors.
- Stop new ingestion and enrollment; pause new calls; drain or explicitly cancel in-flight work using a vendor-confirmed order.
- Keep DNC, opt-out, complaint, callback, recording finalization, CRM logging and backfill paths active until final delta acceptance.
- Prove the source cannot originate a call, and record owner, UTC time, and every queue disposition.
Preserve pre-stop snapshot and final delta as raw, immutable files. For each batch record source, filters, time zone, schema, file, rows, bytes, media count/duration, errors, exclusions, requester and SHA-256. NIST’s hash standard confirms file identity, not semantic completeness. Transform only versioned copies and log mappings, rejects, edits, re-encodes, redactions and normalization.
Run number porting and carrier transition separately
For every number record E.164 value, type, country, losing/gaining carrier, legal owner, authorized user, service address, account/PIN/LOA custodian, portability result, voice/SMS capability, registration, caller identity, routing, emergency use, request status, committed date, test and contingency.
Twilio’s official documentation distinguishes porting—control moves—from hosting, where the current carrier remains. This is a representative boundary, not a universal process or timing promise. Verify carrier rules, country, number type, ownership, registrations, service continuity and rejection handling.
Do not cancel the losing service before written completion and inbound/outbound acceptance. Test caller ID, name, routing, voicemail, callbacks, SMS where applicable, after-hours behavior and international access. Preserve an approved contingency until acceptance.
Reconcile application, CRM, media, and carrier populations
- Count reconciliation = accepted artifacts ÷ eligible source artifacts.
- Field fidelity = correct transferred values ÷ eligible tested values.
- Media coverage = accepted playable required media ÷ eligible required media.
- Edge reconciliation = correct user, number, task, person, account, media and CRM edges ÷ eligible edges.
- History coverage = accepted events, errors and versions ÷ eligible required history.
- Number readiness = numbers passing ownership, routing, identity and capability tests ÷ in-scope numbers.
Full-reconcile DNC/consent, active numbers, callbacks, critical calls, held media, permissions and mappings. Stratify by user, team, number, carrier, mode, region, date, result, CRM, media and error. Compare dialer attempts, carrier records, CRM activities and reports rather than assuming identical populations.
Stage one production authority and prove rollback
Build target roles, numbers, identity, lists, tasks, dispositions, suppression, recording rules, mappings and monitoring with calling disabled. Seed consented cases for no answer, connect, voicemail, wrong number, DNC, callback, recording on/off, duplicate, replay, late event, token expiry, owner change, merged contact, carrier rejection and missing media.
Only one system may originate production calls, create callbacks, write dispositions, or mutate the same CRM activity. The other runs disabled golden tests. Approve a small canary only when source dialing is disabled, final delta accepted, DNC complete, number identity ready, critical edges reconciled, target tests pass, monitoring works and rollback is rehearsed.
FTC telemarketing guidance addresses DNC, calling time, caller ID, abandoned/prerecorded calls and records for covered activity. Applicability varies; other rules may apply. Translate counsel’s decision into controls. No dialer makes a campaign compliant by itself.
Rollback stops target dialing first, preserves target-only calls/DNC/callbacks, restores approved source/routing, imports new suppression and blocks task replay. Stop for unauthorized/duplicate calls, lost DNC, wrong identity/association, recording breach, unavailable critical number, invisible failure or untested rollback.
Decommission, revoke, archive, and evidence deletion
After acceptance and hold review, release or park non-ported numbers under written ownership; disconnect CRM, SEP, calendar and data integrations; revoke OAuth, API keys, webhooks, extensions, SSO, carrier portals, service users and support access; rotate secrets; remove allowlists; and test access fails.
Request contract/DPA-governed deletion covering people/accounts, lists, calls, media, coaching, analytics, mappings, DNC/consent, logs, exports, support files, subprocessors, caches, backups, holds and exceptions. Coordinate the CRM archive with the CRM checklist and recording review with the recording guide. Cancellation, porting and deletion are separate events.
Apply the worked example and calculate TCO
This fictional arithmetic is not a vendor result. A team accepts 19,600 of 20,000 calls, 5,760 of 6,000 required recordings, 28,800 of 30,000 critical edges, all 1,500 suppression records, and 95 of 100 numbers. Do not average these: suppression passes its hard gate; five numbers stay outside cutover.
| Control | Calculation | Result |
|---|---|---|
| Calls | 19,600 ÷ 20,000 | 98% |
| Media | 5,760 ÷ 6,000 | 96% |
| Edges | 28,800 ÷ 30,000 | 96% |
| Suppression | 1,500 ÷ 1,500 | 100% |
| Numbers | 95 ÷ 100 | 95% |
TCO = source overlap/exit + target license/setup + porting/carrier + export/support + media transfer + reconstruction + CRM/telecom engineering + registration/spam operations + security/privacy/legal + validation + training + monitoring + rollback + archive + deletion. Use written quotes and measured labor; exclude speculative connect-rate gains.
Print the sales-dialer migration checklist
| Control | Evidence | Status |
|---|---|---|
| Application, carrier, CRM scope/owners frozen | Charter | □ |
| Artifacts, edges, numbers and rights inventoried | Registers | □ |
| Portability labels verified | Docs/tickets/samples | □ |
| Dialing stopped; DNC/finalization active | UTC tests | □ |
| Snapshot, delta and media preserved | Counts/hashes | □ |
| Application, CRM, media, carrier reconcile | Signed report | □ |
| Ports/routing accepted before cancellation | Carrier tests | □ |
| Canary and replay-safe rollback pass | Golden logs | □ |
| Access revoked and deletion evidenced | Closure pack | □ |
Gangly is not a dialer, carrier, number host, or universal migration destination. Evaluate any rep-workflow layer independently after telephony, CRM, recording, suppression, security, rollback and TCO controls pass.