How to Build an AI Customer Issues Report by Severity (2027)

Rank customer issues by severity, accounts and ARR. A 6-step method, scoring rubric, worked example and spreadsheet template for weekly reviews.

Most B2B teams hear about customer problems all week, yet few can agree on which one to fix first. This guide shows how to build a customer issues report ranked by severity: one deduplicated list, scored on severity, accounts affected and ARR affected, with evidence and an owner on every line. The method runs on a spreadsheet and a 30-minute weekly meeting. Near the end, we cover when to automate it with BuildBetter, which compiles the same report from calls, tickets and Slack and delivers it before your Monday review. We also walk through a full week at a 200-account company, so you can see the scoring produce an actual decision.

Watch: How to Schedule AI Reports to Your Inbox (BuildBetter tutorial)

What Is a Customer Issues Report Ranked by Severity?

Support has a list ranked by ticket volume, CS has a churn-risk list, and product has a list pulled from sales calls. All three teams say they know the worst customer problem, and they name three different ones.

A customer issues report is a single, deduplicated list of the problems customers are experiencing right now. Each problem is grouped into a theme and scored on three things: severity, the number of distinct accounts affected, and the ARR affected. Every theme carries a verbatim customer quote, a link to its source, and a named owner.

It helps to be clear about what the report is not:

  • Not a feature-request backlog. Requests describe what customers want. This report covers what is broken, blocking, or costing them time or money today.
  • Not an NPS dashboard. Sentiment trends tell you something is wrong. They don't tell you what.
  • Not a raw ticket export. Exports count mentions. This report counts accounts and dollars.

Where AI fits: AI speeds up collection, deduplication and quote extraction, which are the tedious parts. The ranking logic and the weekly decision stay with people. The method below works with a spreadsheet and no AI at all.

The output: a ranked top 10 that the team reviews every week, with one owner and one next action per theme.

Why Customer Issue Lists Disagree (and What Breaks)

Customer issue lists disagree because each team ranks only the evidence it can see, using its own unwritten rules. Six failure modes show up again and again.

  1. Siloed sources. Tickets live in the help desk. Complaints raised on calls live in recordings nobody rewatches. Escalations live in Slack threads. Support ranks tickets, CS ranks escalations, and product ranks what came up on calls. Research going back to TARP's work for the White House Office of Consumer Affairs found that most dissatisfied customers never complain directly, so a ticket-only view undercounts pain from the start.
  2. Counting mentions instead of accounts. One noisy customer filing 30 tickets outranks a quiet problem affecting 25 accounts.
  3. Double counting. The customer files a ticket, the CSM posts in Slack, and it comes up again on a QBR call. One issue now looks like three.
  4. Severity by volume of voice. The issue the VP heard about yesterday jumps to #1, with no rubric behind the move.
  5. No evidence attached. Engineering pushes back on summaries like "customers hate exports" because there's no quote, no account name and no link to check.
  6. No owner. The list gets made and presented, then never changes. Six weeks later the same items are still on it.

A severity-ranked report addresses all six by forcing one list, one rubric, and one evidence standard.

The Method: Build a Severity-Ranked Customer Issues Report in 6 Steps

You can build this report today with a spreadsheet, a shared Slack channel and 60–90 minutes a week. It needs no tool and no budget. The scoring borrows from Failure Mode and Effects Analysis (FMEA), the reliability discipline that started with US military procedure MIL-P-1629 in 1949 and later spread to NASA and the automotive industry.

Step 1: Pull every issue into one list

Collect from every channel where customers or your team describe problems:

  • Help desk tickets, filtered to bug or problem tags
  • Call notes or transcripts from sales, CS and support calls
  • Slack escalation channels and CSM threads

Use one row per mention with these columns: date, source, account name, ARR, verbatim quote, link to source, and reporter. Keeping the raw rows matters, because they become your evidence in Step 5.

Step 2: Separate issues from requests

Ask one filter question of every row: "Is something broken, blocking, or costing them time or money today?" If yes, keep it. If it's a nice-to-have, move it to a separate Requests tab. You'll still use those rows, just in a different meeting.

Step 3: Dedupe into themes

Group rows by the underlying problem, not the wording of the symptom. This is thematic analysis (affinity mapping, if you do it on sticky notes). A quick root cause pass, such as asking "why?" a few times in the style of Toyota's 5 Whys, gets you from "report download spins forever" to the real failure.

  • Name each theme as a specific failure. "CSV export times out above 50k rows" works. "Performance" doesn't. A theme is well named when an engineer could write a reproduction step from the title alone.
  • Merge rows for the same account and issue so each account counts once per theme.
  • Keep an "Unthemed" bucket for one-offs. Don't force them into a theme.

Step 4: Score each theme on three dimensions

Score every theme on Severity, Reach and Revenue, each from 1 to 4. Priority score = Severity × Reach × Revenue, with a maximum of 64.

SeverityLabelDefinition
4BlockerA core workflow is unusable, or there is data loss or a security exposure
3MajorA core workflow is degraded and the workaround is painful
2ModerateFriction exists, but so does a reasonable workaround
1MinorCosmetic issue or annoyance

