Skip to content

The whole app is free. Licenses are what keep it that way.Licenses keep TablePro free.

Buy a license

TABLEPRO · v0.69.0 · 27 AUG 2026

Every database.
One native Mac client.

TablePro is a free, open source database client for macOS. 29 engines through native drivers, and nothing runs against your database that you have not read first.

macOS 14+ · Apple Silicon and Intel · No account

TablePro on macOS: the orders table open in the data grid, sixty rows deep, with the connection sidebar on the left.
TablePro in numbers: database count, cold start, idle memory, download size, license and latest release.
databasescold_startidle_rssdownloadslicenselatest
299 bundled, 20 on demandUnder 1sCold, to first window~80 MBOne connection, open and idle19,712Across 10 releasesAGPLv3Read the source →v0.69.027 Aug 2026 · 10 in 30 days
databases299 bundled, 20 on demand
cold_startUnder 1sCold, to first window
idle_rss~80 MBOne connection, open and idle
downloads19,712Across 10 releases
licenseAGPLv3Read the source →
latestv0.69.027 Aug 2026 · 10 in 30 days

Measured on an M4 MacBook Pro, macOS 27: cold launch to first window, one PostgreSQL connection open. #1 on GitHub Trending on 23 March 2026.

Databases

29 databases.
One native driver each. No JDBC.

9 drivers ship inside the app. The other 20 download the first time you pick one, signature verified, with no restart.

Twenty six tiles, twenty five drivers: Cassandra and ScyllaDB share one. Underneath are libpq, libmariadb, hiredis, libmongoc, libcassandra, FreeTDS and OracleNIO, with Teradata and Trino speaking their wire protocols in pure Swift.

The workbench

Write SQL, edit rows, commit.
In one window.

Every result is a tab. Every edit queues in memory until you save.

SQL Editor

Autocomplete resolves aliases through JOINs and CTEs. A batch runs in one transaction.

Run
⌘⏎ statement at cursor · ⌘⇧⏎ all · ⌘⌥⏎ uncapped · ⌘. cancel
Rollback
A failed statement is named, and the batch rolls back.
Row cap
10,000 by default, up to 500,000. Your own LIMIT wins.
Vim
Six modes, motions, text objects, registers, marks, macros. :w runs the query.
The SQL editor with a multi-statement query and its result tabs below.

Data Grid

Every column type gets its own editor. Nothing lands until you press Save.

Commit
⌘S saves. ⌘⇧P shows the parameterized SQL first.
Loading
Rows arrive before metadata, and a hidden column is never fetched.
Paging
Past 100,000 rows the pager estimates instead of counting.
Copy as
CSV, JSON, Markdown, IN clause, INSERT, UPDATE
The data grid with an edited cell highlighted and the save control live, the change still only in memory.

AI Assistant

Explain a query, optimize it, or fix one that failed.

Explain
⌘L. ⌘⌥L optimizes. A failed query grows a Fix button.
Apply
Arrives as a diff. Nothing lands until you press Apply.
The AI assistant answering a question in a side panel, with the SQL it generated and a step-by-step explanation.

Six more things you would expect to pay for.

EXPLAIN, visualized

A cost-coloured diagram, an expandable tree, the raw text.

Server dashboard

Sessions, per-engine metrics and slow queries.

Users and roles

Grant and revoke down to a single column, without writing GRANT.

Quick Switcher

Fuzzy search across tables, queries and history, most-used first.

CSV inspector

Open a .csv or .tsv as a document. No import step.

Backup and restore

PostgreSQL and Redshift dumps, through the existing SSH tunnel.

Open a database and press ⌘⏎.

Download for Mac

Migration

Import your connections from TablePlus or DBeaver.
Passwords, tunnels and SSL included.

The source app does not need to be running. Or point TablePro at a project folder and it reads your .env.

Import sources

TablePlus

Keychain, incl. Setapp

Sequel Ace

Keychain

DBeaver

Config file, any edition

DataGrip

Keychain or c.kdbx

Beekeeper Studio

app.db, incl. SSH bastions

Navicat

Exported .ncx

Cold start, memory, runtime and price.

Cold start, idle memory, runtime and price, compared across TablePro, DBeaver, DataGrip, Beekeeper Studio and TablePlus.
MetricTableProDBeaverDataGripBeekeeper StudioTablePlus
Cold start<1s~8s~10s~3s
Idle memory~80 MB~800 MB1-2 GB~200-400 MB
RuntimeNative (SwiftUI)Java (Eclipse RCP)Java (IntelliJ)Electron (Chromium)Native (AppKit)
PriceFreeFree / from $113/yr PRO$99/yr individual (first year), $10.90/moFree / from $108/yr Indie$99 one device, $129 two

