# 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 left sidebar holds navigation, your favorites, and your databases. The main panel shows whatever you open: a chat with the agent, a notebook, a Dive, or a Flight. In a notebook, query results and the Column Explorer sit next to the SQL editor.

![MotherDuck UI with a notebook open: the sidebar, a notebook cell with a query, the results grid, and the Column Explorer](../img/screenshot_ui.png)

1. **New…**: upload files, connect cloud storage or other sources, and create a chat, notebook, Dive, Flight, or database.
2. **Navigation**: list pages for Chats, Dives, Notebooks, Flights, Guides, and Databases.
3. **Favorites**: databases, shares, notebooks, and Dives you pinned. See [Object explorer & Favorites](#object-explorer--favorites).
4. **Attached databases**: the database, schema, and table tree. The **Recents** tab next to it lists what you opened last.
5. **Organization menu**: Settings, billing, the command menu, and log out. The Duckling icon next to it opens **Settings → Ducklings**.
6. **Run menu**: run the cell, or switch it to [Instant SQL](#instant-sql-write-sql-with-real-time-feedback).
7. **Query editor**: the SQL in a notebook cell.
8. **Results**: the [interactive data grid](#interactive-data-grid) for the cell's results.
9. **Column Explorer**: statistics for each column in the results. See [Column Explorer](#column-explorer).

## 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.

### Enabling Instant SQL

Toggle Instant SQL on or off per cell using:

- The dropdown next to the cell's run button: choose **Instant SQL** instead of **Default**
- 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.

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 to the right of any cell, or press `Ctrl`/`⌘` + `E`, to switch to worksheet view, where one cell fills the editor and results area.

![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.

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

### 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 & Favorites

![Favorites section holding a Weekly reporting folder with a notebook and a Dive, plus a pinned share and database, above the Attached databases tab with a hovered database row showing its star](require('../img/favorites.png').src)

Browse your databases, schemas, and tables in the **Attached databases** tab of the left sidebar. Expand a database to see its schemas and tables. Press `Ctrl`/`⌘` + `B` to collapse the sidebar to a narrow icon bar, and again to bring it back.

Pin the objects you use most to the **Favorites** section of the left sidebar, below the navigation links. Hover a database, [share](/key-tasks/sharing-data/), notebook, or [Dive](/key-tasks/dives/) and click the star. Click the star again, or choose **Remove from favorites** in the row menu, to unpin it.

Use the new-folder button in the **Favorites** header to group related items, then drag rows into a folder or into the order you want. Favorites are personal to your account, so each member of an organization keeps their own set.

### 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.
- **Size**: The Duckling size, or sizes if it changed during the period.
- **Active min** and **Query volume**: How long the Duckling ran queries, and how many it ran, plus an activity sparkline.
- **Wait**: Queries that waited before they started running.
- **Spill**: Queries that spilled to disk, which indicates memory pressure from larger-than-memory workloads.
- **Errors**: Queries that failed.

![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, a table of queries, and the query details panel with the SQL text](../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` | Collapse or expand the left sidebar. |
| `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). |

## Databases and Dives

The left sidebar links to list pages for your databases and Dives, alongside Chats, Notebooks, Flights, and Guides.

### Databases

Click **Databases** in the left sidebar to browse and manage your 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 owner, its shares, and its lifecycle stages.

![Databases page with the detail panel for a database open](img/databases.png)

### Shares

[Shares](/key-tasks/sharing-data/) appear on the **Databases** page. Each database row lists the shares created from it, and the detail panel shows each share's access and update mode. To list only databases that others shared with you, select **Shared with you** in the filter menu.

### Dives

Click **Dives** in the left sidebar to find every [Dive](/key-tasks/dives/) in your organization, including those created by teammates.

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

## Settings

To open Settings, click your organization name at the bottom of the left sidebar, then click **Settings**.

| 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). |
| | Billing | Current plan, payment method, billing email, and invoices and usage. See [Managing billing](/about-motherduck/billing/managing-billing). |
| | Plans | Viewing invoices and selecting a plan each require the corresponding permission, included in Admin by default. |
| | Users | 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/). |
| | Roles | Preset and custom roles, and the users who hold each one. See [Managing roles](/key-tasks/managing-organizations/managing-roles). |
| | Service Accounts | Create [service accounts](/key-tasks/service-accounts-guide/), their tokens, and their Duckling sizes. |
| | Authentication | Single sign-on and SCIM user provisioning. See [SSO setup](/key-tasks/authenticating-and-connecting-to-motherduck/authenticating-to-motherduck/sso-setup) and [SCIM](/key-tasks/authenticating-and-connecting-to-motherduck/authenticating-to-motherduck/scim). |
| | AI Features | Turn AI functions and agent chat on or off, and set the [AI session cap](/about-motherduck/billing/pricing#advanced-ai-functions). |
| **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). |
| | Postgres Endpoint | Connection details for the [Postgres endpoint](/key-tasks/authenticating-and-connecting-to-motherduck/postgres-endpoint). |
| **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). |

### 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)


---

## 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.
