PureSMS - Enterprise for All // 2 min reading time

We improved the performance of the PureSMS API by 67.24% and simplified our service offering - transparently.

Some Background

Until recently PureSMS offered an 'Enterprise Add-On', a service designed to give larger customers with niche or high support requirements an option to guarantee certain service levels for even higher performance.

This unfortunately led to service degradation on our core customer platform (those that didn't have the Enterprise Add-On) as we scaled resources to meet the needs of Enterprise customers.

This wasn't fair.

The problem stemmed from an old-school way of thinking back when the core product was built that customers who pay the most should receive the best level of service. We were still the fastest SMS provider at peak times based on our testing but it was not good enough.

Taking Action

PureSMS (Non-Enterprise) Performance Chart Before & After
Forgive the boring chart but it says the most

Shown above are the performance metrics from our non-Enterprise API before and after our inflection point where we made Enterprise the default on 26th January.

Note: Average Response time for a day was skewed by Enterprise customers sending large bulk sends resulting in the database resource allocator reducing priority to non-Enterprise customers, so a few customers had large spikes in response times rather than an overall decrease in speed.

After weeks of internal testing we concluded that with recent changes to the way the platform worked, we were already built for scale and Enterprise was no longer needed. We could offer the same level of service to all customers, no matter what.

So that is exactly what we did.

The results were that our Enterprise customers saw a performance increase of 1.7% on average as our resource allocator wasn't doing most of the heavy lifting on each request. Not a major improvement.

For our non-Enterprise customers though, the average API performance increase was 67.24%. That's not a typo.

Lessons Learned

We followed our philosophy and won.

We simplified our service offering resulting in performance gains across the board which makes our developers happy. We had one less product to worry about and bill for, which made our Support and Administration team happy. We made everything better for every customer of PureSMS, which obviously made them happy.

The best thing about this is that nobody actually knew we had made this change until we announced it. Enterprise customers kept getting the same performance they always had (even a little better), and non-Enterprise customers got a much better service whilst having to do absolutely nothing.

Our Enterprise customers were also refunded in full for all of their Enterprise Add-On costs to date.

Going Forward

It's no secret that we love performance and even though we're faster now, we don't plan on stopping. Our development team are working on an article about the engineering that goes in to PureSMS to explain how things work and what wins we have had over time.

PureSMS continues to be the best performing SMS API in existence and we work hard to make sure that it always will be.