Finding cost-effective solutions for your backend needs is paramount to success, and there’s quite an ample spectrum of ready-to-use, scalable, and robust backend for your apps. But how do you choose?
Gather the ingredients of your project requirements and be ready to match them against our comparison, as you’re about to learn which backend services will be your solid partners in the race of digital transformation throughout 2023 and 2024.
We created this article in partnership with AppWrite. Thank you for supporting the partners who make SitePoint possible.
What Is Backend as a Service?
You can think of backend as a service (BaaS) as an approach where you only own code that creates critical business value, while you let external engineering teams take care of your platform.
Using BaaS, some of your biggest concerns completely disappear:
- no server maintenance
- no setting up databases
- no wrangling APIs
A solid BaaS provider — also known MBaaS, for mobile backend as a service — takes care of all these laborious tasks in the backend, by seasoned professionals who eat, breathe, and sleep this stuff — so that you can focus on the actual development of your idea.
What BaaS Features Should You Look For?
Let’s look at some of the things you should definitely look for in a BaaS provider.
One thing doesn’t get acknowledged enough: it might not seem like it, but authentication is hard, very very hard. So, ideally, your BaaS provider should offer top-tier services to manage users along with their identities.
Consider features like support for social login options, multi-factor authentication, password recovery, and the like.
Imagine a garden that hydrates itself every time it’s thirsty (boy do I love that analogy). This is what a real-time database does for your app: it allows data to be instantly updated across every single user of your application.
This is a huge time saver and essential for chat applications, audio streaming apps, online games, and more.
Hosting and file storage
Reliable and flexible file storage and hosting are essential for the seamless functioning of your app. Whether you’re storing images, videos, or other types of data, you need things to be fast and secure.
Additionally, look for CDN (content delivery network) integration, as well as edge deployment, which ensures lower latency and superior user experience. (And being free doesn’t hurt either.)
Scalability and security
You’re designing your app with growth in mind, right? So, your BaaS had better believe in your dream too. Nowadays, your BaaS provider will hardly have any problem handling your growing traffic, and the limitations will more likely be related to lack of certain features (APIs and the like).
On the other hand, security is paramount. Look out for things like SSL enforcement, database encryption, secure APIs, and so on.
Business moves forward on the wheels of progress, driven by the diesel of data. So why shoot in the dark when you can have a clear target in sight? Rounding up the list, it would be a nice-to-have add-on (when not a dealbreaker) if your BaaS also offers a good set of analytical tools.
This will help you gain valuable insights about your audience, facilitating data-driven decisions for future planning and model adjustments.
Your BaaS provider needs to be flexible. It should be flexible enough to adapt to changing needs, flexible enough to be integrated with existing and legacy code, and flexible enough to fit the skillset and workflow of existing engineers.
Top BaaS Providers in 2023
Let’s now go through our choice of top BaaS providers.
AWS Amplify aims to reduce the complexities of Amazon Web Services (AWS) for web and mobile deployment — which, of course, integrates well with other AWS services to widen the spectrum of functionalities.
Amplify has a fine documentation hub and it offers a dramatic improvement for the user experience over the regular AWS, especially for novice users. But it’s still accessed from the same horrifically bloated console as AWS, and the workflow isn’t as straightforward when compared to that of Firebase or Netlify. And you’ll still need a credit card just to open an account.
Google Firebase is the BaaS powerhouse that offers lots of services such as Firestore and Crashlytics, and it includes production-ready integrations and extensions by Google and other third parties. It also has an extraordinary YouTube channel.
While the Firebase’s backbone lies on top of the Google Cloud Platform (GCP), the Firebase console is a standalone interface that’s way easier to use than that of the GCP. However, you can still access and tweak some Firebase deployments through the GCP console, should that be your poison.
Netlify coined the term Jamstack and positioned itself as the place to go for all-things-static, batteries included — such as instant builds, worldwide CDN, free SSL, CLI tool, on-click rollbacks, and more. And while some services admittedly come with various limitations, Netlify also has some power features that not even Amplify or Firebase provide, such as an Edge network.
But what really separates Netlify from the rest is that it went the extra mile in order to make things easy to use and maintain. Need to host a static site? Just drop it here and it’s online. Want automatic updates? Link a repo and just push a commit.
Backendless and Xano: the No-Code Contenders
Aside from a full BaaS solution, these platforms offer an app building experience that could ease the road for non-technical entrepreneurs.
Backendless boasts a flexible API service, a visual application builder, a real-time database, and a robust user management, among other things. The system allows developers to bundle different features together to build custom backends for their applications.
Xano offers developers a complete no-code solution to building API backends, while retaining the capability to use custom scripts where needed. Its intuitive interface lets developers focus solely on the logic of their applications without worrying about the underlying backend infrastructure.
Interlude: BaaS “Provider” … I See Trouble
With BaaS providers, it’s all fun and games, until …
- Pricing scales up (big time). BaaS can be affordable at low levels of traffic. But as your app scales, costs can cause heart palpitations, suddenly making the DIY approach more appealing. Also, depending on the provider, migrating to another service can be a painful and costly process.
- Their limitations are yours. While these services offer a broad range of features, edge cases might not be covered, or the service might not perfectly adapt to your specific needs. If your project requires a more bespoke configuration, or niche features, you might not be able to hack your way through the BaaS.
- You’re operating within their ToS … until you’re not. Let’s be clear: you’re at the mercy of your provider’s whims, and the second they don’t like you (for whatever the reason, justified or not) they can boot you off.
So you see, vendor lock-in is a thing. But there’s a way you could deploy your backend to any cloud service provider, switch from one provider to another, or even provision your own bare-metal servers — while somehow still accessing complex infrastructure with ease, while also being more in control. Enter open-source BaaS frameworks, which we’ll cover next.
Top Open-source BaaS Frameworks in 2023
If the paragraphs above left you with a problem, those below will provide the solution! Let’s look at our favorite open-source BaaS frameworks.
Appwrite was founded in 2019, emphasizing data privacy and security, and providing features like end-to-end encryption to ensure that sensitive user data remains protected.
Of course, it’s not only security and privacy that they offer. From the Appwrite docs:
While the project started with a small team and community, its popularity and adoption have been steadily increasing. At the time of writing, it’s the second most starred GitHub project in its category), making it a compelling alternative for developers seeking a serverless backend solution that’s open-source, flexible, and extensible.
Appwrite also recently announced the public availability of Appwrite Cloud, so you can now register and start using it for free (premium features apparently coming soon). The service — still in beta — is currently receiving feedback via Discord.
Created by Parse, Inc. in 2011, acquired by Facebook in 2013, and open-sourced in 2016, the Parse Platform provides data storage in JSON format, user management, file storage, push notifications to send real-time updates and messages to users on iOS and Android devices, cloud functions, analytics, social integrations, a real-time database called LiveQuery, and a dashboard.
These functionalities are available by integrating a Parse SDK into your mobile or web applications. Developers can then host their Parse Server on their own infrastructure or use third-party hosting services, such as AWS, Heroku, and so on.
Supabase not only offers the basic services mentioned above, but in some instances, it delivers functionality that not even the tech giants offer, such as fine-grained user roles and permissions, edge functions, and vector embeddings, to name a few.
As the most starred project on GitHub in this section, Supabase has gained a lot of traction in the developer community and had been well-received as a powerful alternative to Firebase for developers looking for more control and flexibility.
However … most people use the fully managed version, as self-hosting Supabase is a fairly cumbersome process that doesn’t even ship all of its features — which sort of defeats the lock-in vendor situation we wanted to avoid in the first place, right?
PocketBase: the underdog
PocketBase is a mobile-first “1-file” BaaS solution that’s getting the DevOps community quite excited, for its minimalistic yet effective approach, and for being deployable via one single executable file. Yeah, you heard that right.
PocketBase is quite remarkable:
- It’s based on the Go language (which usually equates to being fast).
- It uses SQLite with real-time subscriptions. (Yes, no RDMS, no NoSQL either!)
- It still delivers and scales in production!
It also boasts built-in authentication management and file storage. This lightweight underdog is certainly making big strides. Just keep in mind that it’s still in early-stage development (v0.17.1 at the time of writing).
Backend management has been simplified a great deal, to everyone’s benefit, abstracting complex backend tasks while also providing robust, scalable, and generally cost-effective solutions.
Back to what we said at the start, go over the ingredients of your project: consider pricing at the very beginning, and as you scale, assess your technical requirements now and in the future, your needs for further integration (such as GCP, AWS), and check them against some BaaS providers.
Maybe that will call for an all-in-one proprietary solution, or maybe you’d be better off deploying an open-source alternative and being more in control.
Either way, hopefully now you’re more acquainted with the backend as a service landscape and better equipped to make a good choice in your development journey.