🐙
Freebackenddatabaseself-hostedopen source

PocketBase packs a full backend-as-a-service into one portable Go executable: an embedded SQLite database, realtime subscriptions, built-in auth (including OAuth2), file storage, and an admin dashboard. It's a popular lightweight alternative to Firebase or Supabase for indie projects and prototypes that don't need a hosted platform. MIT-licensed, 60,000+ GitHub stars.

What is Pocketbase?

PocketBase packs a complete backend into a single Go executable. Inside that one file you get an embedded SQLite database, a REST API generated over your collections, realtime subscriptions so clients receive changes as they happen, built-in authentication including OAuth2 providers, file storage with image thumbnails, and an admin dashboard for managing schema and records. Deployment is copying a binary onto a server and running it, which removes the usual stack of database, API layer, auth service and object storage that a comparable setup would otherwise need. Client SDKs let a frontend talk to it directly, so simple applications need no server code of your own at all. It is MIT licensed and widely used as a lightweight alternative to hosted backend platforms. The tradeoff is inherent to the design: one process on one machine with an embedded database is simple and fast, but it is not a horizontally scaled, multi-region architecture.

Who is Pocketbase for?

This is the right tool for indie projects, prototypes, internal tools, side projects and small production apps where the data fits comfortably on one machine and you would rather ship than configure infrastructure. It is particularly good when you want auth, storage and realtime without stitching three services together, and when you want the whole thing to run on a cheap VPS you fully control. It also makes a strong local development backend because there is nothing to install. Look elsewhere if you need multi-region writes, heavy concurrent write throughput, or managed operations with an uptime guarantee, since a single binary over embedded SQLite is deliberately not built for that shape of load.

How does Pocketbase compare?

Dub is the closest match in operating model, an open-source product you can self-host or use hosted, but it solves a specific job in link management and analytics rather than giving you a backend to build on. Papercups is similarly a finished application, open-source customer chat, and belongs in your stack next to PocketBase rather than instead of it. Hoppscotch is the tool you would actually pair with PocketBase day to day, an API client for exercising and debugging the endpoints PocketBase generates for your collections. The distinction to hold onto is that PocketBase is a foundation you build your own application on, while the others are applications you deploy and use.

Compare with: Dub, Hoppscotch

Pocketbase pricing

The catalog records PocketBase as free. It is MIT licensed and there is no vendor, no paid tier and no license charge, which also means no support contract to buy. Your costs are hosting and operations: a small server is usually enough given the single-binary, embedded-database design, plus disk for uploaded files and a real backup routine, because your entire database is a file on that machine. Budget your own time for upgrades and for security hardening of the admin interface. The permissive license makes it straightforward to use inside commercial products.

Notes

No notes have been added for this tool yet.

Pocketbase FAQ

Can PocketBase handle a production application?
Yes for small to moderate workloads that fit on a single machine, which covers a large share of real applications. Its embedded SQLite design favors simplicity and read performance over horizontal scaling, so evaluate write concurrency and availability requirements honestly before choosing it for something business-critical.
Do I need to write backend code with PocketBase?
Often not. It generates a REST API over your collections and provides auth, realtime and file storage out of the box, so a frontend can talk to it directly through the client SDKs. For custom logic you can extend it with hooks or use it as a Go framework.
How do I back up a PocketBase instance?
Because the database is an embedded file alongside your uploaded assets, backups mean copying that data directory off the machine on a schedule, ideally with the built-in backup facilities rather than a raw file copy during writes. Test a restore before you need one.
Browse all Open Source