Dexie Cloud Subscription Model
Production version of Dexie Cloud is approaching but the final subscription and database management portal is the last piece of a puzzle to get ready before going prod. As the last pieces are being developed, I want to share what’s in it and how the subscription model will work for Dexie Cloud customers and how it can help you rollout your apps using various subscription models for your end users.
I’ve learned about use cases where customers wants various freemium or up-front subscription models for their apps while other customers will just release their app to a dedicated set of users without having any subscription model on their own.
Freemium models for Offline First apps
Unlike traditional apps, Offline First apps share a unique quality — they can function without a server — just that data isn’t backed up or shared with others. This is a perfect opportunity for Offline-First app vendors since their freemium version can offer the app forever as it is — just without sync!
Freemium model A: Subscribe to sync
- End user starts using their app without registering or logging in.
- In order to get the application data synchronized, user need to register, purchase subscription from app developer.
Freemium model B: Full sync during evaluation — subscribe to continue sync
- End user logs in first time (registers) with their app and get a fully functional app with sync during an evaluation period of a certain amount of days.
- When evaluation period ends, their app keeps working the same but without sync. End-user can purchase subscription to upgrade their account and activate sync again.
These two different models fits into different types of apps. I personally believe that the second use case could attract more users because it shows the full potential of the app directly.
Dexie Cloud End-User Management
Based on the use cases above and other feedback I got from customers, we’re building this user-level evaluation model into Dexie Cloud and making it configurable in the management portal — with a dedicated API to programmatically add or upgrade individual users and fully control seats and subscriptions.
App developers can configure their account to put new users into evaluation mode for up to 30 days without them occupying any of your purchased seats until you manually or programatically upgrade individual users. Wildcard matching of email addresses is also possible to configure in order to release your app to people within a set of organisations.
Pausable evaluation users
End-user evaluations can be configured to up to 30 days and you as a Dexie Cloud customer never need to pay for your evaluation users. If an evaluation user starts using the app for a few days and then leaves it for weeks or months, the evaluation will pause (unless you configure it not to). When an end-user evaluation period finally expires the user can still use your app offline (with sync disabled). Of course you can add additional limitations in your app when evaluation expires, but it’s not enforced by Dexie Cloud. I believe this pausable evaluation gives users a more fair experience and hopefully attract more users to try the application out and eventually purchase a subscription from app developer.
End-user production seats
For our service, we use a per-seat subscription model that will cost from approx $12 USD per month for 100 seats. Additional seats are purchased in packs of 100. Customer can choose whether to control the named users individually (default) in order to control cost, or to automatically add seats as needed. The subscription itself can either be set to be the purchased number of 100-seats (default) or set to automatically upgrade/downgrade as the number of seats change.
Seat count
Users are controlled using the management portal or the REST API. A new REST endpoint <database>.dexie.cloud/users (not yet released) will be used to manage database users.
- Users can be of type “eval” or “prod” but only “prod” users occupy seats.
- Users can be added with an “validTo” date, and if so, the seat won’t count after that date, (and the user have to use your app without sync after that date until you update or remove the validTo date)
- A single Dexie Cloud subscription can be shared between several databases from the same Dexie Cloud customer — multiple databases can be connected to a single subscription, allowing to use the same user-ids in different databases and still only occupy one seat per user-id.
- To reduce number of seats, database users need to be actively deactivated or deleted. Seats also reduce if users reach their optional validTo date.