# MotherDuck Web UI
> A guide to the MotherDuck Web UI — write SQL with Instant SQL, use AI to fix and edit queries, and explore your data interactively.
## Getting started

To log in to the MotherDuck UI, go to [app.motherduck.com](https://app.motherduck.com/).

:::info
You can also open the web UI directly from the DuckDB CLI:

```bash
duckdb "md:" -ui
```

:::

### Main window

The MotherDuck UI is organized around a notebook-style editor with a database browser on the left and results inspection on the right.

![UI](../img/screenshot_ui.png)

## Instant SQL: write SQL with real time feedback

**Instant SQL** gives you keystroke-fast query previews — results update as you type, with no run button needed.

Under the hood, MotherDuck uses [dual execution](/concepts/architecture-and-capabilities/#dual-execution) to parse and run your query locally first, giving you immediate feedback while full cloud results load in the background. A caching indicator in the cell header shows when results are served from local cache.

{/* TODO: Replace with new "Instant SQL" video once recorded — see .context/video-outlines.md for shot list */}

### Enabling instant SQL

Toggle Instant SQL on or off per cell using:

- The **Instant SQL toggle** in the cell header
- The keyboard shortcut `Ctrl`/`⌘` + `Shift` + `.`

### What works with instant SQL

- **Filtering in real time:** Add or change a `WHERE` clause and watch results narrow instantly.
- **Multi-statement cells:** Click on any individual statement within a multi-statement cell to preview just that one.
- **Window functions:** Window functions are fully supported in Instant SQL previews.

## Fix errors and edit queries with AI

MotherDuck's AI features help you fix broken queries, rewrite SQL in plain English, and generate queries from scratch — all without leaving the editor.

### "Help me fix this broken query" — FixIt

When you run a query that has an error, **FixIt** automatically analyzes the error and suggests an inline fix. Click to accept and re-run in one step.

{/* TODO: Replace with new "Fix errors and edit SQL with AI" video once recorded — see .context/video-outlines.md for shot list */}

By default, FixIt auto-suggests fixes whenever an error occurs. You can turn off auto-suggest and still trigger FixIt manually by clicking **Suggest fix** at the bottom of any error message.

![FixIt manual trigger](../../key-tasks/img/fixit-manual-suggestion.png)

Toggle auto-suggest in **Settings → Preferences → Enable inline SQL error fix suggestions**.

:::tip Free for all users
FixIt is available on all plans, including the Lite plan (with limits).
:::

### "Modify my SQL using plain english" — edit

Select text in your query (or place your cursor anywhere) and press `Ctrl`/`⌘` + `Shift` + `E` to open the **Edit** dialog. Describe what you want to change in natural language:

![Edit prompt](../../key-tasks/img/edit-prompt.png)

Review the suggestion, then iterate with follow-up prompts if needed:

![Edit follow-up](../../key-tasks/img/edit-follow-up.png)

When you're happy with the result, click **Apply edit** to update your query.

![Edit applied](../../key-tasks/img/edit-follow-up-2.png)

### Going further with SQL assistant functions

For programmatic AI access (text-to-SQL, query explanation, schema understanding), see the [SQL Assistant functions](/sql-reference/motherduck-sql-reference/ai-functions/sql-assistant/) reference. These are available in any DuckDB client connected to MotherDuck, not just the web UI.

## Explore your results

### Interactive data grid

Query results load into an interactive data grid where you can sort, filter, and pivot without writing more SQL.

Click the **Expand** button at the top right of any cell to go full-screen on the editor and results.

![Expand cells](../img/screenshot_expand_cells.png)

### Column explorer

The Column Explorer shows statistics for every column in a table or result set — value frequencies, NULL percentages, histograms for numeric columns, and time-series charts for timestamp columns.

{/* TODO: Replace with new "Explore your data" video once recorded — see .context/video-outlines.md for shot list */}

Toggle the Column Explorer with `Ctrl`/`⌘` + `I` or the toggle button at the top right of the results panel.

### Cell content pane

Click any cell in the results grid to see its full contents in the Cell Content Pane.

![Cell content — long text](../img/cell_content_long_text.png)

For JSON columns, you can expand and collapse nodes, copy the value, or copy the key path to any nested field.

![Cell content — JSON](../img/cell_content_json.png)

## Write queries faster

### Autocomplete

Autocomplete suggests SQL syntax, table names, column names, and functions as you type. Turn it off in **Settings → Preferences → Enable autocomplete when typing**.

### Inline docs

Hover over any SQL function in the editor to see its description, parameter types, and return type. Click the **Docs** link in the tooltip to open the full reference.

  ![Image](useBaseUrl('/img/getting-started/ui-inline-docs.png'))

Turn off Inline Docs in **Settings → Preferences → Enable Inline Docs**.

### Format SQL

Press `Ctrl`/`⌘` + `Alt`/`⌥` + `O` to auto-format the SQL in your current cell. When text is selected, only the selection is formatted.

## Navigate the workspace

### Object explorer

Browse your databases, schemas, and tables in the left-hand panel. Toggle it with `Ctrl`/`⌘` + `B`.

### Command menu

Press `Ctrl`/`⌘` + `K` to open the command menu for quick access to actions, notebooks, and settings.

### Notebook and worksheet views

Toggle between notebook view (multiple cells) and worksheet view (single expanded cell) with `Ctrl`/`⌘` + `E`.

### Running queries

The Running Queries page, found under **Settings** → **Running Queries**, lets you monitor and manage long-running queries on your Duckling. For each query, you can see:

- **Query**: The SQL text of the query (click to expand the full statement).
- **Status**: Whether the query is active or has completed.
- **Start time**: When the query started executing.
- **Elapsed time**: How long the query has been running.

This is useful for identifying queries that are taking longer than expected. You can cancel a running query directly from this page.

For programmatic access to active connections and query cancellation through SQL, see [`md_active_server_connections()`](/sql-reference/motherduck-sql-reference/connection-management/monitor-connections/) and [`md_interrupt_server_connection()`](/sql-reference/motherduck-sql-reference/connection-management/interrupt-connections/). For a broader view of query activity across your organization, see the [`RECENT_QUERIES`](/sql-reference/motherduck-sql-reference/md_information_schema/recent_queries/) and [`QUERY_HISTORY`](/sql-reference/motherduck-sql-reference/md_information_schema/query_history/) views.

### Duckling overview

The Duckling overview page, found under **Settings** → **Duckling overview**, gives you an at-a-glance view of activity across every Duckling in the organization over the last 24 hours. Viewing it requires permission to view organization-wide Duckling activity, which the Admin and Builder preset roles include by default. For each Duckling, you can see:

- **Account**: The MotherDuck user or service account the Duckling belongs to.
- **Status**: Whether the Duckling is running normally or has encountered errors.
- **Spills**: Whether queries on this Duckling spilled to disk, which indicates memory pressure from larger-than-memory workloads.
- **Active minutes**: How long the Duckling was actively running queries over the last 24 hours.

![Duckling overview list showing every Duckling in the organization with its account, size, active minutes, query volume, and error counts](../img/duckling-overview.png)

Click a Duckling row to drill in. A bar chart visualizes query activity over time, and a table below lists individual queries. Click a query to open a side panel with the full SQL text, or open a dedicated focus page for a single query.

![Duckling overview drill-down showing summary stats, a query activity bar chart, and a table of top queries](../img/duckling-overview-drilldown.png)

Use the timezone toggle in the page header to switch between UTC and your local time.

This page requires permission to view organization-wide Duckling activity and is built on the [`QUERY_HISTORY`](/sql-reference/motherduck-sql-reference/md_information_schema/query_history/) view, so it has the same ingestion delay — queries from the last few seconds may not appear yet. The Admin and Builder preset roles include this permission by default. For a programmable view of the same data, or a more real-time view of ongoing queries, see the [`QUERY_HISTORY`](/sql-reference/motherduck-sql-reference/md_information_schema/query_history/) and [`RECENT_QUERIES`](/sql-reference/motherduck-sql-reference/md_information_schema/recent_queries/) views.

## Keyboard shortcuts

Use `Ctrl` for Windows/Linux and `⌘` (Command) for Mac. Use `Alt` for Windows/Linux and `⌥` (Option) for Mac.

### Running queries

| Command | Action |
|---------|--------|
| `Ctrl`/`⌘` + `Enter` | Run the current cell. |
| `Ctrl`/`⌘` + `Shift` + `Enter` | Run selected text in the current cell. If no text is selected, run the whole cell. |
| `Shift` + `Enter` or `Alt`/`⌥` + `Enter` | Run the current cell, then advance to the next cell (creates a new one if needed). |

### Editing

| Command | Action |
|---------|--------|
| `Ctrl`/`⌘` + `z` | Undo within current cell. |
| `Ctrl`/`⌘` + `Shift` + `z` | Redo within current cell. |
| `Ctrl`/`⌘` + `Alt`/`⌥` + `o` | Format SQL in the current cell (or selection). |
| `Ctrl`/`⌘` + `/` | Toggle line comments (`--`). |
| `Tab` | Indent current line (in editor). |
| `Shift` + `Tab` | De-indent current line (in editor). |

### AI features

| Command | Action |
|---------|--------|
| `Ctrl`/`⌘` + `Shift` + `.` | Toggle [Instant SQL](#instant-sql-write-sql-with-real-time-feedback) on/off for the active cell. |
| `Ctrl`/`⌘` + `Shift` + `e` | Open [Edit](#modify-my-sql-using-plain-english--edit) for your current cell or selected text. |

### Navigation and layout

| Command | Action |
|---------|--------|
| `Ctrl`/`⌘` + `k` | Open the command menu. |
| `Ctrl`/`⌘` + `/` | Search notebooks, databases and more. |
| `Ctrl`/`⌘` + `b` | Toggle the Object Explorer (left panel). |
| `Ctrl`/`⌘` + `i` | Toggle the Column Explorer (right panel). |
| `Ctrl`/`⌘` + `e` | Toggle notebook/worksheet view for the active cell. |
| `Ctrl`/`⌘` + `↑` | Move current cell up. |
| `Ctrl`/`⌘` + `↓` | Move current cell down. |
| `Esc` | Switch `Tab` to UI navigation mode (reverts on next cell selection). |

## Settings

Settings are found by clicking your profile at the top-left.

| Section | Setting | Description |
|---------|---------|-------------|
| **Organization** | Details | Changing the organization display name requires permission to update it, included in Admin by default. See [Managing organizations](/key-tasks/managing-organizations). |
| | Plans | Viewing invoices and selecting a plan each require the corresponding permission, included in Admin by default. |
| | Members | Viewing members and roles requires the corresponding permission, included in every preset role. Managing them requires separate permissions included in Admin. Invitations for Builder and Explorer depend on the invite policy. Members include human users and [service accounts](/key-tasks/service-accounts-guide/). |
| **My Account** | Preferences | Enable [autocomplete](#autocomplete), inline [SQL error fix suggestions](#help-me-fix-this-broken-query--fixit) (FixIt), and [Inline Docs](#inline-docs). |
| | Notifications | Configure notification preferences. |
| | Ducklings | Manage [Duckling sizes](/about-motherduck/billing/duckling-sizes/#duckling-sizes), [Read Scaling](/key-tasks/authenticating-and-connecting-to-motherduck/read-scaling/) pool size, version information, and Duckling reset for troubleshooting. |
| **Integrations** | Access Tokens | Create tokens for programmatically [authenticating to MotherDuck](/key-tasks/authenticating-and-connecting-to-motherduck/authenticating-to-motherduck). Tokens can have expiry dates. |
| | Secrets | Storing credentials requires permission to create secrets, while removing them requires permission to delete secrets. Admin and Builder include both permissions by default. See [AWS S3](/integrations/cloud-storage/amazon-s3), [Azure Blob Storage](/integrations/cloud-storage/azure-blob-storage), and [Google Cloud Storage](/integrations/cloud-storage/google-cloud-storage). |
| **Monitor** | Running Queries | View and manage active queries. |
| | Duckling overview | Viewing organization-wide Duckling activity requires the corresponding permission, included in Admin and Builder by default. See [Duckling overview](#duckling-overview). |
| **Data** | Databases | Browse and manage your databases. |
| | Shares | View and manage [shared databases](/key-tasks/sharing-data/). |
| **Content** | Dives | Manage your saved [Dives](/key-tasks/dives/). |

### Databases

Under **Data** → **Databases**, viewing every database in the organization requires permission to view all organization databases, which Admin includes by default. Without it, you see databases you own and shared databases you can access. Per-database [storage breakdowns](/concepts/storage-lifecycle#breaking-down-storage-usage) require a separate permission to view organization-wide storage information, also included in Admin by default. Click a row to view its lifecycle stages.

![Databases settings page](img/databases.png)

### Shares

Under **Data** → **Shares**, view and manage the databases you've [shared](/key-tasks/sharing-data/) and the ones shared with you.

![Shares settings page](img/shares.png)

### Access tokens

Under **Integrations** → **Access Tokens**, create and revoke tokens for [authenticating to MotherDuck](/key-tasks/authenticating-and-connecting-to-motherduck/authenticating-to-motherduck) from the CLI, Python, or other clients.

![Access tokens settings page](img/tokens.png)

### Dives

Under **Content** → **Dives**, find every [Dive](/key-tasks/dives/) in your organization, including those created by teammates.

![Dives list page](img/dives.png)


---

## Docs feedback

MotherDuck accepts optional user-submitted feedback about this page at `GET https://motherduck.com/docs/api/feedback/agent`.
For agents and automated tools, feedback submission should be user-confirmed before sending.

URL-encode query parameter values and send a GET request:

```text
GET https://motherduck.com/docs/api/feedback/agent?page_path=%2Fgetting-started%2Finterfaces%2Fmotherduck-quick-tour%2F&page_title=MotherDuck%20Web%20UI&text=<url-encoded user feedback, max 2000 characters>
```

Optionally append `&source=<url-encoded interface identifier>` such as `claude.ai` or `chatgpt`.

`page_path` and `text` are required; `page_title` and `source` are optional. Responses: `200 {"feedback_id": "<uuid>"}`, `400` for malformed query parameters, and `429` when rate-limited.
