VoWifi vs CallKit: Comparing Calling Experiences in iPhone

Where is the «green button» going?

I recently wrote a post about how mixing telco and Web technologies can bring the best customer experience in communications. There, I tackled a specific solution that we have launched as part of our TU Go product in Telefónica in Brazil: the VoWifi integration in iPhone, marketed as VIVO TU Go Wifi Calling.

The point in the article was that native VoWifi integration provided a better experience for calls than the one an app could bring, and this was true when our VoWifi support was launched in March of 2016. But since the iOS 10 launch, Apple offers a new tool called CallKit to application developers that is fundamentally changing the kind of experience a call can have in iPhone. Is the native VoWifi experience still better than the one available for CallKit apps?

This new post analyzes the differences and advantages on each of these approaches. And I must start with a disclaimer: the article will not go into technical implementation differences, it is all about the customer experience.

VoIP Apps in iPhone

Traditionally the experience for VoIP applications in iPhone was clearly worse than what you would get from the native behavior of the phone. Native calls provide a clear full screen notification with a “slide to answer” indication and additional options to manage the call.

Inbound native calling in iPhone

In comparison, VoIP apps could only notifiy calls to users based on the regular notifications used for texts too. Additional options to answer or decline calls could be added by sliding the notification to the left (a somewhat unnatural movement for most users).This was a cumbersome experience, and calls were easy to miss.

inbound native calling for a VoIP app in iOS pre-CallKit

Enter CallKit

But the launch of iOS 10 by Apple has enabled a new technology, called CallKit, to provide VoIP applications a deeper integration into the operating system. Basically CallKit allows apps to provide the same experience as native in many dimensions:

  • Receiving calls in apps now offers the same UI and capabilities than native calls do.
  • It also integrates the calls from VoIP apps in basic OS elements like the recent call list or the address book. Basically now apps are also integrated into the iPhone’s «green button».
  • The OS-level blocked contact list is also applied to calls into the apps, so that users are not bothered by unwanted calls by any means, be it a regular call or via an app.

I will not go in further detail here on all the advantages CallKit brings, as for that I sugest reading the blog post describing CallKit support for the TU Go app. We can simply assume that, except for the differences covered next, the experience provided will be identical to native.

So that is the relevant question here: is there still some experience advantage for the VoWifi capability available for telco operators? Let’s look at those differences.

Service Set Up

The VoWifi capability is available in iPhone for supported operators since it was initially launched by T-Mobile with the iOS 8 release. From then, additional operators around the world have been enabling this capability that allows their customers to use their calls and texts over wifi just by enabling the «Wi-Fi Calling» setting in their phone.

Setting for VoWifi on iPhone

Users don’t need to install any kind of application, they don’t have to go through any additional validation process: just flip a switch. Another relevant aspect is that this process works even if the user has no coverage, they just need Wi-Fi! This is particularly important for VoWifi as one of its main advantages is addressing coverage problems, so activation with no cellular signal is a nice advantage.

Alternatively, VoIP apps require a process that starts by downloading an application, and then some sort of registration or log-in process based on some identity. If that identity happens to be based on a mobile phone number (as WhatsApp, Viber or our own TU Go app do), then you do need coverage in order to complete the process (to receive a PIN via an SMS message, or to identify the line via a 3G/4G data access).

So the set up process is quite different, and I would say slightly better for the VoWifi option, but I don’t think is a big advantage because:

  • Locating the native setting (this one is 3 levels down inside the Settings app on iPhone) is not necessarily simpler for users than downloading an app in this day and age.
  • The set-up process for apps has become well known by users today, so that is not really a barrier anymore.
  • For users trying to address a coverage issue, being able to set up a communication tool without requiring such coverage is clearly beneficial, so this is the main real advantage of VoWifi activation process.


When talking about VoIP it is easy to focus in “Voice” (it is in the name, right?) but a relevant aspect of the VoWifi and CallKit experience deals with messaging. This is due to some design decisions on the Apple calling experience, but also to the fact that most applications offering a voice calling capability also offer a messaging one.

The standards behind VoWifi can support both voice calling and the SMS texting service, so once an operator enables the Wifi Calling service with Apple they can include messaging over wifi in the offering too. And this will be completely integrated in the native experience of the phone, within the Messages app. Users will use their texts over wifi or cellular coverage without any difference of experience.

But this is not that simple for CallKit apps, simply because messaging is not even part of CallKit. Applications that offer messaging capabilities manage it entirely within the app itself, with no integration possible with the Messages app or in the addres book. This creates several issues around the experience; for instance let’s look at the inbound call notification for a CallKit app:

CallKit inbound call — “TU Audio” indication shows it is a call to the “TU” app

The CallKit experience offers the option to reject the call with a “Message”, but this Message is actually unrelated to the VoIP app being used: it will always use the native messaging capabilities in iOS (that means SMS or iMessage). This means that if the user has no cellular coverage, the SMS message will not be delivered to the caller. And it also breaks the experience in the sense that if the caller was using — for instance — WhatsApp to make the call, probably would expect the rejection message to be received by WhatsApp too, but that is not what happens here.

