Analytics

Power BI and Tableau: tricks that stop a dashboard lying to a room

The visual is the last step. Grain, relationships and a filter that nobody sees do more damage than a colour palette.

17 September 2026 · 7 min

Power BI

Star schema, not a web of both-direction relationships. Hide the key columns. One date table. Measures in a table, not scattered on facts. Dual relationships for role-playing dates, not copies of the calendar. DirectQuery only when the source can take the load; otherwise you will train users to 'refresh until it moves'.

Composite models and Direct Lake are useful. They also hide a second grain. We check: does this visual group by the business key we documented, or by whatever column was nearest the mouse? Field parameters beat ten copies of the same page. Incremental refresh with a well-chosen RangeStart beats importing five years every night.

Tableau

Extracts with a visible last-refreshed timestamp. Context filters before a big dimension. Don't live-query Oracle for a 40-mark dashboard on a Monday morning. LOD expressions are not a substitute for a correct grain in the extract. We publish a 'definition' worksheet: the metric, the filter, the grain, the owner. If it cannot be written there, it does not go on the exec view.

What we tell the room

A number without a grain is a negotiation. Public and private clients both do this: three versions of 'active customer' in three workbooks. We pick one, put it in the catalogue, and retire the others. That is how we have stopped a forecast being restated after the meeting rather than during it.

Related service: Data insights & strategy

Tell us the problem. We’ll tell you if we can help.

A short conversation is usually enough to know whether this is a two-week discovery or a longer piece of work. No pitch deck.

Book a conversation