Skip to main content
Custom dashboards let you build focused views of your experiment data. Instead of scrolling through every metric, you can curate sections with only the charts, images, and files you care about.

Overview

Dashboards are created at the project level and are shared across your organization. Each dashboard is organized using folders, sections, and widgets:
  • Folders — Optional top-level containers that can hold sections, widgets, or both.
  • Sections — Collapsible containers that hold widgets. Sections can live at the top level or inside a folder.
  • Widgets — The individual visualizations (line charts, histograms, images, videos, audio, console logs). Widgets can live inside sections or directly inside folders.
Dashboard example

Creating a Dashboard

  1. Navigate to any project’s Compare tab
  2. Click the Dashboards dropdown in the toolbar
  3. Select Create New Dashboard
  4. Enter a name for your dashboard and click Create
You can also import an existing dashboard configuration via the Import JSON tab. Once created, your dashboard appears in the Dashboards dropdown. Switch between the default Charts view and any custom dashboard at any time.

Editing a Dashboard

Click Edit Dashboard to enter edit mode. In edit mode you can:
  • Add, remove, and reorder sections via drag and drop — grab the grip handle on any section header and drag it to a new position. A blue drop indicator shows where the section will be placed.
  • Add widgets to sections
  • Copy and paste widgets — Right-click any widget to access Copy Widget in the context menu. A Paste Widget button then appears in section headers, letting you duplicate widgets across sections.
  • Move widgets — Right-click any widget and select Move to… to move it to a different section. The submenu lists all non-dynamic sections, including those inside folders.
  • Choose between Grid and Free layout modes
  • Save or Cancel your changes

Auto-Save and Draft Recovery

Dashboard edits are automatically saved as drafts to your browser. If you navigate away with unsaved changes, a confirmation dialog warns you before leaving. If you close the tab accidentally, your draft is preserved — a recovery dialog appears the next time you enter edit mode, letting you restore your work. Leave Unsaved Dashboard Changes Restore Unsaved Dashboard Changes

Concurrency Control

When editing a dashboard, Pluto polls for remote changes every 30 seconds. If another user modifies the dashboard while you are editing, a stale warning appears with two options:
  • Save as new — Save your changes as a new dashboard
  • Override — Overwrite the remote changes with your version

Folders

Folders provide an optional top-level grouping layer for organizing related content. A folder can contain child sections, widgets, or both. Sections do not need to be inside folders — they can also live at the top level of a dashboard on their own. Similarly, folders can hold widgets directly without any child sections.

Creating a Folder

Click New Folder in the dashboard toolbar to create a folder. Give it a name and it will appear as a top-level container with a folder icon and a tinted border to distinguish it from regular sections. Create folder dialog Empty folder

Adding Sections to Folders

There are two ways to add sections to a folder:
  • Create a new section — Click the Add Section button to create a new section directly inside the folder.
  • Move an existing section — Move a top-level section or a section from another folder into the folder. You can do this in two ways:
    • Drag and drop — Drag any section by its grip handle and drop it into the folder. An indicator shows the drop target.
    • Move to… menu — Use the ••• dropdown menu on a section header and select Move to… to pick the destination folder.

Adding Widgets to Folders

Widgets can be added directly to a folder without needing a child section. There are two ways:
  • Create a new widget — Click Add Widget on the folder itself to open the widget type picker.
  • Move an existing widget — Use the ••• dropdown menu on an existing widget and select Move to… to pick the folder as the destination.

Sections

Sections are collapsible containers that hold widgets. They can live at the top level of a dashboard or inside a folder. Each section has a name, can be collapsed or expanded, and can optionally use a dynamic pattern to auto-populate its widgets.

Creating a Section

Click New Section to create a section. Each section has a name that appears in the section header. Create section dialog Section inside a folder

Adding Widgets to Sections

There are two ways to add widgets to a section:
  • Create a new widget — Click Add Widget inside the section to open the widget type picker.
  • Move an existing widget — Use the ••• dropdown menu on an existing widget and select Move to… to pick the section as the destination.

Widgets

Widgets are the individual visualizations inside sections or folders. There are two types of widgets: Metrics and Files.

Creating a Widget

Click Add Widget inside any section or folder to open the widget type picker: Add widget dialog

Metrics Widgets

