Skip to content

Production Postgres. Nothing exotic.

Standard PostgreSQL 16, 17 or 18 on dedicated European hardware — with resources enforced by the kernel, pooled and direct endpoints, and a connection address that stays the same whatever happens underneath.

  • PostgreSQL 16, 17 and 18
  • Pooled and direct endpoints
  • TLS on every connection
Connection detailsacme-prod
PooledDirect
Host
db-8f2a41.fsn1.baltadb.net
Port
25438
Database
app
User
app_owner
Password
••••••••••••Reveal
postgresql://app_owner:•••••@db-8f2a41.fsn1.baltadb.net:25438/app?sslmode=verify-full&sslrootcert=system

These ports are this service’s own. Yours are on its Connect tab.

TLS requiredConfirms your identityRecommended for web and serverless applications

Example view with sample data.

What every service includes.

Dedicated resources

CPU, memory, storage and I/O reserved for your service and enforced by the kernel.

PostgreSQL 16, 17 and 18

New services start on 18. Minor updates are validated first, then applied in your maintenance window.

Pooled and direct endpoints

Connection pooling for web and serverless workloads, and a direct endpoint for full session features.

A hostname that stays put

Your connection address never changes, even when your service moves to new hardware.

Resources

Enforced, not advertised.

Each service runs in its own control group with a hard memory limit equal to your plan. The total across every service on a host, plus the host’s own reserve, never exceeds the memory the machine actually has — so the memory on your plan is memory you can use.

CPU has a hard ceiling per service, and a host’s allocations never add up to more CPU than it has. Your storage is a dedicated, pre-allocated volume on mirrored NVMe, so the space you bought is space that exists.

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.

Versions

Upgrades on your terms.

New services start on PostgreSQL 18, with 17 and 16 available for existing applications. Minor updates are validated in staging first, then applied in your service’s maintenance window.

Major upgrades are yours to start, when you’re ready. Balta runs a compatibility check, confirms your extensions exist on the new version, and takes a backup before anything changes — with a documented way back if you need it.

  • Minor updates validated before they reach you
  • Major upgrades only when you start them
  • A backup before anything changes
Upgrade to PostgreSQL 18acme-prod · PostgreSQL 17
  • Compatibility check passed
  • All 6 extensions available on PostgreSQL 18
  • Backup taken before upgrade
  • Rollback path documented
Start upgrade

Example view with sample data.

Access

A real admin role.

You get a managed admin role that owns your databases, creates schemas and roles, reads every statistics view and installs extensions — without waiting for us. What you don’t get is superuser or host access, which is exactly what keeps your service isolated from everyone else’s.

Install trusted extensions yourself, in any database you own: pgvector for embeddings and AI search, pg_trgm, pgcrypto, uuid-ossp, citext, hstore, ltree, unaccent, btree_gin, btree_gist and more.

extensions.sql
-- Trusted extensions install straight from your own role
CREATE EXTENSION IF NOT EXISTS pg_trgm;
CREATE EXTENSION IF NOT EXISTS citext;

CREATE INDEX customers_name_trgm
  ON customers USING gin (name gin_trgm_ops);

Connections

Two endpoints, one service.

Every service includes a pooled endpoint — PgBouncer in transaction mode, running inside your own isolated resources — for web apps, serverless functions and anything that opens connections fast. And a direct endpoint for the features that need a full PostgreSQL session.

What works on the pooled endpoint and on the direct endpoint
FeaturePooledDirect
Queries, transactions and prepared statementsYesYes
LISTEN / NOTIFYNoYes
Session-level advisory locksNoYes
SET outside a transactionNoYes
WITH HOLD cursorsNoYes
Temporary tables across transactionsNoYes
High connection churn and serverless functionsRecommendedNot recommended

What works on each endpoint. Use the pooled endpoint by default.

Scaling

Grow when you need to.

Add storage online, with no restart and no maintenance window. Move to a larger plan whenever you’re ready: more memory and CPU take effect after a short restart at a time you choose, and if your new plan needs a bigger host, your service moves in an announced window — at the same connection address.

Before you confirm any change, your dashboard tells you exactly what it involves. Nothing is ever changed without you.

Change planacme-prod
Current
Professional
4 vCPU · 8 GiB · 160 GiB
Selected
Business
8 vCPU · 16 GiB · 320 GiB
What this change involves
  • A short restart to apply the new memory and CPU limits.
  • Scheduled in your next maintenance window, or now if you choose.
  • Your connection address stays the same.

Settled by the day on your next invoice.

CancelChange plan

Example view with sample data.

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.

Questions about the service.

Which PostgreSQL versions can I run?
PostgreSQL 16, 17 and 18. New services start on 18, and you choose when to move an existing service to a newer major version.
Can I use superuser?
No. You get a managed admin role that can do almost everything a production application needs — create databases, schemas and roles, install trusted extensions, read every statistics view — without superuser or host access.
Which endpoint should my application use?
The pooled endpoint for most web and serverless applications. The direct endpoint for features that need a full session, such as LISTEN/NOTIFY, session-level advisory locks or migrations that rely on session settings.
What happens when my service moves to another host?
Your connection address stays the same. The move happens in an announced window, and your applications reconnect to the same hostname.

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