These four levels map onto the SEV1–SEV4 or P1–P4 conventions most engineering and SRE teams already use for incidents. Use the same vocabulary so handoffs to engineering don't need translating.

ScoreReach (distinct accounts)Revenue (share of total ARR)
11–2 accountsUnder 2%
23–10 accounts2% to under 7%
311–25 accounts7% to 15%
426+ accountsOver 15%

These cutoffs fit a company with about 200 accounts. Recalibrate them to your own base. Treat Reach as a percentage: for 200 accounts, the buckets work out to about ≤1%, ≤5%, ≤12.5% and above 12.5%. A 2,000-account company would scale to roughly 1–20, 21–100, 101–250 and 251+.

Override rule: any Severity 4 theme that touches an account in its renewal window goes to the top, whatever its score. Multiplication understates acute risk that is concentrated in a few accounts. FMEA practitioners hit the same problem: the 2019 AIAG & VDA FMEA Handbook replaced the multiplied Risk Priority Number with severity-first Action Priority tables, because a severe-but-rare failure could score the same as a trivial-but-common one.

Tie-breaker: three 1–4 factors can only produce 16 distinct scores, so ties are common. Break them by Severity first, then % ARR, then the most recent last-seen date.

One more distinction: ARR affected is the total ARR of accounts reporting the theme. ARR at risk applies judgment about renewal timing or churn likelihood. Report ARR affected, and bring ARR at risk only into the override discussion so the numbers don't get inflated.

Step 5: Attach evidence to every theme

Each theme needs at least one verbatim quote, a source link, the list of account names, and first-seen and last-seen dates. The rule is simple: no quote, no ranking. A theme without evidence goes back to the Unthemed bucket until someone finds the source.

Step 6: Review weekly with an owner per theme

Hold a 30-minute meeting with the support, CS and product leads. For each top-10 theme, record:

  • Owner, meaning one named person, not a team
  • Next action: fix, investigate, write a workaround doc, or won't fix (with a reason)
  • Due date

Mark a theme resolved only after the affected accounts have been told about the fix.

Copy-ready spreadsheet columns

Use these columns on the Themes tab:

Theme · Severity · Accounts (count) · Accounts (names) · ARR affected · % ARR · Score · Top quote · Source links · Owner · Next action · Status · First seen · Last seen

Optional AI assist

You can paste a week of ticket text into any general-purpose LLM and ask it to propose themes and pull representative quotes. Then check every grouping by hand. LLMs will confidently merge two distinct bugs that share vocabulary, and they will make up tidy theme names that hide the actual failure.

Worked Example: One Week at a 200-Account B2B Company

This illustrative scenario shows how the method turns 340 raw mentions into three decisions. The company is a B2B SaaS business with 200 accounts and $6M in total ARR.

Raw intake: 340 mentions, made up of 212 support tickets, 61 call excerpts and 67 Slack escalation messages.

Step 2 filtering: 48 rows move to the Requests tab, which leaves 292 issue mentions.

Step 3 dedupe: the 292 mentions collapse into 12 themes plus 23 unthemed one-offs. For example, a ticket titled "export broken," a call excerpt saying "report download spins forever," and a CSM's Slack note about a stuck export all trace back to the same cause. They merge into one theme: CSV export times out above 50k rows. This is the Pareto principle at work. Joseph Juran's "vital few" means a handful of themes carry most of the pain.

ThemeMentionsSeverityAccounts (Reach)ARR (Revenue)Score
A: CSV export times out above 50k rows74331 (4)$1.4M, 23% (4)48
B: Role permissions screen unclear; admins grant wrong access97244 (4)$1.9M, 32% (4)32
C: SSO login fails after customer changes identity provider2249 (2)$780k, 13% (3)24

The evidence attached to each theme:

  • Theme A: "Our finance team can't pull month-end data without splitting it into six files."
  • Theme B: "I gave a contractor admin by accident because the labels don't say what they do."
  • Theme C: "Nobody on our team could log in Monday morning." Two of the nine affected accounts renew within 60 days.

The decision

  • #1, Theme C (override). It's Severity 4 and touches two accounts in their renewal window. An engineering owner ships a hotfix this sprint, and a CSM calls both renewing accounts this week.
  • #2, Theme A. A scoped fix goes into next sprint. Support publishes an interim workaround article explaining how to export by date range.
  • #3, Theme B. It goes to design discovery with a two-week deadline for a proposal.

The other nine themes go to a watch list. If a watch-list theme's Reach or Severity rises next week, it moves back into the top 3.

Takeaway: ranked by mention count alone, the permissions theme would have led with 97 mentions. Ranked by severity, accounts and ARR plus the override, the team fixed the issue most likely to cost revenue first. Bain's Frederick Reichheld found that a 5% increase in retention can lift profits by 25% to 95%. That research is older and comes mostly from financial services, so treat it as directional for SaaS. The direction still holds: protecting renewals pays for itself.

Common Mistakes When Ranking Customer Issues

