Salesforce Open CTI retirement: a plan for sales teams before 2028
Salesforce retires Open CTI on 28 Feb 2028. What stops working, which sales calling set-ups it affects, and a checklist and vendor questions to plan the move.
By the DialSavvy team5 min read
On this page
Salesforce retires Open CTI on 28 Feb 2028, and after that date Open CTI implementations stop working. If your reps call from a softphone that lives in a Salesforce call center, the Open CTI retirement is your deadline to move. If your phone runs as a utility-bar app on the standard API, check it, but you probably have less to do.
Sixteen months sounds like plenty. It is less once you count a vendor review, a pilot with one team, rebuilt call reports and a quarter-end freeze.
What Salesforce announced, with dates
Salesforce has said Open CTI is in maintenance mode for a while. Its Trailhead module says that has been true since 2020. What is new in 2026 is a firm end date:
| Date | What happens |
|---|---|
| Since 2020 | Open CTI in maintenance mode: no new features or enhancements |
| 16 Feb 2026 | Open CTI unavailable for newly created Agentforce Service orgs |
| 25 Jun 2026 | Salesforce publishes the end-of-life knowledge article |
| Until 28 Feb 2028 | Existing orgs keep using Open CTI |
| 28 Feb 2028 | Retirement: Open CTI implementations no longer function |
The Open CTI Developer Guide for Winter ’27 carries the same notice and lists Open CTI as available in Essentials, Professional, Enterprise, Performance, Unlimited and Developer editions. The knowledge article names Agentforce Service orgs. Trailhead lists what stops working “for all orgs”, so a sales-only org with an Open CTI softphone should plan as if it is affected.
What stops working, and what sales reps would notice
Trailhead lists four things that stop working at end of life. Here is how each one shows up on a sales floor:
| What stops working | What a rep or manager notices |
|---|---|
| The Open CTI JavaScript API | The softphone panel stops loading or stops placing calls |
| Call center adapters built by telephony partners | The vendor’s Salesforce package no longer connects |
| Softphone layouts and call center definition files | Settings that decide what a rep sees on a call stop applying |
| Custom CTI logic: screen pops, routing rules, custom code on the API | Records stop opening on a call, and any homemade automations go quiet |
One more to check: click-to-dial. Turning phone fields on a record into clickable numbers is an Open CTI method, enableClickToDial(), in the developer guide. If your reps start calls by clicking phone numbers on Leads and Contacts, find out what replaces that click in your new set-up.
Two kinds of Salesforce phone, and which one you have
Most sales phones inside Salesforce are built one of two ways. The quickest test is in Setup.
- An Open CTI softphone. Reps are assigned to a call center in Salesforce Call Center, and the vendor’s phone connects through a call center adapter. This is the set-up the retirement affects.
- A utility-bar app. The phone is a Lightning component added to the utility bar in Setup › App Manager. It follows the record that is open and writes Tasks through the standard Salesforce API. It does not depend on Open CTI, but ask the vendor to confirm.
Salesforce’s recommended replacement is Salesforce Voice. The developer guide says it is natively integrated with Omni-Channel and Command Center for Service, so it fits teams that route inbound calls and digital channels to the same agents. A team of SDRs making outbound calls from lists has different needs: answer detection, local caller ID, calling-hours checks and fast logging. Choose on that basis.
| If your team… | A sensible direction |
|---|---|
| Runs a service or inbound contact center in Salesforce | Plan the move to Salesforce Voice with your telephony partner |
| Makes outbound sales calls from lists, reports and records | A sales dialer that runs in the utility bar and logs Tasks on the API |
| Does both | Keep the two separate, and make sure both write calls to the same Task fields |
A migration checklist you can copy
Trailhead suggests starting with an inventory. Here is that inventory, plus the steps sales teams tend to forget:
- Users. Who is assigned to a call center today, and how many will need the new phone?
- Numbers. Every direct line, queue and toll-free number in use, and who holds the contract for each.
- Reports and dashboards that read call data: call counts by rep, outcomes, talk time. Note which Task fields each one uses, for example Call Type, Call Result and Call Duration. Our guide to logging calls in Salesforce explains these fields.
- Custom logic. Screen pops, routing rules, Flows triggered by a call, and any code that calls the Open CTI API.
- Click-to-dial. Which pages reps click phone numbers on, and what the replacement is.
- Outcomes. Your disposition list, so the new phone writes the same values. See Salesforce call outcomes for a short list that works.
- A pilot. One team, two weeks, with reports compared side by side with the old set-up.
- A cut-over date well before 28 Feb 2028, outside quarter-end.
An example timeline, working back from the deadline: vendor review in Q1 2027, a pilot in Q2, rollout in Q3, old softphone off by the end of October 2027. That leaves four months of margin for slips. Adjust to your own release calendar.
Questions to ask your dialer vendor
Send these in writing and keep the answers with your migration plan:
- Does your Salesforce product use Open CTI, a call center adapter, or neither?
- What changes for us on 28 Feb 2028, and when will you tell us?
- How do reps start a call: from a phone field, a record action, a list view or a report?
- Which Task fields do you write, and who owns the Task: the rep or an integration user?
- If Salesforce does not respond when a call ends, do you retry, and how do you avoid duplicate Tasks?
- Can we keep our current disposition values, so our reports keep working?
How DialSavvy handles this
DialSavvy for Salesforce is in early access. DialSavvy Phone is a Lightning component in the utility bar, not an Open CTI softphone. It follows the Contact, Lead, Account or Opportunity a rep has open, and reps call from the record or dial list views, reports and campaigns in the DialSavvy dialer. Each conversation is logged as a Task owned by the rep. Click-to-dial on Salesforce phone fields is not part of it.
If the retirement has you reviewing your Salesforce phone, book a demo and bring one of your call reports: we will show you calls logged as Tasks against the same fields.
Sources
- Salesforce Open CTI Retirement: End of Life February 28, 2028 (published 25 Jun 2026), Salesforce (help.salesforce.com)
- Prepare for Open CTI Retirement and Migration Strategies, Salesforce Trailhead (trailhead.salesforce.com)
- Open CTI Developer Guide, version 68.0, Winter '27, Salesforce (resources.docs.salesforce.com)
- Add a Utility Bar to Lightning Apps, Salesforce (help.salesforce.com)
Checked against these sources by the DialSavvy team. How we write. Spotted an error? Email hello@dialsavvy.com.