Monthly spending trend
Tracks the company's monthly spending evolution sorted chronologically. Particularly useful for budget performance reviews and trend detection.
87/100ยท๐ MonthlyยทBeginnerCFOFinance Analyst
Spend analysisReportsspendesk_analyze_spend
๐ฏ Skill purpose
Tracks the company's monthly spending evolution sorted chronologically. Particularly useful for budget performance reviews and trend detection.
๐ What it produces
Monthly chronological spending series with amounts and month-over-month changes.
โก Benefit
Before
Manual construction of a monthly table from multiple exports and an Excel pivot.
After
Monthly trend curve ready in 30 seconds, directly usable in meetings.
# Instructions โ Monthly spend trend
## โ ๏ธ Default sort = descending amount (not chronological)
Without `sortBy`, months are returned from highest to lowest:
```
2026-01 (10.7%) โ 2025-12 (10.3%) โ 2025-10 (9.4%) โ ...
```
For a **chronological trend chart**, always specify:
```json
"sortBy": "name",
"sortOrder": "asc"
```
โ Months are then returned in order `2025-07 โ 2025-08 โ ... โ 2026-06`.
## โ ๏ธ Use limit=12 for a full year
By default `limit=10` โ for a groupBy=month over 12 months, the 2 least significant months fall into "Others". Always pass `limit=12` (or `limit=24` for 2 years).
## โ ๏ธ Partial last month
If the period includes the current month, the last month will show a lower amount (partial data).
Always state: *"Data for [current month] is partial."*
## Step 1 โ Monthly call
```json
{
"companyId": "...",
"fromDate": "YYYY-MM-DD",
"toDate": "YYYY-MM-DD",
"groupBy": ["month"],
"sortBy": "name",
"sortOrder": "asc",
"limit": 12
}
```
## Step 2 โ Interpreting the fields
Each row:
- `key`: `"YYYY-MM"` โ month in ISO format (e.g. `"2025-07"`)
- `amount`: total spend for the month (integer coefficient, divide by 10^precision)
- `count`: number of payables in the month
- `share`: % of the period total
## Step 3 โ Calculating trend metrics
```
monthly_average = summary.totalAmount / number_of_months
max_month = max(data[].amount)
min_month = min(data[].amount)
month_over_month_change = (month_n.amount - month_n-1.amount) / month_n-1.amount ร 100
```
## Step 4 โ Detecting anomalies
Alert on:
- Month with very low `count` but high `amount` โ a few large invoices
- Month with change > ยฑ30% vs the previous month โ spike or dip to explain
- Incomplete current month โ mention explicitly
## Live example (real data, Jul 2025 โ Jun 2026, sorted by amount โ not by date)
| Rank | Month | Amount (EUR) | Count | Share |
|------|------|--------------|-------|-------|
| 1 | 2026-01 | 1,769,755 | 605 | 10.7% |
| 2 | 2025-12 | 1,697,623 | 666 | 10.3% |
| 3 | 2025-10 | 1,554,335 | 774 | 9.4% |
| 4 | 2026-02 | 1,531,954 | 742 | 9.3% |
| 5 | 2026-03 | 1,464,520 | 688 | 8.9% |
| 6 | 2025-08 | 1,457,602 | 339 | 8.8% |
| 7 | 2026-04 | 1,368,217 | 801 | 8.3% |
| 8 | 2025-11 | 1,290,375 | 652 | 7.8% |
| 9 | 2025-07 | 1,200,645 | 387 | 7.3% |
| 10 | 2025-09 | 1,149,472 | 444 | 7.0% |
| 11 | 2026-05 | 1,129,378 | 492 | 6.8% |
| 12 | 2026-06 | 910,700 | 609 | 5.5% |
โ No "Others" row โ
(limit=12 = 12 months)
โ Total: EUR 16,524,574.27 over 12 months
โ Monthly average: **~EUR 1,377,048/month**
โ June 2026 is the lowest (partial data โ month in progress at the time of the test)
With `sortBy=name, sortOrder=asc`: the same data would be returned in the order jul-25, aug-25, ..., jun-26.
## Example prompt
- "Show the trend of our spend over the last 12 months" โ groupBy=month, sortBy=name, sortOrder=asc, limit=12
- "Which month did we spend the most?" โ groupBy=month, sortBy=amount (default), limit=1
- "Month-by-month evolution since January 2026" โ fromDate=2026-01-01, toDate=today, groupBy=month, sortBy=name
How to install this skill
/
- 1Download the file
s06-monthly-trend.mdusing the button above. - 2Place the file in the
.claude/directory of your project (or~/.claude/for a global install).cp s06-monthly-trend.md .claude/s06-monthly-trend.md - 3Use in Claude Code โ the skill is automatically discovered. Describe your need in natural language and Claude will apply the skill instructions.
๐ก Make sure the Spendesk MCP is configured in your
.claude/settings.json with the tools spendesk_analyze_spend.Similar skills
โ
Top