Skip to content
Early access is open

Managed Postgres,
fully accounted for.

Production PostgreSQL on dedicated European hardware. Your CPU and memory are reserved for you and enforced by the kernel, your backups are proven by restoring them on a schedule, and you pay one flat monthly price — without running a single server.

  • PostgreSQL 16, 17 and 18
  • From €39 a month
  • No compute units, no egress fees
A Balta locationThree hosts running databases, and a fourth host’s worth of capacity kept free to rebuild any of them. Every host streams its changes continuously to a backup repository in Germany and, separately, to a second repository in France. A badge shows that a restore has been verified.Restore verifiedchecked on a schedule
Hosts running your servicesCapacity kept free to rebuild a failed hostBackups written to Germany and FranceEvery change archived as it happens
Built on software you already trustPostgreSQLPgBouncerpgBackRestLinux cgroups v2Mirrored NVMe

Managed Postgres shouldn't be a gamble.

Most teams choose a database platform on features. They find out what they actually bought later — on the invoice, in the latency graph, or in the middle of an incident.

The bill moves with your traffic.

Compute units, per-query pricing and egress fees turn your best month into your biggest surprise. Finance asks for a forecast; you send them a range.

Your latency depends on strangers.

On shared and burstable platforms, another customer's batch job becomes your slow checkout. You can't see it, and you can't fix it.

Nobody has restored the backup.

A job that succeeds every night proves a job ran. Whether your data actually comes back is usually discovered during the incident.

Balta is built to take all three off the table.

Guaranteed resources

Performance that doesn't depend on your neighbours.

Every Balta service runs in its own control group, with hard limits set in the Linux kernel. The memory on your plan is memory no other customer can touch, and a host's CPU allocations never add up to more than the host actually has.

So the performance you measured in staging is the performance you get in production — at three on a Tuesday afternoon, and during someone else’s launch.

What the Professional plan reserves for you
CPU
4 vCPU, with a hard ceiling
Memory
8 GiB, enforced by the kernel
Storage
160 GiB dedicated volume on mirrored NVMe
Connections
150, plus a pooled endpoint
Databases
25, all included
One host, divided into services with hard limits, and a reserve kept for the host itselfhost reserveBusinessProfessionalStarterStarter
One host, divided into services with hard limits. Part of every host is kept back for the host itself, so no service is ever squeezed by the machine it runs on.

Backups & recovery

Backups you've actually seen work.

Every change your database makes is archived as it happens and written to two independent repositories, in two EU countries — neither one a copy of the other. Then Balta does what most platforms skip: it restores your backups into an isolated environment on a schedule, replays every change, starts PostgreSQL and checks it.

How a change becomes a verified backup: your service hands every change to a separate backup server, which writes it to a repository in Germany and, independently, to a second repository in France. On a schedule, a backup is restored in an isolated environment and checked, and the result appears in your dashboard.every changeconfirmedindependentlyon scheduleresultYour servicePostgreSQL 16, 17 or 18Backup serverSeparate process, own keyRepository 1GermanyRepository 2FranceRestore testIsolated environmentVerifiedResult in your dashboard
How often your backups are restored and checked
Full restore test frequency by database size
Database sizeFull restore test
Up to 50 GiBEvery 7 days
50 to 250 GiBEvery 14 days
250 GiB to 1 TiBEvery 30 days
Over 1 TiBEvery 60 days, plus a monthly point-in-time test

A test also runs within 48 hours of your first backup, and after every plan, storage or major version change.

ProtectionHealthy
Recovery point · Repository 1, Germany14 s behind
Recovery point · Repository 2, France52 s behind
Last verified restore2 days ago
Point-in-time history30 days

Example view with sample data.

  • A full backup weekly, a differential daily, and every change archived in between.
  • Encrypted with a key unique to your service. Your database never holds a storage credential.
  • Keep 7, 30, 90 or 365 days of history. 30 days is the default.

Point-in-time recovery

Undo the bad migration. To the second.

