Methodology
How Greencom.app calculates its numbers
Every figure on Greencom.app comes from mentions collected at the time of an analysis. This page explains where the mentions come from, how each number is calculated, and what the numbers can and cannot tell you.
1. Collecting mentions
When you search for a company, brand, product or keyword, Greencom.app first asks Claude to identify what you mean: its common name, the other names it is written as (including names in other scripts), and similarly named things it should not be confused with. It then queries these sources for the selected period (7, 30 or 90 days):
| Source | What it provides | Kept per analysis |
|---|---|---|
| GDELT | News headlines worldwide, in all languages. Headlines only, no article text. | Up to 90 |
| Brave Search | News articles, blogs, forum threads and other websites, as search-result snippets. | Up to 60 |
| Hacker News | Stories and comments from the forum. | Up to 45 |
| RSS feeds | The latest items from a fixed list of news sites and blogs. | Up to 40 |
| Posts through Reddit's official API. Only when approved API access is configured. | Up to 50 |
A result is kept only if it passes all of these checks:
- Date: its publication date falls inside the selected period. Publication dates are used, not the time of collection.
- Names the subject: the title or excerpt contains the name or one of its aliases. Short names must match as whole words.
- Not a duplicate: the same page reached through different links counts once, and syndicated copies of one article (same headline on several sites) count once.
- An actual mention: homepages, topic index pages and reference pages such as Wikipedia are dropped.
At most 220 results are collected per analysis. The dashboard lists which sources were checked, how many results each contributed, and any source that failed or is not available.
2. Relevance filter
Containing the name is not enough. Claude reads each collected result, in batches of 20, and decides whether it is really about the subject. A result is removed when the name refers to something else (a search for Apple should not return articles about fruit), or when the subject appears only in passing with nothing said about it.
Removed results are not counted anywhere. The dashboard states how many were removed. Total Mentions is the number of unique results that passed this filter.
3. Sentiment classification
In the same step, Claude assigns each relevant mention one of four labels:
- Positive: praise, good results, wins, favourable comparisons.
- Negative: criticism, complaints, problems, losses, unfavourable comparisons.
- Neutral: factual or balanced coverage without a clear evaluative direction.
- Unclassified: the text is too short or ambiguous to judge.
The label describes how the subject itself comes across, not the mood of the whole text. Bad news about a competitor is not counted as negative for the subject, and praise for another company is not counted as praise for it. Text in any language is classified directly.
The classification works from the title and a short excerpt, and for GDELT news from the headline alone. It does not read full articles.
4. Key metrics and the sentiment score
The sentiment percentages are shares of classified mentions. Unclassified mentions are left out of the calculation, and the dashboard shows how many there were.
Positive % = positive mentions ÷ (positive + neutral + negative) × 100
Neutral % and Negative % are calculated the same way. Percentages are rounded to one decimal.
The Overall Sentiment Score is the net balance of positive and negative mentions:
Score = (positive − negative) ÷ (positive + neutral + negative) × 100
It runs from −100 (every classified mention is negative) to +100 (every one is positive) and is rounded to a whole number. Neutral mentions pull the score toward zero. The label next to it follows fixed bands:
| Score | Label |
|---|---|
| +25 or higher | Mostly positive |
| +5 to +24 | Leaning positive |
| −4 to +4 | Balanced |
| −24 to −5 | Leaning negative |
| −25 or lower | Mostly negative |
Example: 24 positive, 32 neutral and 15 negative mentions give (24 − 15) ÷ 71 × 100 = +13, leaning positive.
5. Charts
- Mentions Over Time counts mentions per publication day in UTC, in total and per sentiment label. Mentions without a known publication date are counted in the totals but not drawn, and the chart says how many.
- Sentiment Distribution shows the same positive, neutral and negative counts as the percentages above.
- Sources groups mentions into News websites, Blogs, Forums, Reddit and Other websites. The category comes from the source and the address of the page: forum and community sites count as Forums, blog platforms and /blog/ sections as Blogs, and web results that fit neither as Other websites. Only categories with data are shown.
Clicking any chart filters the mentions feed, so you can read exactly which mentions a number is made of.
6. Topics and trending
During classification each mention gets one to three short topic labels. Claude then merges these into up to ten clear topics and lists the mentions belonging to each. A mention can belong to more than one topic, so topic counts can add up to more than the total. A topic needs at least 2 mentions to be shown.
A topic is marked Trending only when there is enough history to show real growth. All of these must hold:
- The period is 30 or 90 days.
- Each half of the period has at least 10 dated mentions overall.
- The topic has at least 5 mentions in the recent half.
- The topic's share of mentions in the recent half is at least 8% and at least 1.5 times its share in the earlier half.
Seven-day analyses never show a trending label.
7. AI insights and evidence
The executive summary, What People Like, What People Dislike and the recommendations are written by Claude from the relevant mentions of that analysis only. It is instructed not to add facts from outside the collected mentions.
Every theme and recommendation must cite the mentions that support it. Greencom.app then checks those citations:
- A cited mention that does not exist in the analysis is discarded.
- The "supporting mentions" number is counted by Greencom.app from the verified citations. It is never a number written by the AI.
- A theme, topic or recommendation left with fewer than 2 verified mentions is not shown.
- With fewer than 8 relevant mentions, no insights are generated and the dashboard says the data is insufficient.
Clicking a theme or recommendation filters the feed to its supporting mentions, each with a link to the original.
Models in use: claude-haiku-5-5 for relevance, sentiment and topic labels; claude-sonnet-5-5 for identifying the subject and writing the insights.
8. Nasdaq Leaderboard
- Ranking: the 10 largest Nasdaq-listed companies by market capitalisation, as reported by Nasdaq at the time the page loads. Share classes of one company (for example Alphabet's two) are shown as one row.
- Price and Today: the latest price and the percentage change for the trading day, from Nasdaq. Prices can be delayed.
- Market cap: Nasdaq's figure, shown in trillions or billions of US dollars.
- Sentiment score, Mentions and Split: taken from the company's most recent 7-day analysis, calculated exactly as in section 4.
- Top topic: the most discussed topic in that analysis.
- Analyzed: how long ago that analysis ran.
The ranking is by company size only. The sentiment score does not affect the order, and it describes online discussion, not the stock. Nothing on the leaderboard is investment advice.
9. Freshness and caching
- An analysis is stored and reused for 3 days for the same search and period. Everyone who searches for it in that time sees the same stored result, with its age shown.
- The same search cannot be refreshed more often than once every 3 days. Until then the Refresh Analysis button is disabled and shows the time remaining. After that, the next search or refresh runs a new analysis.
- An analysis that failed, or ran while AI analysis was unavailable, can be repeated straight away.
- Leaderboard sentiment is not updated on a schedule. Each row shows the age of its analysis, and opening a company whose analysis is more than 3 days old runs a new one.
- Leaderboard prices and ranking are fetched again every few minutes.
10. Limitations
- A sample, not the whole internet. An analysis covers at most 220 results from the sources above. Social networks such as X, Facebook, Instagram and TikTok are not covered.
- Small numbers move easily. With 40 to 100 mentions, a handful of articles can shift the score by several points. Compare scores with that in mind.
- Short texts. Sentiment is judged from headlines and excerpts, which can miss the tone of the full piece.
- Source mix affects the result. News headlines tend to be neutral and forum comments more critical, so the score depends partly on which sources returned results. A source that fails during an analysis is reported on the dashboard.
- Recent bias. Search results and feeds favour recent content, so older parts of a 90-day period are covered more thinly.
- AI can be wrong. Classification and insights are generated by a language model. Open the original sources before relying on a finding.