aurelienclere-365/bpa-cowork-plugin/bpa-budget-variance

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Analyzes budget vs actuals variance from Dynamics 365 Business Performance Analytics. Covers favorable/unfavorable variances, budget utilization, forecast vs budget, re-forecasting analysis, and spend-to-budget ratios by cost center, department, or GL account. Use when asked: "budget vs actuals", "how are we tracking against budget", "show me the variance report", "which departments are over budget", "budget utilization", "favorable and unfavorable variances", "are we on track with forecast", "spend vs budget by cost center", "budget adherence", "forecast accuracy", "remaining budget", "encumbrance analysis", "how much budget is left".

Install

npx vskill@latest install aurelienclere-365/bpa-cowork-plugin/bpa-budget-variance

SKILL.md

BPA Budget vs Actuals Variance Analysis

What This Skill Does

Queries BPA to deliver FP&A-grade budget and forecast analysis:

  • Budget vs Actuals: Side-by-side with variance (amount and %)
  • Favorable/Unfavorable classification: Revenue over-budget = favorable; expense over-budget = unfavorable
  • Budget utilization: % of budget consumed year-to-date
  • Remaining budget: Budget minus actuals, projected vs remaining
  • Forecast accuracy: Forecast vs actuals for closed periods
  • Dimension drill-down: By cost center, department, GL account, or legal entity
  • Encumbrance/commitment: Committed spend not yet invoiced vs remaining budget

Prerequisites

  • BPA connector active (uses get_bpa_dataset_schema and execute_dax_query tools)
  • Budget data must be loaded in D365FO Budget module and synced to BPA
  • BPA User role in Power Platform environment

Workflow

Step 1 — Discover schema

Call get_bpa_dataset_schema to identify:

  • Budget and actuals measure names
  • Available forecast versions (original budget, revised budget, latest forecast)
  • Dimension hierarchies (cost center, department, main account)
  • Fiscal calendar structure
Step 2 — Clarify scope

Ask for:

  • Period: YTD, specific quarter, full fiscal year, or specific month
  • Dimension: All, by department, by cost center, or by GL account
  • Budget version: Original budget or latest forecast
  • Focus: Revenue side, expense side, or full P&L variance
Step 3 — Execute DAX queries

Full P&L Budget vs Actuals (YTD):

dax
EVALUATE
SUMMARIZECOLUMNS(
'MainAccount'[AccountCategory],
'MainAccount'[AccountName],
FILTER('Date', 'Date'[FiscalYear] = 2024 && 'Date'[FiscalPeriodNumber] <= 9),
"Actual", [Total Actuals],
"Budget", [Total Budget],
"Variance Amount", [Total Actuals] - [Total Budget],
"Variance %", DIVIDE([Total Actuals] - [Total Budget], ABS([Total Budget])),
"Budget Utilization %", DIVIDE([Total Actuals], [Total Budget])
)
ORDER BY ABS([Total Actuals] - [Total Budget]) DESC

Department spend vs budget:

dax
EVALUATE
SUMMARIZECOLUMNS(
'Department'[DepartmentName],
FILTER('Date', 'Date'[FiscalYear] = 2024),
"YTD Actual", [Total Actuals],
"YTD Budget", [Total Budget],
"Variance", [Total Actuals] - [Total Budget],
"Variance %", DIVIDE([Total Actuals] - [Total Budget], ABS([Total Budget])),
"Remaining Budget", [Total Budget] - [Total Actuals],
"Budget Used %", DIVIDE([Total Actuals], [Total Budget])
)
ORDER BY [Variance] DESC

Monthly actuals vs budget trend (rolling 12 months):

dax
EVALUATE
SUMMARIZECOLUMNS(
'Date'[FiscalYear],
'Date'[FiscalPeriodName],
"Actual", [Total Actuals],
"Budget", [Total Budget],
"Variance", [Total Actuals] - [Total Budget],
"Cumulative Actual", CALCULATE([Total Actuals], DATESYTD('Date'[Date])),
"Cumulative Budget", CALCULATE([Total Budget], DATESYTD('Date'[Date]))
)
ORDER BY 'Date'[FiscalYear], 'Date'[FiscalPeriodName]

Top over-budget cost centers:

dax
EVALUATE
TOPN(
10,
SUMMARIZECOLUMNS(
'CostCenter'[CostCenterName],
FILTER('Date', 'Date'[FiscalYear] = 2024),
"Actual", [Total Actuals],
"Budget", [Total Budget],
"Over Budget Amount", [Total Actuals] - [Total Budget]
),
[Over Budget Amount],
DESC
)
If measure names differ, call get_bpa_dataset_schema and adapt accordingly.
Step 4 — Present results

Variance summary table:

DepartmentActualBudgetVarianceVar%Status
Sales850,000900,000-50,000-5.6%Under budget (favorable)
IT420,000380,000+40,000+10.5%Over budget (unfavorable)

Variance classification rules:

  • Revenue: Actual > Budget = Favorable (+), Actual < Budget = Unfavorable (-)
  • Expense: Actual < Budget = Favorable (+), Actual > Budget = Unfavorable (-)

Include summary KPIs:

Total variance: -€35K (unfavorable) | Budget utilization: 78% | Departments over budget: 3 of 12

Key FP&A Metrics

MetricDescription
Budget Utilization %Actual / Budget — above 100% = over budget
Variance %(Actual - Budget) /Budget
Run RateAnnualized actual based on YTD spend
Budget at RiskRemaining budget × expected spend rate

Example Prompts That Trigger This Skill

  • "Show me budget vs actuals for FY2024 YTD"
  • "Which departments are over budget?"
  • "What is our budget utilization by cost center?"
  • "Show me the variance report for Q3 2024"
  • "How much budget is left for IT this year?"
  • "Are we on track to hit our revenue budget?"
  • "Show me favorable and unfavorable variances for this month"
  • "What is the forecast vs original budget for Q4?"

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/aurelienclere-365/bpa-cowork-plugin/bpa-budget-variance/badge)](https://verified-skill.com/skills/aurelienclere-365/bpa-cowork-plugin/bpa-budget-variance)

Something wrong with this skill or its page? Tell us.