---
title: "Dashboards Troubleshooting & FAQ"
description: "Fix the common dashboard issues: empty widgets, the broken-binding nudge, disabled chart kinds, mis-formatted table columns, blank non-standard charts, and dashboards that will not load."
section: "Dashboards"
canonical: "https://banksync.io/docs/dashboards/dashboards-troubleshooting"
---

Most dashboard problems come down to the data a widget is reading, or to how its fields are set up. This page covers what the common states mean and how to fix them.

> **One term to know: binding:** '"Binding" just means telling a widget which field goes where: what to group by, what number to measure, and what to split or colour by. In the widget inspector these are labelled Group by, Value, and the other fields. When this page says a binding is broken, it means two of those slots are pointing at the wrong field.'

## A widget is empty

An empty widget is not always an error. There are three different states:

- **No rows match** — The widget loaded fine, but nothing in your data matches. Widen a filter or pick a period with
  activity.
- **Still loading** — The data is being fetched. It resolves on its own; large pulls take a moment.
- **An error** — Something went wrong reading the data. The widget shows the reason and a next step.

![A dashboard widget cell showing the 'No rows match' empty body state after the planner answered with zero rows.](https://cdn.banksync.io/screenshots/dashboards/widget-empty-rows.4ca13aac141545a9.png "An empty widget where the query succeeded but nothing matched the filters.")

While the data is still being fetched, the widget shows a brief loading state (the amber "Still loading" card above), which clears on its own once the result arrives; larger pulls take a moment.

> **No rows match is not a bug:** 'If a widget says no rows match, the query ran and came back empty. That usually means your filters exclude everything, or the feed has no data for that period. It is not a failure, just an empty result.'

> **Worked example: an empty cash-flow chart:** 'Say your Spending by Category chart is blank and reads "No rows match." Check the date filter first. If it is set to Last 7 days but the account had no transactions in the past week, the chart is correctly empty. Switch the filter to Last 90 days (or a month you know had activity) and the bars come back. If it is still empty after widening the date, the bound feed may simply have no data yet, so confirm the bank feed has synced.'

### My widget shows a "5k+" badge

A small amber **5k+** badge in a widget's header means the result was large and was trimmed to the first 5,000 rows for display (the badge tooltip shows the true total, for example "Truncated to first 5000 of 18,402 rows"). This only affects how many rows the widget draws; it does not delete or lose any data. If you are comparing a table's visible rows to your own count and they differ, this badge is usually why. To see everything, narrow the widget with a filter (a tighter date range or a single account) so the result fits under the limit.

## A widget shows a fix-it nudge

If a chart's fields no longer line up (for example the same field ended up on both the Group by and the Value), the widget shows a short fix-it nudge in place of a broken chart, with a one-line explanation and the hint "Open the inspector to fix it."

The nudge itself is not a button. To fix it:

**Repair a broken binding**

1. **Click the widget** — This opens the widget inspector on the right, where its fields live.
2. **Use Auto-fix binding** — In the inspector you will see the same warning with an Auto-fix binding button.
   Click it and BankSync re-assigns the fields by their natural role (a category field to Group by,
   a number to Value).
3. **Or re-pick the fields yourself** — If the auto-fix is not what you wanted, change Group by and Value by hand in the inspector. See
   Binding data.

![A widget cell showing the fix-it nudge for a broken encoding (the same field on both axes) with the 'Open the inspector to fix it' hint.](https://cdn.banksync.io/screenshots/dashboards/widget-fix-it.03e4a9a4fac2982a.png "The fix-it nudge explains the problem; clicking the widget opens the inspector, where the Auto-fix binding button does the repair.")

## A chart kind is greyed out

A chart kind can be disabled in the Chart type picker for two different reasons. Read the note next to the greyed-out option to tell which one you are hitting.

**1. Your data cannot fill what the kind needs.** The picker shows a plain reason like "needs a category or number field." Add the missing kind of field in the inspector and the option turns on.

For example, a pie or donut needs one category to slice by plus one number to size the slices: pick something like Merchant (the category) and Amount (the number), and the pie un-greys. A line or column chart needs a date or category for the bottom axis plus a number to plot.

**2. There is no renderer for that kind.** Occasionally a kind appears as "(renderer missing)" and stays disabled, with an amber note: 'No renderer for "X". Pick a supported kind above.' This is not about your data: it means that chart type cannot be drawn in your current app version. Pick a supported kind from the list instead. This is rare and usually clears after an app update.

See [Binding data](/docs/dashboards/binding-data) for how to add and assign fields.

![The chart-kind picker showing the catalog (line, area, bar, donut, pie, treemap, boxplot, heatmap, gauge, KPI, table) grouped by family with search, where kinds your data cannot fill are disabled with a plain-language reason.](https://cdn.banksync.io/screenshots/dashboards/chart-kind-picker.c5378e8eb2fde88e.png "The chart type picker disables kinds your data cannot fill yet and shows why next to each one.")

## A chart looks unstyled or says "Preview"

This covers two related things, depending on the widget type.

**Newer chart kinds have limited styling.** Some of the more advanced chart kinds render correctly but do not yet expose every appearance control. They carry a Preview badge in the widget library, and the inspector's Style tab shows a note that the legend, grid, axes, and title controls are not wired up for that kind yet. The chart kinds that support the full set of styling controls today are: line, area, bar, column, scatter, histogram, pie, and donut. If you need full styling control right now, switch to one of those, or use the Advanced tab to set spec fields directly.

> **KPI, table, and gauge are not in this list:** 'KPI, table, and gauge are not chart kinds, so they have no Preview badge and no "styling limited" notice. Their appearance settings live on their own controls in the inspector\\'s Data tab (next to the fields they affect), not on the chart Style tab. If a KPI or gauge looks plain, open its inspector and adjust those controls there.'

## A table column shows the wrong format

Each column in a table widget has a cell type that controls how it is displayed: currency, percent, date, a status pill, a progress bar, a sparkline, a rating, chips, a link, and more. If a column is showing a raw number, a plain date, or a block of text where you expected something nicer, the column's cell type just needs to be set.

**Fix a column's format**

1. **Open the table inspector** — Click the table widget to open its inspector, then find the column manager (the list of column
   cards).
2. **Pick the column's cell type** — On the column you want to change, choose the format that fits, for example Currency for an
   amount, Status for a state, or Progress for a 0-to-100 value.
3. **Set any extra option it needs** — Some types need a small hint. A progress bar and a heatmap need a number to scale against (the
   column's maximum), and a heatmap or range cell needs numeric data to derive its colour scale. If
   those are missing, the cell falls back to plain text.

![The table column manager showing Date and Amount column cards with reorder grips and per-column format, align, and pin controls, plus more fields available to add.](https://cdn.banksync.io/screenshots/dashboards/table-inspector.354ae711218831ee.png "Set each column's cell type (currency, status, progress, and more) in the table column manager.")

> **Two cell types always show as plain text:** 'Most cell types render richly, but two are plain text on purpose: formula and custom. If a column is set to one of those, a plain value is expected, not a bug. Switch it to a built-in type (such as currency, status, or progress) if you want the richer display.'

## A non-standard chart stays blank after I bind fields

The more specialised chart kinds (for example treemap, radar, box plot, heatmap matrix, and sankey) are not the usual two-axis charts, so their fields are set up a little differently. If one of these stays empty even after you picked fields, open its inspector and look at the **Fields** section: re-pick each field there (for example the path for a treemap, or the axes for a radar) so every slot points at a real field. Saving from that Fields section writes the binding the chart needs, and the chart fills in.

![The treemap inspector Fields section showing the Hierarchy path editor with a two-level path (Category then Merchant, each a field picker with reorder and remove controls) plus a Value section bound to Amount.](https://cdn.banksync.io/screenshots/dashboards/treemap-inspector.ff263b786ec59d6b.png "Specialised chart kinds set their fields in the inspector's Fields section: re-pick each slot (here a treemap's path and value) so every one points at a real field.")

## A dashboard will not open

If a dashboard link shows "unavailable" or not found, check that:

**Dashboard will not load**

1. **You have access** — Private dashboards are visible only to their creator; a workspace dashboard needs you to be a
   member.
2. **The link is current** — If the dashboard was deleted, or a public link was regenerated, the old link stops working.
3. **It was saved** — A draft that was never named or given a widget was never saved, so it has no permanent link.

![The dashboard route fallback when a dashboard link does not resolve, showing a headline and a 'start a new dashboard' escape hatch.](https://cdn.banksync.io/screenshots/dashboards/dashboard-unavailable.34d10b7ba30d7e8c.png "When a dashboard link does not resolve, the page offers a way to start a new dashboard instead.")

## Frequently asked

> **Do widgets ever show sample data?:** 'No. On a real dashboard, every widget reads your actual synced data, never made-up sample rows. The small thumbnails in the widget library and template gallery are illustrative previews, but anything you place on a canvas is live.'

> **Why did my custom widget fail to build?:** 'A custom (code) widget must compile and declare the capabilities it uses. If it fails to build or uses an undeclared capability, the widget reports the error instead of rendering. Custom widgets are a beta surface.'

![The custom widget authoring dialog after a failed build, with an error panel ('Source must export a defineWidget(...) default.') in place of the preview.](https://cdn.banksync.io/screenshots/dashboards/custom-widget-error.30c1d0df9addd078.png "A custom widget reports its build error in place of the preview instead of rendering.")

> **What do the widget error messages mean?:** 'When a widget hits a real error it shows the reason and a next step right on the cell. The common ones: "could not load data" means the read from your bank feed or connected destination failed (an expired connection, such as a lapsed spreadsheet sign-in, is the usual cause); a timeout means the query took too long, so narrow it with a filter and try again; and "query not found" means the widget\\'s saved query is out of date, which usually clears after re-opening the dashboard.'

> **The canvas can hide a connection problem:** 'A widget can look fine on the saved dashboard but fail when you edit it. That is because the live editor re-reads the data and can surface a failure (for example an expired spreadsheet or bank connection) that the cached canvas was masking. If a widget only errors in the editor, treat it as a connection that needs reconnecting, not a broken dashboard.'

## Still stuck?

If a widget keeps erroring after you have checked its data and fields, the underlying feed may need attention (a reconnect or a re-sync). See [Bank feeds troubleshooting](/docs/bank-feeds/troubleshooting-guide), or reach out and we will help.

[Contact support](mailto:support@banksync.com)
