- We offer certified developers to hire.
- We’ve performed 500+ Web/App/eCommerce projects.
- Our clientele is 1000+.
- Free quotation on your project.
- We sign NDA for the security of your projects.
- Three months warranty on code developed by us.
Power BI has rapidly become one of the most powerful and user-friendly business intelligence tools in the market. With its intuitive drag-and-drop interface, vast data connectivity options, and rich visualizations, it allows users — from beginners to data analysts — to build insightful dashboards and reports quickly. However, beyond its core capabilities, Power BI offers advanced customization features that enable users to create tailored visual experiences. Among these, themes and templates are critical for achieving brand consistency, enhanced readability, and efficient report development.
This first part of our article series will dive deep into the fundamentals of Power BI themes and templates, why they matter, and how to start customizing them to elevate your reporting projects.
In the simplest terms, a theme in Power BI is a collection of colors, fonts, and visual settings that govern the appearance of your reports and dashboards. Think of themes as the “style guides” for your data visualizations — much like how brands use consistent colors, fonts, and design elements across their websites and marketing materials to maintain a unified look.
Power BI themes control the default colors of charts, backgrounds, titles, and other visual elements, allowing you to:
Applying a theme is essential for several reasons:
Power BI provides several built-in themes, such as Default, Dark, Color Blind, and High Contrast, which users can apply instantly. These are good starting points but often fall short for organizations with specific branding needs.
This is where custom themes come in. Custom themes allow you to create your own color palettes, specify font families and sizes, and tweak other visual properties using JSON (JavaScript Object Notation) files.
A JSON theme file defines colors and visual styles using a structured syntax, which Power BI reads to apply consistent formatting across all report elements.
Understanding the structure of the JSON file is the first step toward customizing your own theme.
Here is a simple example of a theme JSON file:
{
“name”: “Custom Corporate Theme”,
“dataColors”: [“#004B8D”, “#00A2E8”, “#F15A22”, “#FBB03B”, “#FFFFFF”],
“background”: “#FFFFFF”,
“foreground”: “#333333”,
“tableAccent”: “#004B8D”
}
More complex JSON files can include settings for fonts, visual styles, specific formatting of titles, labels, buttons, and more.
To create a custom theme, you can either:
Identify the primary and secondary colors that represent your brand. These colors will be used in charts and backgrounds. For example, if your company uses blue and orange, you might pick several shades of these colors for the palette.
Open a text editor like VS Code or Notepad++ and start with the basic template above. Insert your brand colors in the “dataColors” array and set your preferred background and foreground colors.
Once applied, review how your theme looks on various visuals. Some colors might need tweaking for better contrast or readability. You can continue editing your JSON file and re-uploading it until satisfied.
Beyond basic color settings, Power BI themes support more granular customization options including:
You can define fonts and sizes for titles, labels, and tooltips. For example:
“visualStyles”: {
“*”: {
“*”: {
“titleText”: [{
“fontFamily”: “Segoe UI”,
“fontSize”: 14,
“color”: {“solid”: {“color”: “#004B8D”}}
}]
}
}
}
Themes can specify formatting for particular visual types, such as bar charts, line charts, or slicers, allowing for precise control over how each visual element appears.
Buttons can be styled for hover, pressed, and default states, making interactive reports more intuitive.
Though not part of themes per se, templates can embed custom icons and images alongside themes, allowing full branding integration.
While themes control the appearance, templates govern the structure and content framework of Power BI reports. A template is a Power BI file (.PBIT) that includes:
Templates serve as reusable blueprints for building reports with consistent data logic and styling.
Start by creating a report with the data model, visuals, and theme settings you want to standardize.
Share the template with team members or clients.
When a user opens the template, Power BI prompts them to provide data source parameters or new datasets, allowing them to generate customized reports without altering the core structure.
Templates and themes complement each other perfectly:
In later parts of this article, we will explore how to create advanced themes, develop complex templates, and use external tools to manage and deploy them at scale.
In Part 1, we introduced the concepts of Power BI themes and templates, explained why they are essential for branding and consistency, and covered how to create basic custom themes using JSON files. Now, we’ll take a deeper dive into advanced theme customization by exploring more complex JSON structures, practical design strategies, and real-world examples to help you craft highly polished and professional Power BI themes.
To effectively customize themes beyond basic colors, it’s important to understand the key JSON elements that Power BI uses to style reports. Let’s break down the main components you can control:
Power BI reads this JSON file when you load a theme and applies the styling across all visuals in your report.
Your dataColors array defines the color cycle used in charts like bar charts, pie charts, and line graphs. Choosing the right palette is crucial for clarity and aesthetics.
Tips for color palettes:
Example:
“dataColors”: [
“#1F77B4”, “#FF7F0E”, “#2CA02C”, “#D62728”, “#9467BD”,
“#8C564B”, “#E377C2”, “#7F7F7F”, “#BCBD22”, “#17BECF”
]
The background and foreground properties define the overall canvas and default text color.
“background”: “#F5F5F5”,
“foreground”: “#333333”
Light backgrounds with dark foregrounds are common, but dark themes (dark background, light foreground) are also popular for their modern look and reduced eye strain.
The visualStyles object is where you can specify styles for each visual type, such as bar charts, line charts, tables, slicers, and cards. This enables granular control over titles, labels, borders, and more.
“visualStyles”: {
“visualType”: {
“*”: {
“property”: [
{
“property1”: “value1”,
“property2”: “value2”
}
]
}
}
}
Let’s customize bar chart titles, data labels, and axis labels for consistency.
“visualStyles”: {
“barChart”: {
“*”: {
“titleText”: [
{
“fontSize”: 16,
“fontFamily”: “Segoe UI”,
“color”: { “solid”: { “color”: “#004B8D” } },
“fontWeight”: “bold”
}
],
“categoryLabels”: [
{
“color”: { “solid”: { “color”: “#666666” } },
“fontSize”: 12
}
],
“valueLabels”: [
{
“color”: { “solid”: { “color”: “#222222” } },
“fontSize”: 12,
“fontWeight”: “normal”
}
],
“axis”: [
{
“color”: { “solid”: { “color”: “#999999” } }
}
]
}
}
}
Cards and KPI visuals often highlight key metrics, so styling them for emphasis is useful.
“visualStyles”: {
“card”: {
“*”: {
“label”: [
{
“fontSize”: 24,
“color”: { “solid”: { “color”: “#E15759” } },
“fontFamily”: “Calibri”,
“fontWeight”: “bold”
}
],
“categoryLabel”: [
{
“fontSize”: 14,
“color”: { “solid”: { “color”: “#444444” } }
}
]
}
}
}
Power BI lets you define text styles via textClasses and textFormats to standardize fonts across titles, headers, tooltips, and labels.
“textClasses”: {
“title”: {
“fontSize”: 18,
“fontFamily”: “Arial”,
“fontWeight”: “bold”,
“color”: { “solid”: { “color”: “#1A1A1A” } }
},
“header”: {
“fontSize”: 14,
“fontFamily”: “Arial”,
“fontWeight”: “semibold”,
“color”: { “solid”: { “color”: “#3F3F3F” } }
},
“label”: {
“fontSize”: 12,
“fontFamily”: “Arial”,
“fontWeight”: “normal”,
“color”: { “solid”: { “color”: “#666666” } }
}
}
Applying this ensures consistency in font styling throughout your report.
Slicers (filter visuals) play an important role in interactivity. Customizing their appearance improves usability.
Example:
“slicer”: {
“*”: {
“background”: [
{
“color”: “#F0F0F0”
}
],
“border”: [
{
“color”: “#CCCCCC”,
“weight”: 1
}
],
“header”: [
{
“fontSize”: 14,
“color”: “#444444”,
“fontFamily”: “Segoe UI”
}
]
}
}
This creates a light grey background with subtle borders and clear header text for slicers.
To improve interactivity, themes can customize how visuals look when users hover over or select items.
Example for selection:
“selection”: {
“color”: “#FFAA00”,
“opacity”: 0.9
}
This will highlight selected data points in a warm orange with high opacity.
Let’s combine everything to build a professional corporate theme JSON example, step by step:
{
“name”: “Corporate Blue Theme”,
“dataColors”: [“#004B8D”, “#007ACC”, “#00A2E8”, “#F15A22”, “#FBB03B”],
“background”: “#FFFFFF”,
“foreground”: “#333333”,
“tableAccent”: “#004B8D”,
“visualStyles”: {
“barChart”: {
“*”: {
“titleText”: [
{
“fontSize”: 16,
“fontFamily”: “Segoe UI”,
“color”: { “solid”: { “color”: “#004B8D” } },
“fontWeight”: “bold”
}
],
“categoryLabels”: [
{
“color”: { “solid”: { “color”: “#666666” } },
“fontSize”: 12
}
]
}
},
“card”: {
“*”: {
“label”: [
{
“fontSize”: 22,
“color”: { “solid”: { “color”: “#007ACC” } },
“fontFamily”: “Calibri”,
“fontWeight”: “bold”
}
],
“categoryLabel”: [
{
“fontSize”: 14,
“color”: { “solid”: { “color”: “#444444” } }
}
]
}
}
},
“textClasses”: {
“title”: {
“fontSize”: 18,
“fontFamily”: “Segoe UI”,
“fontWeight”: “bold”,
“color”: { “solid”: { “color”: “#004B8D” } }
},
“header”: {
“fontSize”: 14,
“fontFamily”: “Segoe UI”,
“fontWeight”: “semibold”,
“color”: { “solid”: { “color”: “#444444” } }
}
},
“slicer”: {
“*”: {
“background”: [
{
“color”: “#F5F5F5”
}
],
“border”: [
{
“color”: “#CCCCCC”,
“weight”: 1
}
],
“header”: [
{
“fontSize”: 14,
“color”: “#333333”,
“fontFamily”: “Segoe UI”
}
]
}
}
}
Manually writing JSON can be tedious and error-prone. Luckily, several tools help simplify theme creation:
An intuitive web-based tool where you pick colors and fonts through a UI and export JSON files. Example: https://themes.powerbi.tips
Use Visual Studio Code with JSON validation and syntax highlighting for easy editing and error detection.
Power BI Desktop allows you to import and switch themes, but does not provide an editor for JSON files.
After creating your theme JSON:
In the previous parts, we explored the fundamentals of Power BI themes and how to customize them with JSON files, including advanced styling techniques. Now, we shift our focus to Power BI Templates (PBIT files) — an incredibly powerful feature that allows report creators to package everything from themes to data models and queries into reusable, parameterized files. Templates help save time, ensure consistency, and enable scalable report deployment across projects.
A Power BI Template (.pbit) is a file format that contains:
However, unlike the standard .pbix file, a PBIT file does not contain the actual data. When opening a template, users are prompted to provide required parameters such as file paths, database credentials, or filter values to populate the report with fresh data.
This makes templates ideal for:
Start by creating your report in Power BI Desktop as usual:
To make the template flexible, define parameters in Power Query for data source inputs.
Example: If your data comes from an Excel file, create a parameter for the file path.
In the Power Query Editor, replace hardcoded paths with the parameter. For example:
Excel.Workbook(File.Contents(SourceFilePath), null, true)
This enables the user to specify a different file when opening the template.
Once parameterized, go to:
File > Export > Power BI template
You’ll be prompted to enter:
Save the .pbit file.
When users open a PBIT file:
Templates can have multiple parameters, such as:
Example:
Parameters can be used within queries or measures to dynamically control data loading.
Use parameters inside Power Query M code for dynamic filtering.
Example to filter a SQL query by a parameter:
Source = Sql.Database(ServerName, DatabaseName),
FilteredTable = Table.SelectRows(Source, each [Date] >= ReportDate)
You can embed your custom theme into the report before exporting the template, so every user opening the template has the same branded look.
Use consistent, meaningful names for parameters, queries, and measures. This helps users understand the template and reduces errors.
Example:
Avoid including huge data loads inside templates. Since PBIT files don’t store data, optimize queries to only retrieve necessary data when parameters are entered.
Create a clear description for each parameter during template export. Also, include a ReadMe page in your report describing:
This improves usability for end users.
Maintain a versioning system (e.g., v1.0, v1.1) to track template changes over time. When you update your template:
Templates are easy to share since they contain no data:
For enterprises, templates can be integrated into automated deployment pipelines or embedded into larger Power BI projects.
Create a sales report template parameterized by the sales region and month.
A financial analyst services multiple clients with the same report structure but different datasets.
An executive dashboard with company branding (theme embedded) and parameters for fiscal year and business unit.
You can further strengthen report consistency by combining:
Before exporting your template, apply your custom theme in Power BI Desktop. This way, every time the template is opened, the theme’s look and feel will be preserved.
In the previous parts, we covered the basics and intermediate concepts of Power BI themes and templates, including how to create and customize them, embed themes in templates, and use parameters for dynamic data. Now, we turn to advanced enterprise-level applications, focusing on managing themes and templates at scale, automation techniques, governance, and how to streamline deployment in organizational environments.
For large organizations, managing multiple Power BI reports consistently across different teams and departments can be challenging. Power BI themes and templates offer a strategic way to enforce branding, layout standards, and data governance.
Instead of each team or report creator customizing their own themes, organizations benefit from:
By centralizing themes, you ensure consistent color palettes, fonts, and layout standards are enforced across all reports and dashboards.
Power BI templates can be governed similarly:
Manual distribution and updating of themes and templates can be inefficient and error-prone, especially in fast-growing organizations. Automation can improve scalability and reduce errors.
Power BI’s REST API and PowerShell modules allow automated management of workspaces, datasets, reports, and deployments. While themes and templates themselves aren’t directly “pushed” via API, you can automate related tasks such as:
Example workflow:
This approach enables organizations to maintain a library of standard reports built from templates and keep them up-to-date without manual intervention.
Microsoft Power Automate can be used to build workflows that interact with Power BI:
By integrating Power Automate, BI teams can streamline governance and deployment processes.
Templates can go beyond simple static parameters by using advanced Power Query techniques and calculated tables/measures to make reports highly dynamic.
Using DAX measures, you can create dynamic titles and labels that change based on selected parameters or slicers:
ReportTitle =
“Sales Report for ” & SELECTEDVALUE(‘Region'[RegionName], “All Regions”)
This improves user experience by clearly showing what data slice they are viewing.
Create multi-level parameter hierarchies where one parameter’s choice filters available options for another.
Example:
Implementing this requires careful query design with conditional filters in Power Query and/or DAX.
Embedding themes inside templates ensures reports open with correct branding, but there are additional techniques to customize themes dynamically:
Within Power BI Desktop, you can create multiple themes (e.g., light and dark mode) and use bookmarks and buttons to switch themes on the fly:
This provides flexibility to users without needing to open different files.
Instead of embedding a theme inside the template, some organizations prefer linking to external theme JSON files stored on a network or cloud location.
This approach simplifies updating themes across multiple templates without needing to re-export each one.
Optimizing themes and templates is essential to maintain report performance:
Templates often connect to sensitive enterprise data sources. Key considerations:
Successful enterprise adoption requires:
A multinational retailer struggled with inconsistent sales reports from regional teams. They:
Result: Increased report consistency, faster report creation, and improved data-driven decision-making.
In the previous parts, we explored the foundations, customization techniques, advanced usage, and enterprise deployment of Power BI themes and templates. In this final part, we focus on best practices for effective theme and template use, common challenges encountered by users, and the evolving future landscape of Power BI customization.
Before creating themes, define your organization’s branding guidelines:
A consistent brand language ensures your reports build trust and recognition.
While Power BI allows extensive customization, avoid overcomplicating themes:
A clean theme enhances readability and user experience.
Design templates with modularity so they can adapt easily to different data or business needs:
This approach saves time and enables scalability.
Documentation is critical for team adoption:
Well-documented assets reduce onboarding time for new users.
Always test your themes and templates:
Power BI’s theme JSON schema supports many visual elements but doesn’t cover everything (e.g., some custom visuals may not respect theme colors).
Solution:
Manually adjust visuals not fully controlled by themes, and test frequently to identify limitations. Engage with Microsoft Power BI community and updates for new features.
Managing many templates and themes can cause version confusion and outdated assets.
Solution:
Use version control systems (Git, Azure DevOps) and maintain a catalog with metadata, changelogs, and owners. Automate notifications on updates.
Templates may connect to different data sources across teams, leading to broken queries or inconsistent data models.
Solution:
Design templates with flexible query parameters and fallback defaults. Train users to update connection strings properly.
Users may prefer building reports from scratch, ignoring templates.
Solution:
Promote the benefits of templates: faster development, consistency, and quality. Provide incentives, training, and support.
Power BI does not natively support dynamic theme switching by end users inside reports.
Solution:
Implement workarounds using bookmarks or buttons as described earlier. Microsoft may introduce this feature in future releases, so keep an eye on updates.
Power BI is rapidly evolving, and several trends will shape the future of themes and templates:
Microsoft continues to expand the theme JSON schema and introduces support for more visual elements and custom visuals. Expect more granular control over fonts, shadows, effects, and responsive design options.
Incorporating AI to analyze your data and suggest optimal color palettes and layouts for accessibility and impact is becoming a reality. This will help users design visually compelling reports faster.
As Power BI integrates deeper with the Microsoft cloud ecosystem, expect centralized, cloud-based template repositories with access control, versioning, and collaboration features integrated with Teams and SharePoint.
Future Power BI versions may allow users to switch themes and layouts dynamically without needing report edits, enabling personalized reporting experiences.
For developers embedding Power BI in applications, enhanced APIs will allow dynamic theme and template manipulation, enabling white-label reporting solutions tailored to each customer’s brand.
Customizing Power BI themes and templates is a powerful way to unify your organization’s reporting, reduce development time, and enhance report aesthetics and usability. From defining brand colors and fonts to creating advanced, parameterized templates for enterprise deployment, the journey requires planning, iteration, and governance.
By following best practices, overcoming common challenges, and staying informed about future enhancements, you can unlock the full potential of Power BI’s customization features. This not only empowers report creators but also drives better data-driven decision-making across your organization.
If you want, I can also help you with:
Just let me know!
Book Your Free Web/App Strategy Call
Get Instant Pricing & Timeline Insights!