The Stream Blog

Thoughts on Layer’s API Shutdown

Over the past days, we've had customers inform us that Layer is shutting down. These disgruntled Layer customers are coming over to Stream. The surprising announcement of the shutdown of their API on October 30th and comes after we did a comprehensive post about chat pricing.

However, as a developer, it annoys me to see a company get bought up and then have their product shut down in such a short amount of time. All those customers placed their trust in a product, a team, and a vision. Shutting it down, especially so soon after acquiring it, seems and feels like a betrayal to those customers. I personally feel that by acquiring a company and customer base, you have an ethical obligation to do everything you can to continue to service those customers, or at least provide a nice exit strategy for them.

For context, here’s the full email from Layer:

We are Sunsetting the Layer Platform

We will be sunsetting the Layer Platform and API on October 30th, 2019.

The platform, features, and functionality of our service will continue with no change from what it is today until that date, including access to export your data.

After October 30th, 2019, the Layer Platform and all services associated with Layer will be shut down in their entirety.

Our priorities are to maintain system uptime and ensure you are able to move off the platform as seamlessly as possible. No features or updates to our SDKs will be published and bugs not related to service uptime or core functionality may not be resolved.

There will be no part of Layer online past this date and no option to continue leveraging the Layer backend services. Similarly, there is no way to take the Layer backend service and self-host it or for us to provide it to you.

Why are we sunsetting the Layer Platform?

1) We do not have a team in place to properly diagnose and resolve the volume of bugs and issues that are arising from our customer base.

2) We do not have a team in place to keep our SDKs up to date, the reality is that critical bugs and failures that we can not resolve are inevitable, sooner or later.

3) While the security built into the Layer platform and organization very much persists, we do not have the team in place to adequately assist you in completing vendor audits or providing verifications as needed.

4) Our key hire running all server operations and infrastructure passed away suddenly and unexpectedly very recently. While we have plans to get additional help there for the remainder of the Layer service, we do not have a sustainable path to ensure system uptime and reliability long term.

5) Barring all of the above, Layer infrastructure costs are both very high and very fixed. We are currently operating the Layer platform at an unsustainable loss.

Closing things Out

On the business side, we definitely messed up and have learned a lot in the process. I know this likely puts you in an extremely tough position and I apologize that I did not have better news to share with you.

I also recognize the timeline is very tight, but it is that way for our mutual safety. What I would not want to happen is that I say we can continue to support you for 6 months and then 4 months from now, we have a critical outage that we can just not resolve with our team. That would put us both in a much, much worse position.

If I can assist in recommending a competitive service, please let me know the use-cases that are most relevant for you.

Thank you,

Shaun VanWeelden
Head of Layer

Migrating from one chat provider to another is rather cumbersome and expensive. Stream is trying to make it as easy and affordable as possible and offers a fully automated import of Layer data. Have a look at this Github Repo that explains how to do your export and Layer migration. So, in theory, you can migrate in a couple of days. Three months feels like an awfully short time though. The dev teams might be busy with other projects, and perhaps they aren’t even actively working on some of these apps.

When Parse shutdown there was at least a clear migration path to competing services. They also provided an open-source solution. It makes sense that Layer doesn’t do that since their core product seems to have a lot of performance, cost and stability issues. Still, a prescribed path for migrating to other services would be ideal.

From the outside you wonder if the shutdown of Layer is caused by chasing hypergrowth. Layer raised $29.5 million and initially started out selling their product to developers and product owners. Once they found out that they couldn’t create the hyper-growth that VCs look for, they pivoted towards a more customer support/marketing vertical. Perhaps many of the technical debt and cost issues with their infrastructure could have been avoided with a slightly less aggressive growth strategy.

This shutdown reminded me a bit of the Parse story, or the Keen and Travis acquisition where most/all of the dev team were replaced.

Here’s a pledge from Stream, as long as I can do something about it we will not:

  1. Raise overly large funding rounds which put the sustainability of the company at risk if crazy growth targets are not hit
  2. Sell to companies that will shut down the product or strip down the development team

Now, I don’t want to be overly harsh with these companies. Sometimes you just don’t have any good options on the table. Especially in this case with one of Layer's team members tragically passing away. There are always events that you can't anticipate. With that caveat in mind, my co-founder Tommaso and I will do our utmost to focus on sustainable growth and ensure that the APIs continue to be available.