Most ranking mistakes come from measuring noise instead of impact, or from letting the list go stale.

  • Ranking by ticket count. Volume measures noise, not impact. Count distinct accounts.
  • Mixing feature requests with defects. Requests inflate the list and bury real breakage.
  • Themes that are too broad. Nobody can own or fix "Performance" or "UX." Name the specific failure.
  • Letting ARR decide everything. Pure revenue weighting ignores a new segment you're trying to win. It also ignores small accounts hitting a problem your large accounts will hit next quarter. Keep Reach in the formula.
  • Trusting automated clustering without review. Any AI or keyword grouping will sometimes merge two different bugs or split one bug into three. Spot-check every top-10 theme against its raw quotes.
  • Not closing the loop. If fixed issues stay on the list, or customers never hear about the fix, people stop trusting the report.
  • Skipping the meeting. No tool fixes this one, BuildBetter included. If nobody owns a theme and the weekly review keeps getting cancelled, the report turns into a dashboard nobody acts on. Accountability is a team habit, not a software feature.
  • Stale severity. Scores set in week one need revisiting after a workaround ships or the problem spreads. Rescore the top 10 every week.

A note on frameworks: this method is a cousin of RICE (Reach, Impact, Confidence, Effort), which Sean McBride developed at Intercom. RICE prioritizes projects. This report ranks pain, so it leaves out Effort on purpose. Effort belongs in the fix decision, not in the ranking.

When the Spreadsheet Stops Working (and Tools That Help)

A spreadsheet works well under roughly 50 issue mentions a week. Above that, two things break first. Deduplication gets inconsistent because different people tag differently. Evidence links get skipped because copying quotes out of calls and tickets takes too long.

Other signs you've outgrown the manual process:

  • Call recordings are a major source, but nobody transcribes them
  • More than three people are tagging rows
  • Someone has to look up ARR by hand for every account

1. BuildBetter (Customer Issues report)

BuildBetter pulls calls, Slack, tickets and surveys into one place through 100+ integrations, including Zoom, Slack, Zendesk, Intercom, HubSpot and Salesforce. It covers both what your team says internally and what customers say externally, so the CSM's Slack note and the customer's ticket end up in the same theme with ARR already attached. Each signal is scored for severity and business impact against your own taxonomy.

Setup: Insights → Reports → New Interactive Report → Customer Issues template. Open the report to see the top issue, the accounts affected and the supporting evidence. Then choose Schedule → Weekly → Monday 8 AM to send it by email or Slack before the review meeting.

Honest caveat: it isn't built for enterprise-scale survey distribution or a dedicated research-repository workflow, and it doesn't replace the weekly owner meeting.

2. Savio

Savio collects feedback from help desk and CRM tools and lets you sort by customer attributes such as revenue. It suits teams that work mainly from tickets and is less suited to mining call recordings.

3. Featurebase

Featurebase offers feedback boards, voting, a roadmap and a changelog. It's useful for closing the loop with customers publicly, though it leans toward requests rather than severity-ranked defect tracking.

4. Airtable

Airtable is the natural step up from a spreadsheet. Linked records connect accounts, themes and mentions, and you get views and automations on top. It's fully DIY, so you still do the theming and quote capture yourself.

Your main constraintBest starting point
Issues come from calls, tickets and Slack togetherBuildBetter
Ticket-heavy, need ARR sortingSavio
Need public loop-closing with customersFeaturebase
Want more structure with no new vendorAirtable

FAQ: Customer Issues Reports and Severity Ranking

What is the best way to rank customer issues by severity?

Score each deduplicated theme on Severity (1–4), Reach (distinct accounts, 1–4) and Revenue (share of ARR, 1–4), then multiply for a score out of 64. Override the score so any Severity 4 blocker touching an account in its renewal window goes to the top.

How often should a customer issues report be updated?

Weekly. Monthly is too slow to catch blockers before renewals, and daily creates noise without decisions. Severe incidents should still escalate immediately through your incident process instead of waiting for the review.

What's the difference between a customer issue and a feature request?

An issue is something broken, blocking, or costing the customer time or money today. A feature request is something they want that doesn't exist yet. Track them in separate lists so requests don't bury breakage.

Should I count tickets or accounts?

Count distinct accounts per theme. Ticket counts reward the noisiest customers and double count the same problem when it's reported in a ticket, a Slack message and a QBR call.

Can AI build a customer issues report automatically?

AI can collect mentions, transcribe calls, propose themes and extract quotes. That removes most of the manual work once you pass about 50 mentions a week. A person still needs to verify groupings, set severity, apply overrides and assign an owner for each theme.

Who should own the customer issues report?

One person owns compiling it, usually a product ops lead, PM or CS lead. Each theme on the report has its own owner, who is accountable for the next action.

Sources and Further Reading

Make Churn Optional

A severity-ranked customer issues report shows you which problem is about to cost you a renewal, with the quote, the accounts and the owner already attached. BuildBetter builds that report from every call, ticket and Slack thread and puts it in your inbox before Monday's review, so the meeting can go straight to decisions.

Make churn optional. Book a demo