Someone ran the wrong migration. A customer deleted the wrong records. Pick the exact second before it happened, and Balta restores your data into a new service — while production keeps serving everyone else.

Copy back the rows you need, then delete the copy. No overwritten production, no guesswork about which nightly snapshot is close enough.

  • Any second inside your retention window
  • A new service with its own connection address
  • Rewinding production is a separate, deliberate path
Restore to a point in timeacme-prod
Restore point
Mon 21 Sep, 14:02:17 UTC
22 Aug29 Aug5 Sep12 SepNow
Restore into a new serviceRecommended. Production keeps running while you check the result.
Rewind this serviceDiscards later changes. A safety backup is taken first.
Restore into a new service

Example view with sample data.

Data browser & SQL editor

Your data, without a desktop client.

Browse schemas and tables, follow foreign keys, and page through millions of rows right in your dashboard. Write SQL with completion from your live schema, read execution plans as a tree, and save the queries your team runs every week.

acme-prodPostgreSQL 18 · database appAllow writesRead-only
Monthly revenueQuery 2ExplainRun
SELECT c.name,
       date_trunc('month', i.issued_at) AS month,
       sum(i.total) AS revenue
FROM invoices i
JOIN customers c ON c.id = i.customer_id
WHERE i.issued_at >= now() - interval '6 months'
GROUP BY 1, 2
ORDER BY revenue DESC;
Sample query results
namemonthrevenue
Kestrel Studio2026-09-0118,420.00
Aurora Freight2026-09-0112,905.50
Vela Analytics2026-08-019,860.00
Harbor & Pine2026-08-017,312.25
4 rows38 msStatement timeout onRecorded in your audit log

Example view with sample data.

Read-only by default

Writes are switched on deliberately, per session. Nobody drops a table by accident.

Query time limits

Every statement runs with a timeout, so one heavy query can't slow your application.

Its own connections

Editor sessions use a separate budget and never take connections from your app.

Every statement audited

Who ran what, when, and how long it took — in your audit log.

Security & access

Isolation you can explain to your auditor.

  • Every service runs as its own operating-system user, with its own isolated resources and storage volume.
  • A managed admin role for your team — never superuser, never host access.
  • Multi-factor authentication and five team roles, from Owner to Viewer.
  • Revealing credentials, deleting a service or changing payment details asks you to confirm your identity again.
  • When a Balta engineer needs access, they record a reason, the access expires on its own, and you see it in your audit log.
  • TLS is required on every connection to your database.
Audit logLast 24 hours
14:06[email protected] restored acme-prod to 14:02:17 into a new service
11:47Balta engineer accessed acme-prodReason recorded: “Investigating slow checkpoints, as requested in your ticket.” Access expired 13:47.
09:15[email protected] revealed connection credentials after confirming identity
08:30[email protected] changed the plan to Business

Example view with sample data.

No lock-in

Standard Postgres in. Standard Postgres out.

Balta runs unmodified PostgreSQL — no proprietary storage engine, no forked protocol, no extension you can only get here. Moving in takes two commands.

Leaving takes the same two. Or one click in your dashboard, which produces a complete export — even while your account is suspended, and on the day you cancel.

migrate.sh
# 1. Export from your current provider
pg_dump --format=custom --no-owner --no-acl \
  --dbname "$SOURCE_DATABASE_URL" --file app.dump

# 2. Restore into Balta over the direct endpoint
pg_restore --no-owner --no-acl --jobs 4 \
  --dbname "$BALTA_DIRECT_URL" app.dump

Four steps to a production database.

  1. 01
    Choose

    Pick a location, a PostgreSQL version, a plan and how much backup history to keep.

  2. 02
    Reserve

    Your CPU, memory, storage and I/O are reserved on a host before anything is built.

  3. 03
    Build

    Your service gets its own operating-system user, isolated resources and storage volume.

  4. 04
    Connect

    Copy your pooled or direct connection string. Your first backup is already running.

Commitments, in writing.