Furthermore, CallKit integration in the OS means that contacts that have been blocked in the native address book are also blocked for calls using VoIP calls. Yes for calls, but since CallKit doesn’t let apps know about blocked contacts before a call occurs, these same contacts are not automatically blocked for other communication attempts like texting. The message offered by Apple when blocking a contact may be confusing because it says “You will not receive phone calls, messages or FaceTime from people on the block list”, but for VoIP apps this is only true for calls.

Blocking a contact in iPhone

There is no information about Apple planning to extend CallKit to messaging at this time, but I expect this will change in future iOS releases so that the app experience can be more coherent than what is offered today.

Branding opportunities

How do customers realize that they are using VoWifi or a CallKit VoIP app when they use their phone? This is another relevant aspect because even with the aspiration for “seamlessness” that comes with VoWifi, in some cases is is important for the user to understand whether the call is using one capability or another. For instance, many operators offer wifi calling at local costing while abroad, meaning the price difference for a call while roaming can be significant if using VoWifi or regular GSM. But since both are offered to users under the same interface, and with no option to choose, it may not be obvious for them whether they are getting the benefit or not.

The only user indication for VoWifi in iPhone is that the carrier name in the status bar shows some additional information, and is present even on plane-safe mode. For instance T-Mobile adds the word “Wifi” to mark when VoWifi service is active.

VoWifi call — notice the “T-Mobile Wifi” indication even in plane-safe mode

This also offers a branding opportunity for operators, that can make the status clearer to customers by using a different identification that may help convey the desired message. That was the choice by VIVO in Brazil, that uses “VIVO TU Go” as indicator so it can be clearly related with their advanced communications offering and tied to the rest of the advantages included in it.

VoWifi experience in VIVO Brazil is presented as “VIVO TU Go”

In fact, this has become a viralization element, as the simple act of sharing screenshots in social media is creating the opportunity for customers to discover and share this benefit. See here how two Brazilian users discuss about what that “VIVO TU Go” in a random screenshot means:

an user shares a screenshot, unrelated with VIVO TU Go
another user asks “What’s that “VIVO TU Go”?”
the user explains the wifi calling advantages from the service

So what about CallKit apps? Is it any better to convey this kind of information? Well, if a user is using a CallKit enabled app, the customization within the app boundaries itself is complete, so developers and service providers can convey any kind of message they want.

But for some specific experiences the degree of customization offered by Apple is at the moment limited. That is the case for incoming calls, that can only be distinguished from native calls by the appearance of application name followed by “Audio”, as can be seen here:

CallKit inbound call — “TU Audio” indication shows it is a call to the “TU” app

That indication is quite subtle, and so quite easy to miss. It requires the user to expect it and know to look for it. But that is also the case for the operator indication that VoWifi does, so not a clear disadvantage here, but rather a shared limitation.

A better opportunity to convey the offering is the ongoing call screen, in which besides de “Audio” label, app developers can provide a fully branded button that allows users to open the full application from that screen.

CallKit call — “TU Audio” indication and “TU” button to open the app

Having a clear actionable element that allows the user to open the application can bring the customer to a fully controlled environment in which the diferential aspects of each value proposition and new communication capabilities can be offered to them. It is an additional step, but that opens the door to anything we can imagine to expand the user's experience.

Flexibility and evolution

And this is a critical aspect for going through the pure native VoWifi approach or pushing the application approach: where do we want to go next?

It is unclear what new app capabilities Apple will enable in future iOS versions, whether via CallKit or by further phone integration, but it seems likely that the capabilities available to developers will keep expanding and this will allow communication experiences to evolve more and more. Lots of examples in the market show that application development is already moving into inventing the future.

On the other hand, while it is also unclear whether Apple is planning to support other standard-backed communication offerings natively in iPhone, it looks less likely. For instance, ViLTE (Video over LTE) support has not been announced and looks unlikely given the prominence Apple provides to FaceTime in their current experience.

So if a communication provider wants to move the value of the communication experience beyond basic calling and into new experiences for their customers, applications in iPhone are a fundamental strategy to consider, as CallKit has significantly improved the possibilities in this space.


So after considering all the different aspects on the VoWifi and CallKit experiences I believe that to bring a pure Wi-Fi Calling offering in iPhone, VoWifi is still providing a better experience, and makes it the best short term approach, specially given de advantages on:

  • Discovery and activation
  • Integration with messaging

But that advantage is small in the face of the CallKit capabilities. And given that access to the “green button” is now open to any application with VoIP capabilities, the importance to increase the value offering to end users will become more critical over time. That, and the expectation that Apple will keep evolving CallKit itself, and offering better and better experiences for developers, sets the clear path that investing in application experiences is the key evolution path to bringing differential value to users on the communications space.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.