Every competitor figure comes from its own comparison page, which names the version tested. TablePlus is native too, and unmeasured rather than estimated.

Guardrails

Let an agent query your database.
Without giving it your password.

Sixteen MCP tools over your saved connections. The client gets a scoped token, never a credential.

Configuration

claude_desktop_config.json
{
  "mcpServers": {
    "tablepro": {
      "command": "/Applications/TablePro.app/Contents/MacOS/tablepro-mcp"
    }
  }
}

No token in the config. The bridge launches TablePro if it is not running.

Permission levels

Askread only
list_connections · list_tables · describe_table · get_table_ddl
Editadds writes
execute_query for SELECT, INSERT, UPDATE and DELETE. Destructive DDL stays blocked.
Agentadds the tool loop
confirm_destructive_operation. You type “I understand this is irreversible” every time. It can never be pre-approved.

Fresh installs start in Ask.

Works with
Claude Code, Claude Desktop, Cursor, Zed, VS Code, Windsurf, Cline, Continue, Goose, Antigravity and Raycast.
Providersyour own key
GitHub Copilot, ChatGPT, Claude, OpenAI, Gemini, xAI, OpenRouter, OpenCode Zen, Ollama, llama.cpp, MLX, or any OpenAI-compatible endpoint.

Remote access is off by default; turning it on switches on authentication and TLS.

Six levels between you and production.
Set per connection.

Even at the loosest setting, DROP, TRUNCATE and a DELETE with no WHERE clause stop and ask.

At Silent (default), a scoped UPDATE runs without asking. An unguarded DELETE FROM users asks for confirmation — that floor holds at every level.

Safe Mode levels and their behaviour
LevelWriteReadAuth
Silent (default)runsrunsnone
Alertconfirmationrunsnone
Alert (Full)confirmationconfirmationnone
Safe Modeconfirmation and Touch IDrunsTouch ID
Safe Mode (Full)confirmation and Touch IDconfirmation and Touch IDTouch ID
Read-Onlyblockedrunsnone

Read-Only disables the interface, not just the query. A host or database named “prod” raises the level by itself.

Credentials
macOS Keychain, or nowhere: resolved at connect time from 1Password, HashiCorp Vault, AWS Secrets Manager or a shell command.
Network
No account, no login, no cloud service in the connection path.
Getting there
SSH tunnels and jump hosts chained in process. Or Cloudflare Tunnel, Cloud SQL Auth Proxy, or SOCKS5.

Safe Mode is on before you connect anything.

Download for Mac

Pricing

The app is free.
9 features need a license.

Free is not a trial and not a demo. It is the whole app, on every Mac you own, with nothing counting down.

At work
AGPL obligations attach to distributing a modified version, not to using it. No company-size limit.
Who builds it
One person, full time, funded by licenses rather than investors. Buying one is how the next release gets built, and sponsorship goes to the same place.

What a license adds.

Every feature that needs a license, compared across Free, Starter and Team.
FeatureFreeStarterTeam
The whole appEvery section above this oneIncludedIncludedIncluded
Compare & SyncDiff two databases, structure or rows. Read the script first.Not includedIncludedIncluded
Query InsightsWhat you run most, and what got slower.Not includedIncludedIncluded
Result ChartsBar, line, area and scatter, from rows already loaded.Not includedIncludedIncluded
iCloud SyncConnections, queries, favorites and settings across your Macs.Not includedIncludedIncluded
Linked FoldersA Git repo or shared drive, read as live connections.Not includedIncludedIncluded
Encrypted ExportCredentials travel inside the file, under AES-256-GCM.Not includedIncludedIncluded
Environment VariablesWrite $VAR in a field; it resolves at connect time.Not includedIncludedIncluded
Team CatalogPublish connections into the folder your team already shares.Not includedNot includedIncluded
Team LibraryConnections and saved queries through your account.Not includedNot includedIncluded
Mac activationsNo license needed2 Macs5 seats minimum
Priority supportNot includedNot includedIncluded

A license verifies offline on every launch. A 30-day grace period covers a server we cannot reach.

Starter is per person, Team per seat from 5.

Free

$0

Starter

$24/year

or $59 once, no renewal

Everything in Free, plus:

  • All 7 Starter features above
  • 2 Mac activations

Team

$50/year

or $25 once, no renewal

$10/seat
5

Everything in Starter, plus:

  • Per seat, from 5 seats
  • All 9 licensed features above
  • Seats and invites on the web. Passwords are never sent.

7-day money-back guarantee on all paid plans. Refund policy

Sponsors

TablePro takes no funding and sells no data. These companies pay for the time. Become a sponsor