Every figure here is part of our SLA or our published plans. The reliability figures are measured continuously, per service, and shown in your dashboard.

99.5%
Monthly uptime, per service

Backed by service credits — including when the outage is our provider's fault.

≤ 5 min
Recovery point objective

Monitored continuously and shown for every service.

2
EU countries for every backup

Written independently to Germany and to France, so a problem in one country can't reach both.

€39
Starting price, per month

One flat price. No compute units, no egress fees.

How Balta compares.

Against the three ways teams usually run PostgreSQL today.

How Balta DB compares with usage-based serverless Postgres, hyperscaler managed databases and self-hosting
Usage-based serverlessHyperscaler managedSelf-hostedBalta DB
PricingBilled by compute usageMany separately billed itemsServer plus engineering timeOne flat monthly price
Egress feesVaries by providerTypically chargedDepends on your hostNone
ResourcesShared or burstableVaries by instance typeYours to manageDedicated, kernel-enforced
Restore-verified backupsVariesVariesYou build itAutomatic, in your dashboard
Data residencyVariesRegion-dependentYour choiceDatabases and backups in the EU
Built-in SQL editorVariesVariesYou install oneIncluded

Predictable pricing, from €39 a month.

One price per service, per month, with every database inside it included. No compute units, no per-query charges, no egress fees. Pick the size you need, and change it whenever you outgrow it.

​
Starter

Development, staging and early-stage apps.

€39/ month
vCPU
2
Memory
4 GiB
Storage
80 GiB
Connections
100
Databases
10
Request early access
Recommended for production
Professional

Production SaaS and web applications.

€69/ month
vCPU
4
Memory
8 GiB
Storage
160 GiB
Connections
150
Databases
25
Request early access
​
Business

Growing products with real traffic.

€129/ month
vCPU
8
Memory
16 GiB
Storage
320 GiB
Connections
250
Databases
50
Request early access
​
Performance

Memory-intensive workloads and analytics.

€189/ month
vCPU
8
Memory
32 GiB
Storage
500 GiB
Connections
400
Databases
50
Request early access
​
High Performance

Large, business-critical databases.

€349/ month
vCPU
16
Memory
64 GiB
Storage
1 TiB
Connections
600
Databases
100
Request early access
Larger workloadsArranged with our team, on hardware sized for your service.
Scale
16 vCPU, 128 GiB memory, 2 TiB storage, 800 connections, 100 databases.
€649 / month
Talk to sales
Scale 256
256 GiB memory, 1,000 connections and 100 databases, for memory-bound workloads.
Price on request
Talk to sales
Custom
A service shaped around your workload, beyond the published plans.
Price on request
Talk to sales
Prices per service, per month, excluding VAT. Every plan includes backups, restore testing, the SQL editor and support.Compare every plan in detail

Questions teams ask before they switch.

Something else on your mind? Talk to our engineers.

What exactly is a service?
One PostgreSQL instance with dedicated CPU, memory, storage and I/O, in one location, on the PostgreSQL version you choose. You can create multiple databases inside it, and you pay one flat price per service, per month.
Do you offer high availability?
Each service runs on a single, dedicated node. If its host fails, your service is rebuilt from a verified backup onto capacity we hold in reserve in the same location, and your connection address stays the same. Automatic failover with a standby is next on our roadmap.
Where is my data stored?
Your databases run on dedicated hardware in Falkenstein, Germany. Every backup is stored in two independent repositories — one in Germany and one in France.
How do I move my existing database?
With the standard tools: pg_dump from your current provider and pg_restore into Balta. Our migration guide has the exact commands for each PostgreSQL version, and our engineers will help you plan it.
Can I get my data out?
Any time. It's standard PostgreSQL, so pg_dump always works, and your dashboard can produce a complete export for you — including on the day you cancel.
Is there a free trial?
No. Every service reserves dedicated CPU, memory and storage the moment it's created — capacity no other customer can use. That guarantee is why a payment method is required to start.

Early access is open. Tell us about your workload and we'll reserve your place — and help you plan the move.