Distance Makes the Heart Grow Fonder...But It's Bad for Your Customer Experience!
In an earlier Blog post we discussed the Architecture of Amazon Connect in some detail. We concluded that a contact center does not have to be big and complex or take years and lots of dollars to create. But what we didn't talk about is where you should build your Amazon Connect Instance.
Just in case you're new to Amazon Web Services (AWS), let me introduce some basic concepts before we move on.
Availability Zone (AZ)
Availability Zones (AZ) give customers the ability to operate production applications and databases that are more highly available, fault tolerant, and scalable than would be possible from a single data center. Currently, AWS maintains 69 Availability Zones around the world - and they continue to be added at a fast pace.
Regions are made up of 2 or more AZs. With this arrangement, AWS can provide "as a service" applications such as S3 (simple storage service) and Amazon Connect at a higher level of resilience. And you're able to run your servers across 2 AZs, load balanced and highly resilient.
As the map below shows, regions are located across the world.
With AWS you're able to use services in any region. The typical approach is to use a location closest to your customers so you can provide the best experience.
Amazon Connect is provided "as a service" within the following regions as of October 2019:
The impact on voice quality
Moving data around the world is a vast and complex topic that I certainly take for granted. There are many elements that can impact voice quality such as: headset, computer, local network (wireless/firewall etc.). The distance between your agents and your customers also has an influence.
Distance typically means more latency. Latency is the time between when your customer says something to when your agent heard it.
When using online chat, SMS or social media, latency has minimal impact. If it takes 1 second for a chat message to get to an agent, it's not even noticed. However, 1 second in the voice world creates a very bad experience. 150ms (milliseconds) is the magic number for voice (or 300ms RTT).
For more information on latency, visit: https://www.itu.int/rec/T-REC-G.114-200305-I/en
Impact of high latency
With 150ms being the upper boundary for high-quality conversation, 250ms is the upper boundary before we start experiencing significant quality impacts. This manifests itself in cross-talk. We have all likely experienced this when you talk over one another as you're not sure if the other person has finished their sentence.
This leads to a bad experience and a frustrating conversation.
What can you do?
Plan, plan, plan and test, test, test.
In this Blog we're only covering the placement of an Amazon Connect Instance. However, the other factors involving the headset, computer, local network mentioned earlier are equally as important.
You should fully understand where your customers are located as well as where your agents are. I like to put the Amazon Connect Instance closest to where customers are found, however, there are many factors that may impact this decision.
Some Latency stats
You can get WebRTC stats by using the built-in Chrome tools. Place a phone call to your agent and navigate to chrome://webrtc-internals/ in a new tab. From my office WIFI in the UK, the images below show some test latency graphs (round trip times):
The example shows that from my UK office, on WIFI to Amazon Connect in Frankfurt, I was getting an RTT of 60ms, thus a one-way latency of around 30ms.
Customer location needs to be taken into consideration. You may have edge cases where customers will be traveling on the other side of the world. The latency is going to be higher for these edge cases than your norm. Factor this into your decision/testing.
Where to install Amazon Connect
Use Case 1
Customer Location: UK
Agents Locations: UK
Chosen Region: Frankfurt
Reasoning: This is the local region for EMEA.
Use Case 2
Customer Location: US
Agent Locations: US/UK
Chosen Region: North Virginia
Reasoning: Latency between US and UK regions is around 75ms allowing us to use a single Instance.
Use Case 3
Customer Location: AUS / UK
Agent Locations: AUS / UK
Chosen Region: Sydney and Frankfurt
Reasoning: The latency for a UK Customer to talk to a UK agent via Sydney is too great. Having 2 instances will require planning at the telephony layer and potentially data amalgamation in the back-end.
Some services such as LEX, Transcribe and Comprehend may form part of your solution, however, these may not be available within your chosen region.
Tools to help you
AWS Region Map: https://infrastructure.aws/
Connect Latency Checker: https://s3.amazonaws.com/connectivitytest/checkConnectivity.html
Troubleshooting guide: https://docs.aws.amazon.com/connect/latest/adminguide/troubleshooting.html#common-ccp-issues
Inter-Region Latency: https://www.cloudping.co
Know your customer and agent demographic!
The global infrastructure of AWS provides many great choices for deploying Amazon Connect. With the ability to create an Amazon Connect Instance within a few minutes you are able to rapidly test & learn, with almost zero cost. With a few upfront checks, you can set up your deployment for success.