> ## Documentation Index
> Fetch the complete documentation index at: https://docs.datalyr.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Dashboards and analyses

> Arrange saved reports on a dashboard, save chat answers as analyses with the queries behind them, and share either one as a read-only link.

A dashboard shows saved reports side by side over one date range. An analysis is a written
answer from chat that keeps the exact queries behind its numbers. A share link shows a
dashboard or an analysis to someone who has no Datalyr login.

All three sit under **Reports**, in the tabs `Cards`, `Dashboards`, and `Analyses`. They
belong to the workspace, so every member sees the same ones.

## Build a dashboard

<Steps>
  <Step title="Open Dashboards">
    Open **Reports** and select the `Dashboards` tab.
  </Step>

  <Step title="Create it">
    Select **new dashboard** and type a name.
  </Step>

  <Step title="Add cards">
    Select **add card**. Pick a saved report, or create a new one.
  </Step>

  <Step title="Set the range">
    Pick a range in the header. Select **Set as default** to keep it for every member.
  </Step>
</Steps>

A card points to a saved report. It never copies it. Edit the report once, and every
dashboard that shows it changes, along with the `Cards` tab. A report you create from
**add card** also appears on the `Cards` tab.

| From                        | How                                                                         |
| --------------------------- | --------------------------------------------------------------------------- |
| The `Cards` tab             | Kebab menu → **Add to dashboard…**. Pick a dashboard, or **New dashboard**. |
| [AI chat](/product/ai-chat) | **Add to dashboard**, next to `Saved to Reports · Open`                     |

## Arrange the cards

| Action               | How                                                                                                                               |
| -------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| Reorder              | Drag a card. The order changes for every member.                                                                                  |
| Resize               | Card kebab menu → **S**, **M**, or **L**                                                                                          |
| Edit the report      | Card kebab menu → **Edit report**                                                                                                 |
| Remove a card        | Card kebab menu → **Remove from dashboard**. The report stays on the `Cards` tab.                                                 |
| Rename the dashboard | Select its name in the header                                                                                                     |
| Delete the dashboard | Kebab menu → **delete dashboard**, then **Delete** in `Delete dashboard?`. Select **Undo** in the `Deleted` notice to restore it. |

| Size  | Width on a wide screen | Default for                                 |
| ----- | ---------------------- | ------------------------------------------- |
| **S** | A third of the row     | Metric tiles                                |
| **M** | Half the row           | `Line`, `Area`, `Bar`, `Breakdown`, `Donut` |
| **L** | The full row           | `Funnel`                                    |

On a phone, every card takes the full row.

## Range

Every card runs over the dashboard's one range. A range you pick applies to your view
until you select **Set as default**.

| Setting | Values                                                                                                            |
| ------- | ----------------------------------------------------------------------------------------------------------------- |
| Range   | Today, yesterday, last 7, 14, 30, or 90 days, this week, this month, last month, or a custom range up to 400 days |

### Filters from agents

The dashboard page has no filter control. An agent can still set up to 10 filters on a
dashboard over the API or MCP. Filters apply only to query cards whose metrics can take
that dimension. Every other card runs unfiltered and shows the badge
`filters not applied`. Hover over the badge to read the reason.

| Card                                                 | Filters                                       |
| ---------------------------------------------------- | --------------------------------------------- |
| A query card whose metrics take the dimension        | Applied, together with the card's own filters |
| A query card whose metrics do not take the dimension | Not applied                                   |
| A catalog card                                       | Not applied                                   |
| A funnel card                                        | Not applied                                   |

## Save an analysis from chat

An analysis holds a title, a Markdown body, the reports it shows, and the queries behind
its numbers. You make one from an answer in [AI chat](/product/ai-chat).

<Steps>
  <Step title="Ask in chat">
    Open **Reports**, select the `Analyses` tab, and select **ask in chat**. Or open the
    chat from the sidebar.
  </Step>

  <Step title="Save the answer">
    When an answer that ran a query finishes, select **Save as analysis** under it.
  </Step>

  <Step title="Open it">
    Select **Open** in `Saved · Open`. The analysis is also on the `Analyses` tab.
  </Step>
</Steps>

