How we get from comments to conclusions
Every number on a results page comes from a process you can inspect. Here is that process, plus what it can and cannot tell you.
1. Comment collection
We retrieve public video and channel metadata and public comment threads through the official YouTube Data API v3. Collection is paginated and quota-aware, so a single analysis reads as many comments as the platform will return within your plan's limit — not necessarily every comment that exists.
- Only public comments are read. Private, deleted or held-for-review comments are invisible to us.
- Replies are collected where the platform exposes them and are marked as replies.
- Comments are de-duplicated, and obvious spam and empty text are removed before analysis.
- Every removal is counted and reported back to you as part of the dataset summary.
2. Sentiment
Each comment is classified individually as positive, neutral, negative or mixed by a language model, then aggregated into distributions, per-topic sentiment and — when the timestamps support it — a timeline. Sentiment is a reading of tone in text, not a measure of how someone feels. Sarcasm, in-jokes, slang and cultural context are routinely misread by any automated system, including ours.
3. Topics and themes
Comments are embedded as vectors and grouped by semantic similarity, then each cluster is named and summarized. Cluster counts and share-of-conversation are calculated arithmetically from the classified comments — never estimated by the model. Boundaries between adjacent topics are a judgement call, so treat close-together topics as one conversation rather than two competing ones.
4. Purchase intent
Purchase intent is a text signal: comments that state or strongly imply wanting to buy, asking about price, availability, or comparing alternatives, classified as high, medium or low with the barrier or objection attached. Stated intent in a comment section is not a forecast of revenue, conversion or demand. Nobody is on a checkout page while they type.
5. Audience questions
Questions are detected in the raw text, clustered by what is actually being asked, and ranked by how often the same question recurs. Recurring questions are the clearest signal in comment data — they reflect a real gap between what was communicated and what was understood.
6. Confidence
Every finding carries a High / Medium / Low confidence score computed deterministically from four inputs: volume (how many comments support it), coverage (what share of the dataset it touches), consistency (how uniformly the supporting comments agree) and model certainty (agreement across classification passes). Confidence describes how well-supported a statement is within this dataset. It is not a statistical confidence interval, a p-value, or a claim about the wider population.
7. Opportunity detection
Opportunities are generated only from findings that already exist and already have supporting comments — a feature request cluster, an unresolved objection, a recurring question, a competitor comparison. Each one is scored by how frequently the underlying signal appears and how strongly it is expressed, and each links back to the comments that produced it. An opportunity is a prompt for your judgement, not a validated business case.
8. Evidence and grounding
After the model produces a result, we verify it mechanically against the source comments. Quotes that do not appear verbatim in the dataset are dropped. Findings whose supporting comment references cannot be resolved are removed. Numeric claims larger than the analyzed sample are corrected. Trend claims are discarded when the timestamps cannot support a trend. If you can see a finding, you can open the comments behind it.
Sample size classification
Every result shows the sample it rests on, for example “Sample: 4,291 comments · Large comment sample”. Thresholds are configuration and may be tuned over time:
| Classification | Comments analyzed | How to read it |
|---|---|---|
| Very small comment sample | 0–99 | Read this as anecdotes rather than measurement. A handful of comments can change every number here. |
| Small comment sample | 100–299 | Useful for spotting recurring themes, but individual counts and percentages move a lot with a few comments. |
| Moderate comment sample | 300–999 | Enough for strong patterns to stand out. Treat small gaps between themes as directional only. |
| Large comment sample | 1,000+ | Plenty of text to read patterns from. Differences between themes are more likely to be real than noise. |
Important: A bigger sample means more text analyzed — not a representative one. People who comment are rarely a cross-section of your customers or audience. A larger sample lowers the odds that a pattern is a fluke of who happened to comment. It does not turn a comment section into a survey.
Language support
We detect the language of every comment and store the text exactly as it was written. Version 1 prioritizes English: classification and synthesis are strongest in English and weaker in other languages.
- The original wording is always preserved and is what evidence views show you.
- The detected language is stored alongside each comment and reported in the dataset summary.
- Non-English comments are either analyzed with multilingual models or clearly flagged as limited support. We never silently translate a comment and present the translation as what someone said.
- Where a translation is performed, it is stored separately from the original and labeled as a translation.
Limitations we will always be honest about
- This is not science. Nothing here is a controlled study, a statistically representative survey, or a source of certainty. It is structured reading of public text.
- Commenters are not your audience. People who comment are a small, self-selected, unusually motivated slice of the people who watched — who are in turn a slice of your potential customers. Silence is not agreement, and enthusiasm in comments is not demand.
- Highly opinionated and highly engaged voices are systematically over-represented.
- Comment sections can be brigaded, botted or moderated in ways we cannot see.
- Language models can misread sarcasm, irony, dialect and cultural context.
- API quotas and platform limits can cap how many comments a single analysis reads.
- We do not infer race, religion, health, sexual orientation, political identity or other sensitive personal characteristics, and we do not build audience segments from them.
What we never do: invent comments, quotes or statistics. Any synthetic content appears only in Demo Data mode and is always labeled as such.
Start free in under a minute
Create an account and run your first audience analysis today.