How-To
How to Import a Theme in Power BI Desktop and the Service
TL;DR
In Power BI Desktop, open the Design ribbon and select Import theme, then choose the theme's JSON file. Power BI validates it and confirms, or names the property it couldn't read. Visuals you formatted by hand keep their formatting until you use Reset to default. Older Desktop builds put the same command under View > Themes > Browse for themes. In the Power BI service, edit the report and use the Theme pane.
Importing a theme takes seconds; the steps below also cover the two things that make people think it failed: validation errors and visuals that ignore the theme.
Step 1: Get a theme JSON file
Download one from the VizForge theme gallery, build one from your brand colours in the Theme Lab, or export one from the Design Studio with your page background embedded. You can also export the current theme from another report with Design > Download theme.
Step 2: Optional: validate it first
Download reportThemeSchema-2.159.json (the October 2026 schema) from the microsoft/powerbi-desktop-samples repository, put it next to your theme and add a $schema property pointing at it. VS Code underlines anything Power BI would reject.
my-theme.json
{
"$schema": "reportThemeSchema-2.159.json",
"name": "My Theme",
"dataColors": ["#2563EB", "#F59E0B", "#10B981", "#8B5CF6"]
}Step 3: Import it in Power BI Desktop
Open the report, go to the Design ribbon and select Import theme, then choose the JSON file. The same command is in Customize theme > Theme settings > Import theme. In older Desktop builds use View > Themes > Browse for themes.
Step 4: Read the result dialog
Power BI shows a success message, or an error naming the problem in the file. Fix that property (often a formatting card written as an object instead of an array, or an invalid enum value such as a legend position) and import again.
Step 5: Reset visuals that ignore the theme
Visuals formatted by hand keep that formatting. Select the visual and choose Reset to default in the format pane. Note that this also removes its conditional formatting, button and image actions, and data-bound images, so reapply those afterwards.
Step 6: Check text and gridlines, especially for dark themes
Look at a table, a slicer and a chart with data labels. If labels or gridlines are hard to read, the theme is missing structural colours such as firstLevelElements, secondLevelElements and thirdLevelElements. Microsoft's checklist asks for at least 4.5:1 text contrast.
Step 7: Apply it in the Power BI service (optional)
Open the report in the service, select Edit, and use the Theme pane to import, export or customise the theme. The Design ribbon commands are Desktop only.
What importing replaces
Importing a theme replaces the report's current custom theme, including changes made in the Customize theme dialog. It doesn't touch formatting set directly on visuals.
Themes can't include conditional formatting rules, because those depend on fields in a specific model. Set them on each visual after the theme.
If your report is saved as a PBIP project, the imported theme is stored as a JSON file in StaticResources/RegisteredResources, where you can review it in Git.
FAQ
Where is Import theme in Power BI Desktop?
On the Design ribbon. It's also in Customize theme > Theme settings. Older builds had it under View > Themes > Browse for themes.
Why does Power BI say my theme is invalid?
The file contains a property or value the schema doesn't allow. Validate it against reportThemeSchema-2.159.json in VS Code to see exactly which line, then import again.
Why didn't the theme change my visuals?
They have manual formatting, which takes priority. Use Reset to default on each visual, keeping in mind it also clears conditional formatting and actions.
Sources
- Microsoft Learn: Use report themes in Power BI
- Microsoft Learn: Create custom report themes in Power BI Desktop
- GitHub: Report Theme JSON Schema
Related reading
Download AA-contrast Power BI themes.
Generate a theme from your brand colours.
textClasses, visualStyles and embedded backgrounds explained.
What Fluent 2 sets by default and which theme keys override it.
Fluent 2 base theme defaults and the Update theme banner.
About the author
Nawaf Sharaf · Founder & Reliability Engineer
Nawaf is a reliability engineer and long-time Power BI practitioner, and the founder of VizForge. He builds the product solo — the AI generation pipeline, the visual code generator, and this site — from the perspective of someone who has spent years shipping Power BI reports in production.
Cite this article as:
VizForge. “How to Import a Theme in Power BI Desktop and the Service.” November 4, 2026. https://vizforge.ai/blog/how-to-import-power-bi-theme