We save the answer's text and every query it ran. Each query keeps the exact dates the
answer covered, so the analysis shows the same numbers later. See
[Save an answer as an analysis](/product/ai-chat#save-an-answer-as-an-analysis).

### Edit an analysis

Select **Edit** on an analysis. Change the title, or the body in Markdown on the **Write**
tab. **Attach report** inserts `::report[<id>]` at the cursor. Select the **Preview** tab
to check it.

An embed sits alone on its line. Its report id must be one of the analysis's attached
reports.

```markdown theme={null}
## Meta drove most of August's revenue

Meta campaigns brought 62% of attributed revenue.

::report[3f2b8c1e-0a4d-4e5f-9b6a-7c8d9e0f1a2b]
```

| Part of the reading view      | Shows                                                                                                                      |
| ----------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| Body                          | The Markdown, rendered. Raw HTML is dropped. An image shows as a link.                                                     |
| Embedded cards                | The live report, over the analysis range or the report's own default range                                                 |
| Attached reports not embedded | Live cards after the body                                                                                                  |
| **How this was calculated**   | One entry per saved query: metrics, dimensions, filters, range, and attribution. **Save as report** turns one into a card. |

To delete an analysis, select **Delete**, then **Delete** in `Delete analysis?`. Select
**Undo** in the `Deleted` notice to restore it.

## Share a link

<Steps>
  <Step title="Open Share">
    Select **Share** on a dashboard or an analysis. Single report cards are not shared from the app.
  </Step>

  <Step title="Set an expiry">
    Pick never, 7 days, 30 days, or 90 days.
  </Step>

  <Step title="Choose the name">
    Tick `Show workspace name` to show the workspace's icon and name on the page.
  </Step>

  <Step title="Create the link">
    Select **Create link**.
  </Step>

  <Step title="Paste it">
    The new link is already copied. It appears at the top of the list, marked `new`.
  </Step>
</Steps>

<Warning>
  Anyone with the link can view it.
</Warning>

The link has the form `https://www.datalyr.com/share/<token>`. The page needs no login,
and search engines do not index it.

| The public page shows                                                                                                | The public page hides                                                      |
| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- |
| The object's name and its saved range, in a header that stays at the top. A long name ends in `…`; hover to read it. | The workspace icon and name, unless `Show workspace name` was ticked       |
| Each card's chart and numbers                                                                                        | Report definitions, workspace ids, and who created the object              |
| An analysis body, its cards, and **How this was calculated**                                                         | Values of `property:` filters. They show as `(hidden)`.                    |
| The footer `powered by DATALYR`, and `updated 3m ago`: when the oldest card's numbers were computed                  | E-mail addresses in row labels and filter values. They show as `(hidden)`. |
| The first 50 rows of a breakdown                                                                                     | A range picker. The range is fixed.                                        |

A card on the public page can be up to 5 minutes old. The footer's `updated` time says
how old. The page shows the object as it is now, so a rename or an edited report shows
on the next load.

The page follows the viewer's light or dark system setting. The sun or moon button in the
header switches it, and the browser remembers the choice for every shared page.

### Manage links

The **Share** popover lists every link to the object.

| Column             | Shows                                                                                     |
| ------------------ | ----------------------------------------------------------------------------------------- |
| Hint               | The last 4 characters of the token. **copy** next to an active link copies its URL again. |
| created, expires   | When the link was made, and when it stops working                                         |
| views, last viewed | Every page load except link prefetches. We store no IP address or browser.                |
| **revoke**         | Turns the link off after an inline confirm                                                |

Revoke is final. A revoked link never works again. To share again, create a new link.

## Limits

| Limit                         | Value                                                             |
| ----------------------------- | ----------------------------------------------------------------- |
| Cards per dashboard           | 24                                                                |
| Filters per dashboard         | 10                                                                |
| Dashboards per workspace      | 100                                                               |
| Analysis body                 | 50,000 characters                                                 |
| Queries per analysis          | 20                                                                |
| Attached reports per analysis | 12                                                                |
| Analyses per workspace        | 500                                                               |
| Active links per object       | 10                                                                |
| Active links per workspace    | 200                                                               |
| Link expiry                   | Never, or 1 to 365 days. The popover offers never, 7, 30, and 90. |
| Views per link                | 60 per minute                                                     |
| Views from one IP address     | 120 per minute                                                    |

## Dashboards and analyses for agents

An agent with the `datalyr:write:reports` scope can create, edit, and delete dashboards
and analyses, and create and revoke share links. See
[Build a dashboard, write an analysis, share it](/datalyr-mcp#build-a-dashboard-write-an-analysis-share-it).

The in-app chat can list, read, and run dashboards and analyses. Adding a card, saving an
analysis, and sharing stay your buttons.

## Verify

1. Create a dashboard with two cards.
2. Set the range to the last 7 days.
3. Select **Share** and create a link.
4. Open the link in a private window.
5. Confirm the cards show without a login.
6. Revoke the link and reload the private window.
7. Confirm the page reads `This link was turned off`.

## When it does not work

| What you see                                | Cause                                                                                                      | Fix                                                                             |
| ------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
| `filters not applied` on a card             | An agent set a filter, and the card is a catalog or funnel card, or its metrics cannot take that dimension | Rebuild the card with **Query** as its source, or accept the unfiltered numbers |
| `This report was deleted · Remove`          | Someone deleted the report                                                                                 | Select **Remove**, or restore the report from the audit log                     |
| `No dashboards yet`                         | The workspace has no dashboard                                                                             | Select **new dashboard**                                                        |
| You lost a link's URL                       | —                                                                                                          | Select **copy** next to the link in the **Share** popover                       |
| No **copy** next to a link                  | The link was made before September 26, 2026, when we started keeping the token                             | Revoke that link and create a new one                                           |
| `Link not found` (404)                      | The URL is incomplete or wrong                                                                             | Copy the full URL again from its sender                                         |
| `This link was turned off` (404)            | Someone revoked the link                                                                                   | Create a new link                                                               |
| `This link expired` (404)                   | The expiry passed                                                                                          | Create a new link                                                               |
| `This dashboard was deleted` (404)          | Someone deleted the object. Reports and analyses read the same way.                                        | Restore the object with **Undo**. The link works again.                         |
| `Too many requests. Try again in a minute.` | The link passed 60 views a minute, or one IP address passed 120                                            | Wait a minute, then reload                                                      |

Next, open [Reports](/product/reports) to build the cards a dashboard shows, or
[Connect Claude or Codex](/datalyr-mcp) to have an agent build one.
