Phase 1 — Inventory what you actually have
Start here, always, and budget more time than seems reasonable. The two questions are what is provisioned and what is in use, and they have different answers.
- Circuits and spans. Every T1, fractional T1, PRI and analog line, with the carrier, circuit ID, and physical termination. Note whether PRIs share a D-channel via NFAS — it changes your usable channel count.
- Provisioned versus billed. Read the customer service records, not the invoice. Divergence is common in both directions.
- DID ranges. Every number block, including the ones assigned to equipment rather than people — fax, alarms, modems, test lines.
- Signaling arrangements. PRI switch type per span; loop start versus ground start per analog trunk.
- Dependencies. What terminates on each: PBX, contact center, recording, fax server, paging, overhead, elevator, alarm.
Phase 2 — Size the replacement properly
You are not buying 23 channels because you had 23 channels. You are buying enough concurrent sessions to meet a grade of service you have chosen deliberately.
The standard method is a two-step calculation. First determine the required trunk capacity for incoming calls using Erlang B against a stated grade of service — the probability that a caller gets a busy signal. Then calculate the bandwidth needed to carry that number of concurrent sessions.
| Input | Where it comes from | Common error |
|---|---|---|
| Busy hour traffic (Erlangs) | Call detail records — busy hour call attempts × average handle time ÷ 3600 | Using a daily or monthly average instead of the actual busy hour |
| Grade of service | A business decision. P.01 (1% blocking) is a common contact center target | Never stating it, so nobody can check the result |
| Seasonal peak | Twelve months of history, not one | Sizing to a quiet month and discovering it in December |
| Growth headroom | Explicit planning assumption | Being conflated with the grade of service, so both get fudged |
Bandwidth
Concurrent sessions × per-session bandwidth, and per-session bandwidth depends on the codec plus the overhead of IP, UDP and RTP headers. G.711 gives you toll-quality audio at a bit rate comparable to a DS0; G.729 is far more efficient but costs quality, and that cost compounds if the call is transcoded more than once. Decide the codec policy deliberately and write down the resulting bandwidth requirement — including for the WAN links the media will actually traverse.
Phase 3 — Build the feature parity matrix
This is the single most valuable artifact in the project, and the one most often skipped.
List every signaling behavior genuinely in use today. For each: the SIP equivalent, the test that proves it works, and the result. Behaviors that cannot be reproduced get an explicit accepted-gap sign-off from the business owner — in writing, before cutover.
The detailed mapping is in ISDN PRI & BRI. The items that most often produce surprises:
- Calling name (CNAM) — does not carry over; it becomes a separate service.
- DNIS digit count — PRIs are frequently provisioned to deliver four digits; SIP delivers full E.164. Dial plans and contact center routing break on this.
- Redirecting number — Diversion versus History-Info; pick one per carrier and test forwarded calls.
- Transfer — carrier support for REFER varies. Where it is unsupported, media stays anchored on your SBC and consumes session capacity you did not budget for.
- Fax — the classic casualty. T.38 has to be verified end to end, including through the SBC and the carrier. Do not assume, and do not test with one page.
Phase 4 — Numbers, 911, and the things with regulators attached
Number portability
Porting is a project in itself. Ranges port as ranges, and losing carriers are not motivated to hurry. Build the port sequence early, keep the losing carrier's records exactly matching the port request (a single address discrepancy causes a rejection), and plan for at least one rejection cycle.
911 continuity
This is the one that must not slip. Every number that can dial 911 needs a validated registered location that arrives at the PSAP, and the obligation differs depending on whether the endpoint is on-premises and fixed, on-premises and nomadic, or off-premises. Getting this right is covered in E911 & MLTS compliance — treat it as a parallel workstream with its own owner, not a cutover task.
Caller ID authentication
If your organization originates calls in a way that makes it a voice service provider, STIR/SHAKEN and Robocall Mitigation Database obligations attach. Most enterprises reach these through their carrier, but the attestation level your calls receive affects whether they are answered. See STIR/SHAKEN.
Phase 5 — Sequence the cutover
Options, in ascending order of risk:
| Approach | How it works | Trade-off |
|---|---|---|
| Parallel run | New SIP trunks installed alongside the PRIs. Route a small share of traffic across, then increase. | Safest by a wide margin. Costs double connectivity for the overlap period — and it is worth it. |
| Number-range phased | Port DID ranges in tranches, lowest-risk first — test lines, then internal, then customer-facing. | Good balance. Requires the dial plan to tolerate a split state, which needs designing up front. |
| Site by site | Whole sites move on their own dates. | Natural for multi-site estates. Inter-site calling during the split period needs explicit design. |
| Flash cut | Everything moves at once. | Only defensible for very small estates. Rollback is theoretical rather than real once numbers have ported. |
Phase 6 — Set a measurable quality target
On TDM, the circuit works or it does not. On IP, everything can be nominally up while customers say calls sound terrible. That shift is the biggest single change in operating model, and it needs a number attached before go-live rather than after the complaints.
Agree a target MOS, and a latency, jitter and packet loss budget, as acceptance criteria. Measure them from the paths real calls take, not from a lab. See voice quality.
The acceptance checklist
- Feature parity matrix complete, tested, with gaps signed off.
- Concurrent session limit enforced by call admission control, at a number derived from a traffic study.
- Voice quality measured against an agreed target on real paths.
- 911 tested from every endpoint class, with the location that arrives at the PSAP verified.
- Fax tested end to end with multi-page documents, if fax is in scope.
- Failover tested by actually failing something, not by reading the design.
- Rollback trigger conditions documented and an owner named.
- Runbook handed to the team who will operate it.
Related reading
- SIP trunking & SBCs — the destination architecture in detail.
- ISDN PRI & BRI — the behaviors you are reproducing.
- Voice quality: MOS, R-factor & POLQA — setting the target.
Sources
Cutovers go quietly when the parity matrix and the rollback trigger exist beforehand.
Book a call