Select Metrics to create a line chart widget. You can:
  • Select multiple metrics to plot them on a single chart — each metric gets a distinct dash pattern for differentiation
  • Search for metrics using fuzzy text search or glob patterns (e.g., train/*)
  • Switch to Regex mode for precise pattern matching
  • Configure the X-Axis (Step, Relative Time, Absolute Time, or any custom metric), Aggregation (Last, Min, Max, Mean), and Y-Axis Scale (Linear or Log)
Add metric widget When you select multiple metrics, each one is differentiated using distinct dash patterns (solid, dashed, dotted, etc.), making it easy to distinguish between them even in grayscale. This is useful for comparing known, related metrics (e.g., train/loss and val/loss on the same axis). Manually selected metrics are static — the chart always shows exactly the metrics you picked, regardless of what new data appears. For automatic discovery of new metrics, see Dynamic Content below.

File Widgets

Select Files to add widgets for non-numeric data:
  • Histograms — Distribution visualizations with step navigation
  • Images — Training visualizations, sample outputs, etc.
  • Videos — Recorded training episodes or generated content
  • Audio — Audio samples or generated speech
  • Console Logs — Stdout/stderr from your runs with search and ANSI color support

Searching Widgets

Use the search bar at the top of the dashboard to filter widgets by name. Matches against widget titles and metric names with substring matching. Dashboard widget search

Dynamic Content

Sections and widgets can be made dynamic, meaning they use a glob or regex pattern to automatically discover and display matching data. When new metrics or files appear that match the pattern, they are included automatically.

Dynamic Sections

Toggle Dynamic section when creating a section to auto-populate it with widgets from a pattern. A dynamic section creates one widget per match, automatically choosing the correct widget type for each. Dynamic section dialog Dynamic sections are cross-data-type — a single pattern can match both metrics and files. For example, suppose you have the following logged data under the data/ prefix:
  • data/loss (metric)
  • data/accuracy (metric)
  • data/sample_audio (audio file)
  • data/confusion_matrix (histogram)
  • data/predictions (video)
A dynamic section with the pattern data/* will create 5 separate widgets — one for each match — automatically choosing the correct widget type (line chart, audio player, histogram, video player) for each. As new data appears under the matched pattern, the section updates automatically. For example, if a new run logs data/f1_score, a 6th widget appears without any manual configuration.

Dynamic Widgets

When you use a glob pattern like train/* in a widget, the widget becomes dynamic — it automatically includes any matching data on a single widget. Unlike manually selecting multiple metrics (which is static), a dynamic widget will pick up new data as it appears. Dynamic widget pattern For example, suppose you have 5 metrics, train/loss1 through train/loss5, logged across your runs. A dynamic Metrics widget with the pattern train/* will plot all 5 metrics on one chart. If a new metric like train/loss6 is logged, it is automatically added to the same chart when the corresponding run is selected as visible. Because widgets are separated by data type, a dynamic Metrics widget only matches numeric time-series data. If you also have files under the same prefix, you would need a separate dynamic Files widget to display those.

Dynamic Sections vs Dynamic Widgets

Both use glob/regex patterns to automatically include matching data, but they differ in how matches are displayed:
Dynamic SectionDynamic Widget
LayoutOne widget per match (separate charts)All matches in one widget (single chart)
Data typesCross-type — metrics and files in one sectionSingle type — metrics or files, not both
Use caseOverview of everything under a prefixComparing related metrics on one axis
Example: You have train/loss, train/accuracy, train/sample_image, and train/audio_clip.
  • A dynamic section with train/* creates 4 widgets — a line chart for loss, a line chart for accuracy, an image widget, and an audio widget
  • A dynamic Metrics widget with train/* creates 1 chart with loss and accuracy plotted together (the image and audio are not shown — you’d need a separate dynamic Files widget for those)

Constraints

Folders
  • Folders cannot be nested — you cannot place a folder inside another folder.
  • Folders cannot be dynamic — only sections can use dynamic patterns to auto-populate widgets.
Folders and Sections
  • The dashboard search bar only searches widgets — folders and sections cannot be searched by name.
Widgets
  • Widgets cannot be dragged outside their parent section or folder. To move a widget to a different section or folder, use the ••• dropdown menu and select Move to….
  • Each line chart widget has a configurable max series limit (default: 500). When exceeded, a warning is displayed instead of the chart. This can be adjusted in the line chart settings.

Saving and Loading

Click Save to persist your dashboard. Dashboards are saved per-project and shared across all members of your organization. Anyone with access to the project can view and edit dashboards. Switch between dashboards using the Dashboards dropdown in the toolbar. Click Charts to return to the default view showing all metrics grouped automatically.

Exporting a Dashboard

Click the dashboard menu and select Export JSON to download the full dashboard configuration as a JSON file. Share exported JSON files with teammates or keep them as backups. To import, use the Import JSON tab when creating a new dashboard. Dashboard export menu