Short answers to the questions asked most often about managed instances, including serverless SurrealDB Earth instances, with links to the page that covers each one in full.
General
What do I get with a managed instance?
A SurrealDB deployment that SurrealDB operates. SurrealDB handles provisioning, high availability, patching, backups, and version upgrades. See Instances for what that covers, and Self-hosted if you would rather run the server yourself.
How do I get started?
Create an account at studio.surrealdb.com, create an organisation, and deploy an instance. The deploy page selects a SurrealDB Earth instance by default. Neither Earth Free nor the free dedicated instance type needs payment details.
Which cloud platforms can I deploy to?
A SurrealDB Earth instance runs on the Cloudflare network, with its data kept in the residency you choose: worldwide, the European Union or the United States. A dedicated instance runs on AWS or Microsoft Azure, in the regions listed in Create an instance. You choose where an instance runs when you deploy it, and it cannot be changed afterwards.
Which programming languages can I use?
Any language with a SurrealDB SDK:
Any other language can use the HTTP API.
Can I move an existing SurrealDB application onto a managed instance?
Yes. Export from your current deployment, then import into the instance. See Import and export, and Migrating to SurrealDB for a move from another database.
A dedicated migration tool for existing self-hosted deployments is in development. Until it ships, use surreal db export and surreal db import.
Why am I getting an authentication error when connecting through an SDK?
The instance most likely has no user or access method defined yet. Studio authenticates with your own session, so it works before any credentials exist. An SDK needs credentials. See Connect via SDK.
Are my instances backed up?
Dedicated instances are. Automated snapshots run on a schedule, with tiered daily, weekly, and monthly retention. The snapshot frequency and the retention of each tier depend on the instance type, and Scale instances allow a configurable frequency. See Backups and recovery. Earth instances take no snapshots, so export the data to keep a copy. See Things to know on the Earth page.
How often can I increase the disk size of an instance?
Once every six hours, and a change of instance type counts as a storage change. Storage can increase but never decrease, up to the maximum of the instance type. See Storage limits on Start and Configure an instance.
Can I transfer an instance to another organisation?
No. Deploy an instance in the target organisation, then move the data with surreal db export and surreal db import.
Can I delete an organisation?
Not at present. Delete the instances inside it, and it stops accruing charges. See Organisations.
What are the current limits?
Server flags and environment variables cannot be set directly. Instance capabilities control runtime behaviour instead, in Studio or with
surreal cloud instance capabilities.GraphQL is not yet enabled on managed instances.
Free instances become read-only above the 1 GB storage allowance. Existing data stays available, and new writes are refused until you move to a paid instance type.
Request sizes are capped per endpoint. See request size limits.
Where are the documentation and tutorials?
SurrealDB documentation: Guides and reference, including SurrealDB Studio.
SurrealDB University: A self-paced course with hands-on labs.
SurrealDB Book: An in-depth guide to the database.
YouTube channel: Release walkthroughs and tutorials.
SurrealDB Earth
What is SurrealDB Earth?
Serverless SurrealDB on the Cloudflare network. An Earth instance adds compute as its traffic grows and scales to zero when it is idle, so there is no instance type or node count to choose. See SurrealDB Earth, and When to use Earth to choose between Earth and a dedicated instance.
When does an Earth instance scale to zero?
About 60 seconds after its last query, commit or delivered live update. The 60 seconds cannot be changed. A WebSocket that stays open without sending queries does not keep the instance running. See What is measured.
What is a cell, and do I pay for cells?
A cell is one unit of compute that runs part of an Earth instance. Earth starts cells as the load needs them, up to the instance's Cells setting, and a large query can run across several cells at once. Cells are not billed: what an instance costs is its usage, including the active hours of the cells that run. See Cells.
Is there a limit on writes per second?
No. A cell takes about 200 small writes a second before it takes no new connections, and new connections then go to another cell. Every transaction commits in the instance's one commit order, so more cells let more clients write at the same time, but the commits a second do not grow in proportion to the cells. See What cells change.
What is a request on the pricing page?
A request unit. A request can cost more than one: reads cost one unit for each started 16 KiB, and writes cost three units for each started 4 KiB of each record, index entry or graph edge written. See What is measured.
Do HTTP requests cost more than WebSocket messages?
Yes. A request over HTTP costs two request units more than the same request over WebSocket. HTTP requests do not count as connected clients and add no client time. See What is measured.
How are live updates counted?
One live update is one notification to one connection for one matching live query. A change that 50 subscribers see counts as 50. Live updates are a monthly allowance, not a limit on the rate. See What is measured.
What counts as a connected client?
A WebSocket connection that is open, including one that is idle. The limit applies to each instance: 100 on Earth Free and 10,000 on Earth Pro. Open connections also add client time, which is billed in client-months. See Plans and usage.
What happens when an instance has as many clients as its plan allows?
A new WebSocket connection is refused with HTTP status 503 and a Retry-After header. Connections that are already open are not affected. See Plans and usage.
How do clients reach different Earth databases?
Each Earth instance is a separate database with its own endpoint, commit log and storage. Earth does not split one instance's data across several instances. A client connects to the endpoint of the instance it uses, and the client limit applies to each instance, so the application chooses which endpoint each client connects to. See Connect to an Earth instance.
Can I limit what Earth costs?
Earth Pro has no spending limit yet. The Cells setting limits the active hours an instance can use, and capabilities, permissions and a network policy limit what clients can do. Earth Free pauses at its allowance instead of billing more. See Control usage.
Which features are not available on Earth?
Change feeds, Surrealism, JavaScript functions, outbound network access and DiskANN vector indexes. Use HNSW for vector indexes on Earth. See Features not available yet.
How do I move a database to Earth?
Upgrade the source to SurrealDB 4.0, then export each database and import it over an https:// endpoint. See Move a database to Earth.
Security
How secure are managed instances?
Instances run with encryption at rest and in transit, network isolation, access controls, and monitoring, as set out in the Security Addendum. Multi-factor authentication is available through the identity provider you sign in with.
SurrealDB holds ISO 27001, SOC 2 (Type 2), and Cyber Essentials Plus certifications. Further industry-specific programmes, such as HIPAA and PCI DSS, are planned. The Trust Centre holds the current detail.
Instances also inherit the security features of SurrealDB itself, and the security practices the database is developed under. To assess the service for a workload with specific requirements, use the contact form.
How do I report a security issue?
Email security@surrealdb.com. For a vulnerability in SurrealDB itself, submit a report through GitHub Security Advisories rather than opening a public issue.
SurrealDB asks you to:
Disclose the details privately to SurrealDB first.
Include enough information to reproduce the issue.
Keep the details from the public and from third parties until SurrealDB has addressed them.
Limit any exploitation of the vulnerability to what verifies that it exists.
Get permission before you run automated security tools against SurrealDB infrastructure.
In return, SurrealDB:
Acknowledges your report within three business days.
Verifies the issue, and reports progress to you.
Treats your report and any data you share as confidential.
Takes no legal action against you for a report made under this policy.
Credits you in any resulting advisory, unless you prefer otherwise.
How do I configure user authentication?
Connect to the instance, then define users or access methods at root, namespace, or database level. Those credentials work across every interface: the HTTP API, the CLI, the SDKs, and SurrealDB Studio. See Connect via SDK.
Can I use my own encryption keys?
Not at present. SurrealDB manages the keys that encrypt data at rest. The architecture supports customer-managed encryption keys, so they may be offered in future. Use the contact form if you need them.
Can I control who reaches my instances over the network?
Instances are reachable over the public internet by default, protected by the authentication and authorisation defined inside them.
Two additional controls exist:
AWS PrivateLink gives an instance a private network path from your AWS VPC. In
privatemode the instance gets no public hostname at all. It is available in a subset of regions, and the SurrealDB team onboards you to it.Instance capabilities restrict what the engine does: which RPC methods and HTTP endpoints it serves, whether guest access is permitted, and which outbound destinations a query can reach.
Pricing
How much does it cost?
You pay for the compute you consume and the storage you provision. Current rates are on the pricing page. Usage shows what an organisation has accrued so far this month.
Is there a free tier?
Yes, for both kinds of instance. Earth Free includes a monthly allowance of usage, and pauses the organisation's Earth instances when it is spent, keeping their data. The free dedicated instance type carries no charge, and provides limited resources for development and evaluation. It has a 1 GB storage allowance, cannot expand its storage, and pauses automatically after seven days without use.
I am on the free tier. Can I add another instance?
Studio prompts you to add billing information to the organisation first.
How am I billed?
Monthly, for the usage of the previous month. The cycle runs from the first day of a month to the last, and the invoice arrives by email. See Billing.
Are invoices itemised, and is tax identified?
Yes. Enter your VAT or tax identification number in the billing details of the organisation, and it appears on every invoice.
Are there additional fees?
No. All costs are on the pricing page. Prices quoted on the website exclude VAT and sales tax, and applicable taxes appear on the invoice.
Who do I contact about billing?
Email support@surrealdb.com from the address associated with your account, and describe the query.
Legal
What terms govern my use of the service?
The Master Services Agreement governs your use of the managed service. It is on the legal page, together with the compliance and privacy documentation.
Do you serve US-embargoed countries or Russia?
SurrealDB Inc. complies with U.S. regulations on embargoed countries and regions. It currently prohibits use of its products and services in Cuba, Iran, North Korea, and Syria. The prohibition also covers the Russian-controlled regions of Crimea, the Luhansk People's Republic (LNR), and the Donetsk People's Republic (DNR).
SurrealDB uses geoblocking to prevent logins from restricted regions. A regional block can restrict an entire country, which is beyond the direct control of SurrealDB.
SurrealDB Ltd is also subject to Article 5n(2b) of Council Regulation 833/2014. That article prohibits the supply of software for the management of enterprises, or for design and manufacture. The prohibition covers the Government of Russia and entities established in Russia.
SurrealDB reviews these obligations and updates them as regulations change.
Troubleshooting
I cannot connect to my instance
Work through these checks in order:
Confirm the instance is running and not paused. A paused instance is unreachable, and a free instance pauses itself after seven days.
Check the endpoint, namespace, and database against the Connect menu of the instance in Studio.
Check your credentials, and confirm the user or access method has permission on that namespace and database.
On PrivateLink, confirm you connect from inside the VPC. A private hostname does not resolve outside it.
Check whether the failing operation depends on a denied capability, such as an outbound HTTP call.
Check metrics and logs for connection saturation or errors around the time the failures started.
If the connection still fails, raise a support ticket with the instance id.
How do I report a bug or request a feature?
Raise a support ticket, or report a bug in SurrealDB itself as a GitHub issue. For a bug, include steps to reproduce the problem, the instance id, what you expected, and what happened instead. Suggest a feature in the Ideas category of GitHub Discussions, where others can add their use cases, or discuss it on Discord.