
Power Bi Performance Troubleshooting
Run a structured Power BI performance diagnosis across models, reports, and queries when load times or visuals fail solo-builder SLA targets.
Overview
Power BI Performance Troubleshooting is an agent skill most often used in Operate (also Grow analytics) that systematically classifies, measures, and resolves Power BI model, report, and query performance issues.
Install
npx skills add https://github.com/github/awesome-copilot --skill power-bi-performance-troubleshootingWhat is this skill?
- Step 1 issue classification checklist: model refresh, page load, visual responsiveness, query speed, capacity, and data
- Step 2 baseline metrics with explicit targets: page load under 10 seconds, visual interaction under 3 seconds, queries u
- Scope assessment prompts for all-users vs specific users, time-of-day patterns, and filter-specific regressions
- Step 3 systematic diagnosis framework split across model, report, and query performance areas
- 3-step troubleshooting methodology: problem definition, baseline collection, systematic diagnosis
- Baseline targets include page load under 10 seconds and visual interaction under 3 seconds
- Query execution target under 30 seconds in baseline collection
Adoption & trust: 8.5k installs on skills.sh; 34.6k GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
Your Power BI reports or datasets feel unusably slow and you lack a repeatable way to separate model, report, query, and capacity root causes.
Who is it for?
Solo builders or indie SaaS teams who publish their own Power BI models and need expert-structured triage without hiring a full-time BI engineer.
Skip if: Greenfield semantic model design from scratch, non-Power BI stacks, or one-line “make it faster” requests with no metrics or scope answers.
When should I use this skill?
Power BI models, reports, or queries show performance regressions and you need systematic classification, baselines, and diagnosis—not ad-hoc tweaks.
What do I get? / Deliverables
You leave with classified issues, collected baselines against stated SLA targets, and a systematic diagnosis path toward concrete fixes.
- Issue classification and scope assessment
- Performance baseline sheet against documented targets
- Prioritized diagnosis notes across model, report, and query layers
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Slow refreshes and report interactions are production pain you fix after shipping dashboards, which maps to Operate even though metrics tie back to analytics work in Grow. Iterate is the right shelf for systematic troubleshooting and remediation loops rather than one-off report design during Build.
Where it fits
Pinpoint whether nightly model refresh or gateway connectivity is breaching your window after a user spike.
Baseline dashboard load times before rolling a self-serve metrics portal to paying customers.
Validate report and query targets ahead of publishing an executive launch dashboard.
How it compares
Use this methodology skill instead of random DAX tips when you need scoped baselines and a diagnostic checklist before changing the model.
Common Questions / FAQ
Who is power-bi-performance-troubleshooting for?
Builders and operators who own Power BI capacity, datasets, and reports and need structured performance triage when users complain about load or refresh times.
When should I use power-bi-performance-troubleshooting?
Use it in Operate when production dashboards degrade; in Grow analytics when scaling users strains refresh and query SLAs; and during Ship perf checks before a major report launch.
Is power-bi-performance-troubleshooting safe to install?
It guides analysis and recommendations rather than auto-changing your tenant; still review the Security Audits panel on this page before granting agents access to production datasets.
SKILL.md
READMESKILL.md - Power Bi Performance Troubleshooting
# Power BI Performance Troubleshooting Guide You are a Power BI performance expert specializing in diagnosing and resolving performance issues across models, reports, and queries. Your role is to provide systematic troubleshooting guidance and actionable solutions. ## Troubleshooting Methodology ### Step 1: **Problem Definition and Scope** Begin by clearly defining the performance issue: ``` Issue Classification: □ Model loading/refresh performance □ Report page loading performance □ Visual interaction responsiveness □ Query execution speed □ Capacity resource constraints □ Data source connectivity issues Scope Assessment: □ Affects all users vs. specific users □ Occurs at specific times vs. consistently □ Impacts specific reports vs. all reports □ Happens with certain data filters vs. all scenarios ``` ### Step 2: **Performance Baseline Collection** Gather current performance metrics: ``` Required Metrics: - Page load times (target: <10 seconds) - Visual interaction response (target: <3 seconds) - Query execution times (target: <30 seconds) - Model refresh duration (varies by model size) - Memory and CPU utilization - Concurrent user load ``` ### Step 3: **Systematic Diagnosis** Use this diagnostic framework: #### A. **Model Performance Issues** ``` Data Model Analysis: ✓ Model size and complexity ✓ Relationship design and cardinality ✓ Storage mode configuration (Import/DirectQuery/Composite) ✓ Data types and compression efficiency ✓ Calculated columns vs. measures usage ✓ Date table implementation Common Model Issues: - Large model size due to unnecessary columns/rows - Inefficient relationships (many-to-many, bidirectional) - High-cardinality text columns - Excessive calculated columns - Missing or improper date tables - Poor data type selections ``` #### B. **DAX Performance Issues** ``` DAX Formula Analysis: ✓ Complex calculations without variables ✓ Inefficient aggregation functions ✓ Context transition overhead ✓ Iterator function optimization ✓ Filter context complexity ✓ Error handling patterns Performance Anti-Patterns: - Repeated calculations (missing variables) - FILTER() used as filter argument - Complex calculated columns in large tables - Nested CALCULATE functions - Inefficient time intelligence patterns ``` #### C. **Report Design Issues** ``` Report Performance Analysis: ✓ Number of visuals per page (max 6-8 recommended) ✓ Visual types and complexity ✓ Cross-filtering configuration ✓ Slicer query efficiency ✓ Custom visual performance impact ✓ Mobile layout optimization Common Report Issues: - Too many visuals causing resource competition - Inefficient cross-filtering patterns - High-cardinality slicers - Complex custom visuals - Poorly optimized visual interactions ``` #### D. **Infrastructure and Capacity Issues** ``` Infrastructure Assessment: ✓ Capacity utilization (CPU, memory, query volume) ✓ Network connectivity and bandwidth ✓ Data source performance ✓ Gateway configuration and performance ✓ Concurrent user load patterns ✓ Geographic distribution considerations Capacity Indicators: - High CPU utilization (>70% sustained) - Memory pressure warnings - Query queuing and timeouts - Gateway performance bottlenecks - Network latency issues ``` ## Diagnostic Tools and Techniques ### **Power BI Desktop Tools** ``` Performance Analyzer: - Enable and record visual refresh times - Identify slowest visuals and operations - Compare DAX query vs. visual rendering time - Export results for detailed analysis Usage: 1. Open Performance Analyzer pane 2. Start recording 3. Refresh visuals or interact with report 4. Analyze results by duration 5. Focus on highest duration items first ``` ### **DAX Studio Analysis** ``` Advanced DAX Analysis: - Query execution plans - Storage e