---
title: "A Native ClickHouse Client for Mac That Knows What a Query Will Read"
description: "Browse and query ClickHouse and ClickHouse Cloud in a native Mac app, see what a query will read before it runs, catch sorting-key and partition mistakes, and let your coding agent in without a free hand."
canonical_url: "https://tablestudio.sh/databases/clickhouse"
---

> Index of every page on this site: [llms.txt](https://tablestudio.sh/llms.txt)

TableStudio is a native Mac client for ClickHouse. It tells you what a query will cost before it runs. It catches the sorting-key, partition and type choices that slow ClickHouse down, runs ClickHouse on your Mac, and lets coding agents like Claude Code, Codex and Cursor in under rules TableStudio enforces itself.

<lead-feature icon="i-ph-magnifying-glass" title="Know what a query will read before it runs">

On ClickHouse, "it's only a SELECT" says very little. A careless query can scan billions of rows. Before a query runs, TableStudio asks ClickHouse's own `EXPLAIN ESTIMATE` how many rows and parts it would read. Browsing a wide table only reads the columns on screen.

**Query Insights** reads `system.query_log` for the statements ClickHouse spends its time on. Where a skip index would help, TableStudio proves it with `EXPLAIN WHATIF` before you add it.

</lead-feature>

<feature-cards description="Built for a column store, not bolted onto a row-store client." title="What TableStudio does for ClickHouse">
<feature-card icon="i-ph-shield-check" title="Agents on a column store">

- Agent reads are read-only on the server, with a 30-second limit.
- An agent's change to a production cluster waits in your review queue for Touch ID.
- Rows are saved before an agent changes them, so the change can be undone.
- Take a restore point, a snapshot over HTTP, before anything risky.
- A restore point is one tool call away, so the agent can snapshot a table before it changes it.

</feature-card>

<feature-card icon="i-ph-gauge" title="Query rules for ClickHouse">

- Filters that use neither the `ORDER BY` key nor a skip index.
- A `WHERE` that still reads most of the table's granules.
- Reads from Replacing or Collapsing tables that can return duplicate or uncollapsed rows.
- Substring searches that scan a whole table, and JSON parsed on every run.
- Exact distinct counts with a large memory peak, and async inserts that can lose rows.

</feature-card>

<feature-card icon="i-ph-tree-structure" title="Table design checks">

- Tables with no sorting key, or one led by a near-unique column.
- Partitions too fine, or too big to finish deduplicating.
- `Nullable` columns that cost a hidden extra column.
- String columns that should be `LowCardinality`.

</feature-card>

<feature-card icon="i-ph-heartbeat" title="Cluster health">

- Mutations running for hours, and merges that keep failing.
- Replication queues that are stuck, and replicas offline.
- Distributed inserts that aren't reaching their shards.
- Dictionaries that fail to load, failing refreshable views, and Kafka consumer errors.
- The mark cache hit ratio.

</feature-card>

<feature-card icon="i-ph-table" title="Browse and edit">

- Wide tables stay fast: browsing reads only the visible columns.
- `Enum` columns get a dropdown of their values.
- Edits warn that ClickHouse runs them as background mutations on a shared key.
- Export to CSV, TSV, JSON, SQL, Markdown or Excel.

</feature-card>

<feature-card icon="i-ph-code" title="SQL">

- A column editor that offers `LowCardinality`, `DateTime64`, `Map` and `Tuple`, and keeps `Nullable` out of the default.
- AI that writes ClickHouse SQL and fixes failing queries.
- Plans drawn as a tree, and `clickhouse client` in Terminal with one command.

</feature-card>

<feature-card icon="i-ph-hard-drives" title="ClickHouse on your Mac">

- Create, start and stop local ClickHouse servers, and pick up the ones already running.
- Throwaway sandbox copies of a database, with real rows or none.
- Share a local server through a Cloudflare Tunnel.

</feature-card>

<feature-card icon="i-ph-squares-four" title="Dashboard">

- ClickHouse's own widget packs for health, storage and compression.
- Your own widgets in SQL, from a count to a chart.

</feature-card>
</feature-cards>

## Connecting to ClickHouse Cloud

Copy the HTTPS endpoint and password from your ClickHouse Cloud service and add a ClickHouse connection with them. TableStudio uses the HTTP interface, the same one ClickHouse Cloud exposes, so there's no native-protocol port to open. Self-hosted servers work the same way, directly or over an SSH tunnel.

## Sitemap

See the full [sitemap](https://tablestudio.sh/sitemap.md) for all pages.
