Lens

Build a Board

Boards are visual dashboards that display your data as charts, KPI tiles, and tables. Build them from any data table and share them publicly or with your team.

Overview

A Lens board is the visualization layer on top of your data tables. Tables hold rows of data pulled from GA4, CSV uploads, JSONL files, Airbyte connectors, or joins and unions of other tables. Boards decide how that data is presented: what metrics show up as KPIs, which dimensions break down the charts, what the table grids look like.

Boards are live. There's no snapshot or export step in between; every time you open a board, Lens runs queries against ClickHouse and renders fresh results. When a table syncs new data, the next board view reflects it automatically.

Open Lens > Boards from the left sidebar. You'll see a list of boards scoped to your current property. Click Add Board to create a new one. Give the board a descriptive title so you'll recognize it in picker lists later, especially if you plan to combine multiple boards into a public report.

Add tiles

A board is made up of tiles. Click Add Tile and pick a type: Chart for bar, line, area, or pie visualizations, KPI for a single metric with a delta against a comparison period, or Table for a sortable data grid. Each tile type has slightly different configuration options, but all of them start by pointing at one of your data tables.

Pick the table that holds the metric you want to display. If the right table doesn't exist yet, create it first (see the Create a Data Table guide). Boards cannot generate data; they can only show what a table already has.

Configure tile dimensions

For each tile, select the dimensions to group by and the metrics to display. For a "sessions by source" chart, that's the source dimension and the sessions metric. Choose an aggregation for each metric (sum, average, count, min, or max) depending on what makes sense for that column.

Set the date range the tile should respect and any filters to narrow the slice. Filters are per-tile, so one tile can show all traffic while another on the same board shows only organic. Think of each tile as its own query against the underlying table.

Arrange layout

Tiles come in three sizes: Large (full width), Medium (half width), or Small (third width). Choose the size that suits the content. Headline KPIs often want small tiles laid out in a row; detail charts and tables usually want medium or large to have room to breathe.

Drag tiles to reorder them on the board. The order top-to-bottom is the order viewers see when the board loads, so lead with the metrics that matter most and leave the deep-dive tiles further down.

Save the board

Click Save. The board is now available for anyone with access to your property. If you want to share it outside the team without requiring a login, add it to a public Report (covered in the Share Reports guide), which wraps one or more boards in a public URL with optional password protection.

Tips

KPI tiles with delta calculations are the quickest way to surface period-over-period changes on a dashboard. Charts can display multiple metrics on one visualization when you want to compare them side by side. Boards pull live from tables, so syncing a table or editing its columns instantly changes what downstream boards display.

Troubleshooting

Tile shows "No data" even though the table has rows

The most common cause is a date range that doesn't overlap the data in the table. A GA4 table backfilled for 30 days won't have data for a tile set to "last year". Widen the date range or reduce the tile's filter to confirm rows exist, then tighten from there.

Chart renders but the numbers look wrong

Check the aggregation. Selecting sum on a rate column, or avg on a count column, produces nonsense. For pre-aggregated GA4 metrics like sessions, sum is usually right. For derived ratios, you may need a calculated metric on the table itself rather than a tile-level aggregation.

Board renders slowly or times out

Tiles that pull from very wide date ranges or tables with millions of rows can push ClickHouse past interactive latencies. Narrow the date range, add a dimension filter, or consider splitting into multiple smaller boards that each load a focused slice.