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

# Layout

> Control dashboard layout, widget controls, and themes.

Resize and arrange widgets, switch data sources, and set chart and validation themes.
For page-level filters, operators, and how chips combine, see
[Filters](/analytics/dashboards/filters).

## Layout and widgets

All widgets share common controls: **Remove**, **Change Data Source**, **Full Screen**, and
**Settings**. Chart widgets also offer **Chart Style** and **Local Filters**. Some chart
widgets allow visual customisation such as labels and margins in their settings. You can
drag widget edges or corners to resize. Use **Section** widgets to group parts of the
dashboard and improve navigation.

**Change Data Source** retargets a data widget to another model that is already mounted on
the dashboard, and keeps the widget’s property bindings, filters, and chart options. Use
it when you have tuned an analysis on scheme A and want the same setup on scheme B without
rebuilding the widget.

* **Model Viewer** and **Dual viewer** are excluded — they own their mounts. Change models
  or versions on the viewer itself, or
  [re-pin the version](/analytics/intelligence-dashboards#change-a-pinned-version) from the
  Sources sidebar.
* Property paths and filter rules that do not exist on the new source are kept and flagged,
  not deleted. An empty chart often means the path is missing on the new source, not that
  the widget was wiped.
* Switching back usually restores those rules once the property exists again.

To remove a widget in editor mode, select the widget (click it), then open the menu (⋮) in
the widget sidebar and choose **Delete**, or press **Delete** (Del) on the keyboard.
Confirm in the dialog. The widget is removed from the dashboard.

Layout, widget positions, filter state, and pinned versions are saved with the dashboard.

<Steps>
  <Step title="Add sections to group areas">
    Drag **Section** from the widget panel onto the canvas to group areas (e.g. "Takeoff",
    "Validation"). Add widgets inside each section.
  </Step>

  <Step title="Resize widgets">Drag widget edges or corners to resize.</Step>

  <Step title="Reorder widgets">
    Drag widgets by the header to reorder. Layout and filter state are saved with the dashboard.
  </Step>
</Steps>

<AccordionGroup>
  <Accordion title="Can I duplicate a widget?">
    Yes. Select the widget (click it), open the menu (⋮) in the widget sidebar, and choose
    **Duplicate**. A copy of the widget is added to the canvas with the same settings.
  </Accordion>

  <Accordion title="Is there a limit to how many widgets I can add?">
    There's no hard limit, but dashboard performance may decrease with very large numbers of
    widgets.
  </Accordion>

  <Accordion title="Can I lock a widget or the layout?">
    Yes. Select the widget, open the menu (⋮) in the widget sidebar, and choose **Lock widget**. A
    locked widget cannot be moved or resized. Choose **Unlock widget** from the same menu to allow
    editing again.
  </Accordion>

  <Accordion title="Can I undo deleting a widget?">
    No. There is no undo for layout changes. If you delete a widget by mistake, add a new widget of
    the same type from the sidebar and configure it again, or duplicate another widget if you have
    one with similar settings.
  </Accordion>

  <Accordion title="Can I export a dashboard or widget (e.g. PDF, image, or chart data)?">
    Some widgets support export: tables can export to CSV, and Model Validation has its own
    interface for importing and exporting rulesets and interop. There is no single "export
    dashboard" to PDF or image for the whole dashboard.
  </Accordion>

  <Accordion title="Why is my dashboard slow?">
    Dashboards run in the browser and BIM models can be large—the browser and your device are the
    main factors. Large models are slow to load, and all widgets depend on the data source loading.
    Running many Model Validation rules (e.g. 2000) against a large model also takes time to
    compute; results use page caching. Properties-over-time widgets use Speckle Automate to store
    prior results.
  </Accordion>

  <Accordion title="How many models can I add to one dashboard?">
    There are no hard limits, but see "Why is my dashboard slow?"—large numbers of models or widgets
    can affect performance.
  </Accordion>

  <Accordion title="Which applications have extra widgets?">
    Revit, Tekla, CAD, and other connectors may expose additional widgets in the widget panel (e.g.
    Levels, Families, Material quantities). Open the widget panel in the app to see what's available
    for your connected sources.
  </Accordion>

  <Accordion title="Can I use IFC models in dashboards?">
    All ingested and published data in Speckle is Speckle data, regardless of original format (e.g.
    IFC). You can use it in dashboards like any other model. Specialised widgets (e.g. for Revit,
    Tekla) add features relevant to those sources; the underlying data is the same.
  </Accordion>

  <Accordion title="If I pin a version, does the dashboard ever change?">
    A pinned version stays fixed until you change it. From the **Sources** sidebar you can [re-pin
    or unpin](/analytics/intelligence-dashboards#change-a-pinned-version) a mounted model without
    creating a new data source — widgets keep their bindings to the same source id. The change saves
    the dashboard immediately. Charts and tables recompute against the new version’s properties;
    paths that only existed on the old version go empty until you rebind them.
  </Accordion>

  <Accordion title="Can I compare more than two versions at once?">
    Yes. You can add multiple Model Viewer widgets or use widgets that support multiple data sources
    to compare several versions. The Dual viewer widget compares two at a time; other widgets can
    aggregate or compare across more sources.
  </Accordion>
</AccordionGroup>

## Themes

Dashboard UI (light/dark) follows your workspace or system preference. Use the theme
toggle in the dashboard or workspace settings when available.

Chart and validation colors use the **Themes** panel in the dashboard sidebar. Open the
sidebar and select **Themes** to pick a built-in palette, or create and manage custom
themes for charts and pass/fail styling. The selected theme is saved with the dashboard.

### Built-in and custom themes

Built-in themes are read-only presets. Custom themes live in one of three scopes:

* **Dashboard Themes** — this dashboard only
* **Project Themes** — dashboards that use models from that project
* **Workspace Themes** — all dashboards in the workspace

Who can create or edit depends on scope: dashboard edit access for dashboard themes;
project owner (or workspace admin) for project themes; workspace admin for workspace
themes.

On **Dashboard Themes**, use **Generate random theme**, **Theme from image** (samples
colors from a local image; the image is not uploaded), or **New theme from current**
(forks the active palette). Project and workspace sections offer **New theme from
current** when you have permission. To customize a built-in, select it, fork into a
scope, then edit the copy.

Click a custom theme once to apply it. Click the same theme again to show edit, delete,
and (for project or workspace themes) **Copy to dashboard**. In the editor you can rename
the theme, edit chart colors (including drag-and-drop reorder), and set **Pass** and
**Fail** colors used by validation widgets.

Category color mapping is consistent across widgets, so the same category keeps the same
color in different charts.

### Color mode

**Color mode** on the Themes panel adjusts how colors appear for color-vision needs
(Off, Balanced CB, Protan/Deutan, Tritan). This affects display in your browser only — it
is not saved with the dashboard or into the theme.

See [this video](/analytics/intelligence-dashboards#how-to-color-code-and-change-color-themes)
for instructions on how to apply color coding and change the theme.

<AccordionGroup>
  <Accordion title="Why can't I edit a built-in theme?">
    Built-in themes are read-only. Select the built-in, then use **New theme from current** on
    Dashboard, Project, or Workspace Themes to fork a custom copy you can edit.
  </Accordion>

  <Accordion title="Who can change project or workspace themes?">
    Project themes need project owner or workspace admin. Workspace themes need workspace admin.
    Anyone with dashboard edit access can create and edit dashboard themes, and can copy a shared
    theme onto the dashboard before editing the copy.
  </Accordion>

  <Accordion title="Does Color mode change the saved theme?">
    No. Color mode only remaps colors in your browser for accessibility. Other viewers still see the
    theme's stored colors unless they set Color mode themselves.
  </Accordion>
</AccordionGroup>

## Related

* [Sharing](/analytics/dashboards/sharing) — presentation mode, share links, and
  scenarios
* [Filters](/analytics/dashboards/filters) — page-level and widget-level filters
* [Common workflows](/analytics/dashboards/common-workflows) — quantity takeoff, portfolio
  analysis, and more
* [Data Validation](/analytics/data-validation/overview) — Property Checker and Model
  Validation
