Skip to content
InsyteGroup
All insights

Business Intelligence

When Power BI looks like Power BI: breaking out of the default visuals

Rachel Mayuga

2 November 2026 · 7 min read

Deneb, HTML and SVG let you show data the way it needs to be shown, not just make it look good. Here’s how far you can take them, and when to stay native.

Why this matters

A lot of Power BI reports look the same, because we all start from the same visuals and default settings. For me, it’s not just about looking fancy: often the standard visuals don’t show the data the way it needs to be shown. And stakeholders are used to well-designed apps and websites now, so a plain default report can feel a bit dated next to them.

Where native visuals run out

Native visuals are good, but they have limits:

  • You can change colours and fonts, but not how a chart is built. Some charts clients ask for, like dumbbell or bullet charts, aren’t available natively at all.
  • Even where a native chart exists, like the funnel, the layout is fixed. Its labels sit on the bars, so you can’t line up percentage and value columns neatly beside each one.
  • Once you want text, an icon and a trend line in the same box, conditional formatting runs out.
  • Workarounds like layering shapes work, but they break easily. Marketplace visuals tie you to the vendor’s design and often a paid licence.

Funnel-style chart of actual hours by phase, with percentage and value columns aligned beside each bar

Deneb: charts that don’t exist natively

Deneb is a free, certified custom visual where you write the chart yourself in Vega or Vega-Lite, which is basically a JSON way of describing a chart.

It still works like a normal visual, with filters, cross-filtering and tooltips. Unlike R or Python visuals, it doesn’t need anything extra installed.

I use it for charts we can’t build natively, like dumbbell charts or actuals with a target marker. I also use it for small details like label placement, rounded bars or a shaded target band. Charts can be saved as templates and reused, so the next one is much quicker.

It’s not a replacement for the standard visuals, which cover maybe 90% of what we build. It’s also not only for developers, since the built-in templates make it easy to get started.

In my own work, I took a template bar chart and restyled it in the Config tab with rounded bars, lighter gridlines and cleaner labels. By the end it looked noticeably different from a default Power BI chart.

The same Deneb bar chart twice: the original, with blue bars, gridlines and a tooltip, and restyled with rounded dark grey bars, lighter gridlines and cleaner labels

HTML and SVG: cards and tables that look like a product

There are two ways I do this:

  • The HTML Content Secure visual, which shows HTML and CSS written in a DAX measure.
  • SVG written in DAX, shown as an image in a table, matrix or card.

Because it’s all DAX, it responds to filters like any other measure.

In a Sales BI demo report, I replaced the standard KPI cards with 18 HTML ones across four pages. Each shows the value, the change vs last year with a green or red arrow, an icon, and a sparkline drawn as SVG in DAX. On hover, the card switches to a branded gradient and shows a breakdown, like won vs lost deals. Some cards use a progress ring or bar instead of a sparkline.

HTML KPI cards in their default state and on hover: an order count card with a sparkline and a gross margin card with a progress ring, each switching to a gradient with a breakdown

The SVG-only route is handy when a client’s IT team doesn’t allow custom visuals. For a fuller example of reporting designed to match a brand, read when BI has to feel like the brand.

Which one to use

ApproachBest forSkills neededInteractivity
Native visualsStandard charts, self-service reportsPower BI basicsFull
DenebBespoke chart types, annotated or layered chartsVega / Vega-Lite (JSON)Cross-filter, highlight, tooltips
HTML Content SecureBranded cards, narrative text, web-style layoutsDAX + HTML/CSSCross-filter and tooltips when set up with row context, otherwise mostly display only
SVG in DAXSparklines, progress bars, icons in tables and cardsDAX + SVGInherits from the host visual

Before going custom, check:

  • Can the client maintain it?
  • Does it slow the page with real data?
  • Does it meet contrast and alt text requirements? Our standard is a contrast ratio of at least 4.5:1, and colour is never the only way to show status.
  • Does the tenant allow custom visuals?

Stick to Microsoft certified visuals. Uncertified custom visuals can break standard functionality, such as exporting a report to PDF or PowerPoint, where they show an error instead of rendering. For HTML that means using HTML Content Secure, the certified edition, and never the regular HTML Content visual. Deneb is certified too. Always check before adding any other custom visual.

Don’t remove the interactions people expect. A custom visual should still behave like the rest of the report. For example, selecting a row in a table should still filter the charts around it. Test cross-filtering, highlighting and tooltips with the other visuals on the page before you hand over. If a custom visual breaks that, the report gets harder to use, however good it looks.

We work to team standards

Going custom doesn’t mean going freestyle. We build a lot of BI at InsyteGroup, and several people often work on the same project. We know custom visuals add to the maintenance burden, so we have rules and standards that the whole BI team follows, and a report built by one person can be picked up and changed by another. The main principles are:

  • Native first. Go custom only when it adds something a native visual can’t. Slicers, maps, navigation, and tables and matrices (unless there’s a very specific reason and a way to export the data) are better left to the standard visuals.
  • Separate the data from the styling. The data comes from its own measures, and every styling value is a variable, so rebranding for a new client is quick.
  • Document everything. We document all our reports as standard, and custom visuals make that even more important for maintainability. We record which visuals are custom, the measures behind them and any trade-offs.

The standards are reviewed regularly, because Microsoft keeps adding native features and some of the rules may no longer be needed.

Practical tips from the field

  • Sketch it first. For Deneb, picture your data as a table so you know what each mark represents.
  • Keep a library of templates and SVG measures, with brand colours in one place.
  • Comment your DAX, because the next person to open it might not be you.
  • Use AI tools for a first draft of a spec or SVG string, but always tweak it by hand.
  • Keep it to a few custom visuals, placed where they add the most.

Why I enjoy this work

Power BI can do a lot more than most reports show. Usually it’s the default visuals holding things back, not the tool itself. Deneb and HTML/SVG let us build the report around what the user needs to see.

I like that it sits somewhere between development and design. You still need solid DAX and a good model underneath, but then you get to think about how the report actually looks and feels for the person using it.

For me it’s a nice challenge too. When someone says Power BI can’t do something, I usually want to find a way to make it work.

Was this article useful?

Share this articleLinkedInEmail

Want to talk it through?

We’re always happy to talk through what this could look like for your business.

Technologies we work with