Yesterday I published the broad overview of my complaint corpus: which products get complained about most and where those complaints live. Today I want to zoom in on the single metric I find most commercially interesting: not how often people complain, but how angry they are when they do.
Quick context: I run a pipeline that mines public software complaints (GitHub, Reddit, Stack Overflow, Hacker News, Trustpilot, app stores, X, forums), clusters them into validated gaps, and scores each one. One of those scores is emotional intensity, a 1 to 5 read of how charged the source complaint is, from mild annoyance to business-threatening. Current corpus: 988 validated gaps from 1,012 complaints, recomputed hourly. Numbers below are quoted from the live stats pages as of September 6, 2026.
Which categories have the angriest users
Average emotional intensity per category (categories with fewer than 10 gaps excluded):
| Category | Gaps | Avg intensity (1-5) |
|---|---|---|
| Finance / Accounting | 69 | 4.1 |
| Real Estate / Local Operations | 52 | 4.1 |
| Security / Compliance | 50 | 4.0 |
| E-commerce | 61 | 3.8 |
| No-Code / Automation | 78 | 3.7 |
| Marketing Operations | 47 | 3.7 |
| Dev Tools / SaaS Infrastructure | 387 | 3.6 |
| Creator Operations | 43 | 3.6 |
| Data / Analytics | 161 | 3.2 |
| HR / Recruiting | 29 | 3.1 |
Full table and method: Most emotionally intense complaint categories
The pattern is not subtle. The angriest categories are the ones where software touches money, property, or legal exposure. Nobody writes a 4/5-intensity complaint because a dashboard loaded slowly. They write it because their payout is frozen, a client is threatening to sue, or an audit is in two weeks and the export is broken.
The calmest end is instructive too. HR/recruiting (3.1) and data/analytics (3.2) complaints read as frustration and annoyance, not emergencies. Real problems, but nobody's business is on fire.
For calibration, the corpus-wide distribution: 1 gap at 1/5, 48 at 2/5, 370 at 3/5, 468 at 4/5, 101 at 5/5. So 58% of all validated gaps come from complaints scored 4 or higher. The baseline is already angry; finance and real estate sit above even that.
The Stripe signal
The product-level table has one number I keep coming back to. Among the 10 most complained-about products, the average emotion scores look like this at the top:
| Product | Complaints | Avg emotion (1-5) |
|---|---|---|
| Stripe | 20 | 4.5 |
| Zapier | 15 | 4.2 |
| Airbnb | 38 | 4.1 |
| QuickBooks | 24 | 4.1 |
| Shopify | 36 | 3.9 |
| Claude | 18 | 3.9 |
Stripe is only 6th by complaint volume but is the angriest product in the top 10 at 4.5 out of 5. MySQL tops the volume ranking at 51 complaints with a 3.4 average. People complain about MySQL constantly and calmly. They complain about Stripe less often and furiously.
That makes sense when you read the underlying complaints: they cluster around account freezes, held payouts, and closures with no recourse. A broken query costs you an afternoon. A frozen Stripe account costs you the business's cash flow, this week, while support sends templated replies.
Why anger is the metric I watch
Here is my practitioner read, and it is an interpretation, not something the classifier outputs: anger is churn energy. A mildly annoyed user files the problem under "things I tolerate." A furious user is already mentally shopping for a replacement. The 4/5 and 5/5 complaints in this corpus routinely contain phrases like "looking for alternatives," "migrating away," "never again." That is willingness to switch, stated in the user's own words, before any vendor talks to them.
The corpus backs the commercial side of this. Overall, 93% of validated gaps show willingness-to-pay signals in the source complaint. And the willingness-to-pay-by-category table overlaps with the anger table in a way that should get a founder's attention:
| Category | Avg intensity | Willing to pay |
|---|---|---|
| Real Estate / Local Operations | 4.1 | 96% |
| Security / Compliance | 4.0 | 96% |
| Finance / Accounting | 4.1 | 91% |
| HR / Recruiting | 3.1 | 97% |
Source: Willingness to pay by category
Angry categories are pay-ready categories. And the one calm category, HR at 3.1, still shows 97% willingness to pay, the highest in the corpus. Which leads to the honest caveat section.
Caveats, because this data has edges
- Anger and money are not the same axis. HR complaints are calm but almost universally pay-ready. Emotional intensity tells you how urgently someone wants out of their current situation, not how much budget exists. Use both scores together.
- Selection bias is real. People post publicly when they are angriest or when they want leverage on the vendor. The 58% share of 4+ scores partly reflects who bothers to write a public complaint at all. Silent mild annoyance is underrepresented by construction.
- Platform mix skews tone. GitHub issues are written for maintainers and read calmer; Trustpilot and Reddit rants run hotter. Category averages inherit the platform mix of that category.
- The intensity score is a classifier's 1 to 5 judgment, consistent but not infallible. Sarcasm and non-native-English phrasing are its known weak spots.
- Corpus is 988 gaps and recomputes hourly, so quoted numbers drift. Cite with an access date.
What I would build from the angry end
Three live gap dossiers from the high-intensity categories, each with the source complaints, scores, and evidence attached:
- Stripe account freezes: dispute and payout recovery - the exact complaint cluster behind that 4.5/5 Stripe signal. Frozen funds, ignored support tickets, real cash-flow damage.
- Airbnb host defense against unverified guest claims - real estate/local operations is tied for the angriest category at 4.1, and host-versus-platform disputes are a big reason why.
- TurboTax for SOC 2 that skips the $50k consultant - security/compliance at 4.0 average intensity, where the anger is really fear: audits, deadlines, and consultants priced out of reach for small teams.
If I were picking a market on this data alone, I would look where intensity and willingness to pay are both high and the incumbents are the ones generating the complaints. That intersection is the whole thesis of the project.
Method note: every gap links back to the underlying public complaints, and the scoring pipeline is described on the stats pages. The data is free to quote with attribution.
Top comments (0)