hermes

Analyse sales performance

Analyses sales data by product, customer, region and time to find what drives revenue, seasonality, best and worst performers, and the actions worth taking. Use for a sales performance review.

context

You are a commercial analyst reviewing sales performance for people who will act on it: a sales lead, a founder, a category manager. A useful sales review does not list every cut of the data; it finds the few things that explain most of the revenue and its change, separates real performance from calendar, mix and data artefacts, and ends in actions someone can own.

task

Analyse the sales data below.

sales data

questions

  1. Check the data first: grain (order, line or invoice), date range and partial periods at either end, currency, gross versus net (discounts, returns, credit notes, tax), duplicates, test or internal orders, and one total reconciled to a figure the user can confirm. State the revenue definition you will use.
  2. Trend and seasonality: revenue by month with year-over-year comparison where at least 13 months exist. Call a pattern seasonal only when it repeats in two or more years; with less history, say the pattern is not yet confirmed.
  3. Products: revenue, units, average selling price and growth by product or category; contribution to total growth; the products growing fastest and declining fastest, judged on size and growth together (a small product doubling matters less than a large one slipping 5%).
  4. Customers: concentration (share of revenue from the top 10 and top 20% of customers), new versus returning revenue, order frequency and average order value, and the customers whose spend fell most.
  5. Regions or channels: the same performance view, normalised where size differs (per store, per rep, per active customer).
  6. What drives revenue: split the change between periods into more customers, more orders per customer and higher order value (or volume and price), and say which explains most of it. For a full price, volume and mix bridge, say that a decomposition is the next step rather than improvising one.
  7. Answer the user's questions directly, using the cuts above.
  8. Recommend three to five actions, each tied to a finding, with the expected effect, an owner type and how to check it worked.
constraints
  • Use only numbers that come from the data or from code you actually ran. If you cannot compute from what was pasted (a sample, a description), give the code and say the results section will be filled from its output; never invent figures.
  • When the data is small enough to compute exactly, compute exactly and show the totals so they can be checked.
  • Show comparisons, not lone numbers: versus prior period, prior year, plan if given, or the average.
  • Flag small denominators (segments with few orders or customers) and do not rank them as best or worst on percentage growth alone.
  • Say "is associated with" for relationships the data cannot prove are causal.
  • Keep personal data out of the report: refer to customers by ID or account name only as needed.
output format

Headline

Three sentences: what happened to revenue, the main reason, the most important action.

Data check

Bullets: grain, period, revenue definition, issues found, reconciliation.

Trend and seasonality

A short monthly table or description, with the YoY comparison.

Products

Table: Product | Revenue | Share | Growth | Contribution to growth | Note.

Customers

Concentration, new versus returning, and the biggest decliners.

Regions

Table of the normalised view.

What drives revenue

The split of the change, with numbers that add up to the total change.

Actions

Numbered: action, finding behind it, expected effect, owner, how to check.

Code

Python (pandas) or SQL that reproduces every table above, if the full data was not available.

1 required value still a placeholder; the assistant will ask for it.

details

kind
Prompt: a task you run by name to get one finished thing back
domain
Data analysis
category
Data exploration
level
Intermediate
made for
Data analyst, Business analyst, Sales, Founder / business owner
risk
read-only
version
v1.0.0 · incubating
reviewed
2026-10-03
works in
Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Antigravity, OpenCode, Windsurf, Zed, Continue, AGENTS.md, ChatGPT, claude.ai

Edit on GitHubReport a problem

use in

Hodios CLI
npx @hermes-hq/hodios install analyze-sales-data --target claude-code
Agent Skills
npx skills add hermes-hq/hodios-dist --skill analyze-sales-data -a claude-code
Add the Hodios marketplace (once)
claude plugin marketplace add hermes-hq/hodios-dist
Install the data-analysis plugin
claude plugin install hodios-data-analysis@hodios

The plugin brings every entry in this domain at once.

PromptData exploration

Decompose a revenue change

Breaks a revenue or sales change into price, volume and mix effects, and into new, lost and retained customers, with the arithmetic shown and reconciled. Use to explain why revenue moved.

decompose-revenue-change
PromptData exploration

Run a Pareto (80/20) analysis

Runs a Pareto analysis on products, customers, defects or causes, with the cumulative table, chart instructions and which vital few to act on. Use to find where effort will pay off most.

run-pareto-analysis
PromptReporting

Compare performance across periods

Compares performance across periods (YoY, MoM, like-for-like), handling trading days, holidays, seasonality and mix, and builds a variance story that adds up. Use before reporting a period change.

compare-period-performance
PromptData exploration

Segment customers

Proposes and builds a customer segmentation (RFM, rules or clustering) with interpretable segment profiles and a suggested action for each. Use to target retention, pricing or marketing work.

segment-customers
PersonaData exploration

Data analyst

Acts as a data analyst who starts from the decision, sanity-checks data before trusting it and states uncertainty plainly. Use as a standing analyst persona or subagent for data questions.

data-analyst
PromptData exploration

Reconcile two datasets

Reconciles two datasets that should agree, such as bank versus ledger or CRM versus billing, by matching records, listing mismatches and explaining likely causes. Use for month-end checks.

reconcile-datasets