Open Reddit, type your product category and the word annoying, and read what comes back. That is the entire pitch for using Reddit as a research source, and it is why so many teams try it once, find 3 interesting threads, and never build a repeatable habit out of it. 3 interesting threads is not research. It is browsing with a notebook open.
This post is about the difference. Reddit market research is the practice of treating public threads as an unprompted qualitative corpus, sampling that corpus deliberately, and coding what you find into problems, workarounds and triggers so a product team can rank what to build. The distinguishing feature is that nobody asked the question. A survey answer was produced for you, by someone being helpful. A Reddit comment was produced for a stranger, usually while the person was annoyed, which removes the politeness bias that makes early customer conversations so unreliable.
The 90-second version
Reddit market research is sampling, not browsing. The mistake is typing a phrase into Reddit search, reading the top few threads and calling the result a finding. We ran that exact naive search on 2026-09-12 through our own Reddit data API and measured what came back: on one 50-row pull, 17 of the 50 rows were the same six posts crossposted into different communities, 29 of 50 sat under 5 upvotes, and the top five posts held 70 percent of all the upvotes on the page. On a second 32-row pull, 17 rows had nothing to do with business at all, 5 of them chapters of a science-fiction serial, while the single most useful post in the set, a founder who had read 17,946 comments, ranked 30th of 32 by score. Reddit is an excellent research corpus and a terrible research interface. The method below is the fix: scoped queries with a date window, a stated sample size, a three-column coding rubric that separates problem from workaround from trigger, and an evidence ladder that never lets a thread outrank a sale.
Operator noteSearch Reddit for your category plus the word annoying, top, past year. What comes back is the baseline this post improves on.
Everything numeric in this post either comes from a live measurement we ran on 2026-09-12 and can reproduce, or is tagged as somebody else's self-reported figure. We ran the naive version of this search ourselves, through our own Reddit data infrastructure, specifically so the noise problem could be measured rather than asserted. It is worse than we expected, and the numbers are the reason the method below has 4 steps between the search box and a conclusion instead of none.
What is Reddit market research?
Reddit market research is a sampling practice, not a browsing habit. It has 4 parts and 1 rule. You collect from named communities with scoped queries inside a date window. You clean what comes back, which mostly means removing duplicates and the large share of rows that matched on a word rather than a meaning. You code each surviving row into 3 separate columns, because what is broken, what they do instead, and what made it hurt this week are 3 different pieces of information that a single summary destroys. And you grade each row on an evidence ladder, so a vivid thread never outranks a paying customer. The rule: never post while collecting, because the moment you comment you are a participant and the sample is contaminated.
What is Reddit market research?
Reddit market research is the practice of treating public Reddit threads as an unprompted qualitative corpus, sampling them deliberately rather than browsing, and coding what people say into problems, workarounds and triggers so a team can rank what to build.
The distinguishing feature is that nobody asked the question. A survey answer is produced for you. A Reddit comment was produced for a peer, often while the person was annoyed, which removes the politeness bias that makes early customer conversations unreliable.
That pipeline exists because the raw material is good and the interface is not. Reddit is 1 of very few places where people describe a business problem in detail, for free, to peers who will correct them if wrong. The correction is what makes it valuable. A support ticket is 1 person's account with nobody to argue. A thread with 40 comments is that plus 39 people saying whether it matches their experience, and that disagreement is data you cannot buy.
It is also where Google has decided this conversation should live. Google announced an expanded partnership with Reddit in February 2024 and publishes structured-data guidance for discussion forums so it can identify online discussions reliably. Across the 4 research queries we pulled on 2026-09-12, 23 of the 40 organic results were Reddit itself. The corpus outranks every article written about how to read the corpus, including, in all likelihood, this one.
Google decided forum discussion belongs on page one, which is why your corpus outranks the commentary
In February 2024 Google announced an expanded partnership with Reddit, describing it as bringing Reddit content to Google products and giving Google access to Reddit's data API, and it publishes structured-data guidance for discussion forums so it can identify online discussions reliably. That is the structural reason 23 of the 40 results we pulled across four research queries were Reddit itself. The practical consequence for a researcher is pleasant: the raw material ranks above every article explaining how to read it, so you can find the corpus without a tool.
Source: Google, Expanded partnership with Reddit, February 2024; Google Search Central, Discussion forum structured data
A second, less pleasant reason to take the corpus seriously. The same threads are being read by answer engines, and Ahrefs, analysing 1.4 million ChatGPT prompts, found the engine leans on its general search index, selects sources by semantic similarity, and cites pages with a median age around 500 days. The Princeton work on generative engine optimization reports that adding citations and statistics can lift a source's visibility by up to 41 percent, which is why this post carries its numbers in the open. If your category's core complaint is articulated in a thread that ranks, that thread is a candidate source for the sentence a buyer gets when they ask an assistant about your category, whether or not anyone ever clicks through. We cover the mechanics of that in why Reddit has become an AI citation source, and the reputation half of it in Reddit reputation management. For research purposes the relevant consequence is narrow: the documents you are studying are the same documents shaping how your market gets described to newcomers.
The threads you are reading are also the threads answer engines read
Ahrefs, analysing 1.4 million ChatGPT prompts, found that the engine leans on its general search index and selects sources by semantic similarity, with a median cited page around 500 days old. For a researcher that is a second reason to take the corpus seriously: the thread describing your category's core complaint is not only what a buyer finds when they search, it is a candidate source for the sentence an answer engine gives them instead. Research and reputation are reading the same documents, which is why the two passes are worth running together.
Source: Ahrefs, Why ChatGPT Cites Pages, analysis of 1.4 million prompts
Why does an unprompted thread beat a survey answer?
An unprompted thread beats a survey answer because it was written for a different audience, with different incentives, at a different moment. A survey respondent is answering your question, in your framing, at a time you chose, knowing a company is reading. A person posting in r/SaaS at 11 at night is answering nobody's question, in their own framing, on the day the problem cost them something, to an audience that will tell them if they are being dramatic. Each difference removes a distortion, and they compound.
The distortion a survey introduces most reliably is framing. Ask whether reporting is painful and you learn about reporting, and nothing about what is actually hurting, because you did not ask. Reddit inverts that: you get the problem the person chose to raise, ranked by their own sense of what was worth typing out. Nielsen Norman Group's argument for open-ended questions is the same argument in a research setting, and Reddit is an open-ended question you did not have to write.
The second distortion is politeness. People are kind to founders in interviews, and the kindness is fatal because it reads like validation. In a peer thread there is no founder to be kind to, so you get the register people use with each other: blunter, more specific, occasionally unfair.
Reddit research against the three things people use instead
Reddit corpus
Customer interviews
Survey
Keyword tools
Surfaces problems you had not thought of
Gives you the buyer's exact wording
Unprompted, so no politeness bias
Tells you how many people have it
Available today, with no recruiting
Proves somebody will pay
FORKOFF's own comparison, written against how we actually sequence these four in a demand pass; yes means the method is good at it, partial means it gives a weak version, no means use something else. No method scores yes on every row, which is the point of running more than one.
The grid is the honest version of this section. Reddit wins on discovery, wording and availability, and loses outright on incidence and willingness to pay. Nothing in a thread tells you how many people have a problem, because you are seeing only those who posted, a self-selected group of unknown size. Nothing tells you anyone will pay, because paying was not on the table. Those are the boundary of the instrument, not weaknesses to work around.
What can Reddit actually tell you, and what can it not?
Reddit reliably answers 3 questions and reliably fails at 2. It tells you which problems exist in a category, because people describe them. It tells you the exact words buyers use, which is the single most portable output of the whole exercise. And it tells you what people already do instead, which is the closest thing to a competitor analysis you will get for free, because the workaround somebody maintains by hand every morning is the product you are actually displacing.
Is Reddit reliable for market research?
Reddit is reliable for discovering which problems exist and what language people use, and unreliable for anything needing a representative population, because the sample self-selects and the visible subset is score-weighted. Use it to generate hypotheses, then verify with interviews and a paid test.
Every failure mode in this post is a sampling failure, not a Reddit failure. The same critiques apply to app store reviews, support tickets and community Slack channels.
What it cannot tell you is how many people have the problem, or what any will pay. Both failures share a cause. The population that posts is not the population that buys, it self-selects on articulacy and irritation, and the visible subset of what they wrote is further filtered by a score that measures how interesting a post was rather than how true it was.
Operator noteStop counting threads read. Track new codes per ten threads, because that is the number that tells you when to stop.
That last point deserves a number, because it is easy to nod at and then forget. In the 32-row page we pulled on 2026-09-12, the single most methodologically useful post in the set, a founder who had read 200 posts and 17,946 comments across 2 communities and published the ranked result, having first run the same pass on 100 posts and 10,169 comments, where lead generation was named in 43 threads, sat 30th of 32 by score with 14 upvotes. The 29 above it included a chapter of a science-fiction serial and a thread about a band. If you had sorted that page by score and read the top five, you would have read 0 of the 8 useful rows.
A few days ago I posted an analysis of 100 posts and 10,169 comments from r/SaaS. Lead generation was the #1 pain point. 43 out of 100 threads were about it.
I Analyses 200 posts and 17,946 comments from r/SaaS and r/Entrepreneur. Here's the deep-dive on lead generation, the #1 pain point nobody's actually solved.
The useful framing here is that the head term carries 70 monthly US searches against 880 for the hub term, 170 for the nearest comparison term and 14,800 for the Reddit Ads term next door. Reddit is a discovery instrument and a language instrument, and it is not a measurement instrument. Treat it as the first of 3 passes. It generates the hypotheses, interviews test them against named people, and a paid test settles it. Skipping the last 2 because the threads were persuasive is the failure mode this whole post exists to prevent, and it is common enough that the founders who avoid it tend to say so explicitly.
when the same complaint shows up on G2 AND reddit AND app store reviews, you've found something real.
my saas hit $9k/month. if i had to start over, here's how i'd find the best saas ideas in 2026
That rule comes from a thread with 322 upvotes and 267 comments, posted 2026-04-02 by a founder reporting 9,000 dollars a month and 700 paying users. Triangulation is the cheapest safeguard available. A complaint that appears in a Reddit thread, in one-star reviews on a review site, and in app store reviews is a different object from a complaint that appears once. It is not proof of demand, but it removes the possibility that you are reading one unusual person having one unusual week. The cost of the check is about 20 minutes, against the 3 to 4 hours the full pass takes.
How do you search Reddit so you find pain instead of noise?
You scope every query to one community, set a date window, sort by relevance rather than score, and build your exclusion list after the first pull rather than guessing it beforehand. That is the entire answer, and each clause exists because we measured what happens without it.
On 2026-09-12 we ran two pulls through our own Reddit data API. The first was the naive version: a multi-word phrase, no community scope, sorted by relevance, past year, 50 rows. Of those 50 rows, 17 were the same 6 underlying posts crossposted into different communities, 1 appearing 6 separate times across regional subreddits. 29 of the 50 sat under 5 upvotes, and the median post had 3. The top 5 posts held 70 percent of all 1,313 upvotes on the page. 43 distinct communities were represented, which sounds like breadth and is actually the diagnosis: a query touching 43 communities is not scoped to anything.
What one naive Reddit search actually returns, measured 2026-09-12
| Row group | Count of 32 | What these rows are | What a researcher does with them | Source |
|---|---|---|---|---|
| Off-topic entirely | 17 | Fiction serials, sport, a band thread, city news | Discard, they matched on a loose word | measured |
| Adjacent but not research | 7 | Founders on distribution, not on learning | Read later, code nothing | measured |
| On topic | 8 | People describing how they gathered evidence | The actual corpus, 25 percent of the page | measured |
| Single largest subreddit | 6 of 32 | r/SaaS, the only sub over two useful rows | Promote to a scoped query of its own | measured |
| Single largest noise source | 5 of 32 | One science-fiction serial community | Add to an exclusion list | measured |
| Most useful post, by rank | 30th of 32 | A founder who read 17,946 comments, 14 upvotes | Sorting by score would have buried it | measured |
n = 32 · as of 2026-09-12
Method: One query run on 2026-09-12 through our own Reddit data API, sort relevance, window past year, minimum score 10, limit 40, which returned 32 rows. Each row was classified by reading its title and subreddit against a three-way rubric: off-topic means no connection to business or product, adjacent means business but about selling rather than learning, on-topic means the post describes gathering or interpreting customer evidence. The rubric is coarse on purpose so it is reproducible. Counts are of returned rows, not of all matching posts.
22 distinct subreddits; the top five posts held 43.7 percent of the 4,151 upvotes. Off-topic rows matched on a loose word, five of them chapters of one serial. A 50-row pull with no score floor was worse: 29 under 5 upvotes.
The second pull added a minimum score of 10, which is the intuitive fix, asked for 40 rows and got 32 back, and produced a different failure. Of the 32 rows returned, 17 had nothing to do with business at all. 5 of those 17 were chapters of a single science-fiction serial, which matched because the words research and predators appear in it. 7 more were adjacent, founders describing how they got customers rather than how they learned anything. 8 were genuinely on topic. A score floor does not filter for relevance; it filters for popularity, and popular irrelevant content clears it easily. That pull spread 32 rows across 22 communities and 4,151 upvotes, the top 5 posts holding 1,813, or 43.7 percent.
How a relevance-sorted page of Reddit results splits
Rows returned by one query through our own Reddit data API on 2026-09-12, sort relevance, past year, minimum score 10, classified by reading each title and subreddit against the rubric stated in the methodology of the first table.
The funnel above is the shape you should expect and plan for. 50 rows in, 33 unique after deduplication, 8 on topic, and 3 carrying the thing you actually want, which is a described workaround. A pipeline that turns 50 rows into 3 usable ones is not broken. It is normal, and knowing it is normal is what stops people abandoning the method after the first discouraging pull.
Operator noteWe lost an hour once counting the same post six times because it was crossposted. Dedupe on title before counting.
The search operators that change what comes back
| Operator | What it does | When it earns its place in a research pass | Source |
|---|---|---|---|
| subreddit:name | Restricts the search to one community | Always. Unscoped is the main source of noise | published |
| "exact phrase" | Requires the words together, in order | When hunting market language, not topics | published |
| title:word | Matches the title only, not the body or comments | When a common word drags in stray threads | published |
| author:name | All posts by one account | When you have found a genuinely useful practitioner and want their history | published |
| self:yes | Text posts only, no link submissions | Link posts rarely carry the first-hand story you are collecting | published |
| NOT word | Excludes matches | Building the exclusion list after the first pull, not before it | published |
| sort=relevance plus a time window | Ranks by match quality inside a date range | The default pairing. Sorting by top ranks by score alone and buries the specific for the popular | derived |
Operators are as documented in Reddit's own search wiki; the right-hand column is our operating opinion, not Reddit's. The last row is the one people skip and it is the one that changed our results most.
2 of those 7 operators do most of the work. The operators themselves are documented in Reddit's own search wiki. Scoping to a single community is the difference between reading your market and reading the internet, and it costs you nothing except running the query 4 times instead of once. Sorting by relevance rather than top is the one people get wrong most, because top feels like quality. It is not. Top ranks by score inside the matching set, and a loosely matching viral post outranks a precisely matching quiet one every time, which is exactly how a serial fiction chapter ends up in a market research pull.
The date window matters more than it looks. A past-year window is right for a stable category and much too wide for one where the tooling changed recently, because you will code problems that a release already solved and rank them as live. When a category has moved, run past month first, then widen only if you have not reached saturation.
The top result on three of four queries is a community for market research professionals, not a guide
The r/Marketresearch subreddit home page held position 1 on three of the four queries we measured on 2026-09-12. That subreddit is where people who do market research for a living discuss the job, salaries and how to break into the field. It is not about using Reddit as a source. Google is serving two different intents under one string, which matters for anyone running these searches: half of what looks like on-topic material is a career conversation, and filtering it out is the first ten minutes of every pass.
Source: FORKOFF live SERP measurement, 4 queries, firecrawl.dev, United States, 2026-09-12
That intent split is worth planning around rather than discovering mid-pass. On 3 of the 4 queries we measured, position 1 was a subreddit for market research professionals discussing their careers. Nothing about it is wrong; it simply answers a different question under the same words. Expect the first 10 minutes of any pass to go on recognising and discarding that class, and write it into the exclusion list so pass 2 is cheaper.
How many threads is a big enough sample?
Sample until new threads stop producing new problem codes. In practice that lands between 40 and 80 threads for a narrow product question, and 120 or more for a category question, , but the thread count is an output rather than a target. The number you steer by is new codes per 10 threads, and the stopping rule is 3 consecutive threads that add no code you have not already recorded.
How many Reddit threads is a big enough sample?
Sample until new threads stop producing new problem codes, which in our experience lands between 40 and 80 threads for a narrow product question and 120 or more for a category question. Count codes, not threads: the honest stopping rule is three consecutive threads that add no code you have not already recorded.
This is thematic saturation, the same stopping rule qualitative researchers use for interviews, applied to a corpus you did not have to recruit. Nielsen Norman Group makes the parallel argument for usability tests, where the fifth participant usually stops adding new findings.
This is thematic saturation, borrowed from qualitative research and lightly adapted, and it shares its logic with Nielsen Norman Group's argument that five users surface most findings. The adaptation is that Reddit removes the expensive part of the original method, which is recruiting, while keeping the discipline entirely intact. You still have to be recording codes as you go, because saturation is not something you can feel. It is something you observe in a column of numbers that stops growing, and if you are not writing the column you have no way to know.
The stopping rule was borrowed from usability research, and it transfers because the constraint is the same
Nielsen Norman Group's long-standing argument is that a small number of participants surfaces most findings because new participants keep rediscovering what earlier ones already showed. Qualitative researchers formalise that as saturation: you stop when new data stops producing new categories. Reddit research inherits the logic and removes the expensive part, which is recruiting. What it does not remove is the discipline, and the discipline is that you must be recording codes as you go, or you have no way to observe that they stopped arriving.
Source: Nielsen Norman Group, Why You Only Need to Test with 5 Users
The failure mode here is stopping early because the first 10 threads were vivid. Of the 8 on-topic rows in that 32-row pull, exactly 3 carried a named workaround, and those 3 were worth more than the other 29 combined. Vividness peaks early. The 1st thread you read about a problem is the most interesting one you will read, because everything after it is partly repetition, and repetition feels like diminishing returns when it is actually the evidence accumulating. A code that appears in 9 threads is worth far more than a code that appeared once in a beautifully written post, and the only way to know which you have is to keep going past the point where it stopped being fun.
What the coded corpus looks like halfway through a pass
Threads read
47
Distinct problem codes
11
New codes, last 10 threads
1
Rows with a named workaround
19 of 63
A worked example of the sheet layout, not a client's live numbers. The counts are illustrative; the columns, the new-codes-per-ten-threads counter and the single-source flag are the real operating rules.
The sheet above is the working artifact. In that worked example, 47 threads have produced 11 distinct problem codes, only 1 of them new in the last 10 threads, and 19 of 63 rows carry a named workaround. The 2 columns that make it useful are the ones teams tend to leave out. New codes in the last 10 threads is your saturation meter. Rows with a named workaround, as a fraction of total rows, is your quality meter: a corpus where almost nothing carries a workaround is a corpus of complaints rather than a corpus of priced problems, and it should make you widen the query rather than write the report.
The single-source flag matters just as much. In the mock, one problem has 4 rows and all 4 come from the same thread. That is 1 person's opinion counted 4 times, and it will sit misleadingly high in any frequency ranking unless you flag it. Count distinct threads, not distinct rows, whenever you rank.
What to do when a community turns out to be dead
Roughly one community in four that looks right turns out to be unusable, and the tell is visible in about 2 minutes. Sort the community by new, look at the last 20 submissions, and check two things: how far back 20 posts takes you, and how many have more than 3 comments. If 20 posts covers 6 months, there is no live conversation to sample. If most posts sit at zero or one comment, there are readers but no discussion, and discussion is what you came for.
A dead community is not always a dead audience, which is the trap. Subscriber counts persist long after activity collapses, so the sidebar number is useless as a selection input. What you want is comments per post over the last month, and you have to look.
When a community fails that check, the usual cause is that the conversation moved rather than stopped. Check for a successor community with a similar name, check whether the topic now lives inside a larger general community as a recurring thread, and check whether the moderators pinned a redirect. In 2 of the last 5 category maps we built, the live conversation had moved to a community with under a 10th of the subscribers of the obvious one, and a pass that sampled only the obvious one would have concluded the category was quiet.
Community selection is where most of the real cost sits, and it is almost never discussed. Picking the wrong 4 subreddits will cost you more than any other decision in the method, because a well-run pass over the wrong communities produces a confident, well-evidenced, ranked list of the problems held by people who will never buy from you. Our subreddit map for developer tools works through how we score communities for this, and the same scoring applies whether you are researching or posting.
How do you turn 200 comments into a ranked problem list?
You split every useful line into 3 columns, keep the exact wording, and grade each row before you count anything. The 3 columns are problem, workaround and trigger, and they are separate because collapsing them into a single summary destroys the 2 that are hardest to recover later.
The three-column coding rubric, with a worked row
| Column | The question it answers | Worked example from a project-management thread | Why it is separate | Source |
|---|---|---|---|---|
| Problem | What is broken, in their words | Cannot tell which of 40 tasks is actually blocking the release | The thing you might build for | derived |
| Workaround | What they do instead today | Keeps a separate spreadsheet of blockers, updated manually each morning | Proof the problem is worth effort, and the real competitor | derived |
| Trigger | What made it hurt enough to post | Missed a ship date because a blocker was invisible until standup | Tells you when to sell and what the demo must show | derived |
| Evidence grade | How much weight this row carries | Tier 3, unprompted with a named workaround, no spend attached | Stops a vivid anecdote outranking a paying customer | derived |
| Verbatim | The exact sentence, untouched | Quoted into the sheet with the permalink, never paraphrased | The wording is the deliverable and cannot be recovered later | derived |
Method: The rubric is FORKOFF's own, refined across client demand passes, and the worked example is a composite illustration written for this post rather than a quotation from any single thread. It is derived from practice, not measured from a dataset, which is why every row is tagged derived.
The workaround column is the one teams drop first and the one that predicts willingness to pay best. Somebody maintaining a manual spreadsheet every morning has already priced the problem in their own time.
The problem column is the obvious one and the least valuable on its own. Every category has a known list of problems, and a pass that only produces that list has told you nothing you could not have guessed.
The workaround column is where the money is. Somebody who has built a manual process to route around a gap has already told you 3 things: the problem is real, it is expensive enough to justify ongoing effort, and here is what your product is actually competing against. It is almost never the competitor you named in your deck. It is a spreadsheet, a recurring calendar reminder, or one person who just knows.
The trigger column is the one that shapes go-to-market rather than product, and it exists because the jobs-to-be-done framing is right that customers hire a product at a specific moment of struggle. People do not post about a background irritation. They post on the day it cost them something, and that day has a shape: a missed release, a month-end close that took a weekend, a customer who churned citing something nobody had visibility on. That shape is your campaign timing and the first 30 seconds of your demo.
The trigger column exists because a purchase has a moment, not just a reason
The jobs-to-be-done literature makes the point that customers hire a product at a specific moment of struggle, and that the moment carries more information than the demographic. A Reddit post is unusually good evidence for this because people rarely post about a background annoyance; they post the day it cost them something. That is why the trigger column is separate from the problem column in the rubric. The problem tells you what to build. The trigger tells you what the first screen of the demo has to show and when the email should arrive.
Source: Christensen, Hall, Dillon and Duncan, Know Your Customers Jobs to Be Done, Harvard Business Review, September 2016
The clearest statement of it we found runs to a 3-hour process with a 200 to 400 data-point target from 4 named sources, posted 2026-04-20 at 65 upvotes and 42 comments. Keeping the verbatim wording is a rule, not a preference, and it is the rule people break first because tidying feels like work. It is not. A paraphrase is a small act of translation into your own vocabulary, which is precisely the vocabulary you are trying to escape. The wording is the deliverable.
I aim for 200-400 data points total. Copy them into a document, one review per line. Don't summarize, keep the exact words. The exact words are the whole point.
The VoC research process I run before writing a single word of copy for a health brand. It takes 3 hours and it's worth more than the copy itself.
Operator noteCopy the exact phrase, never a tidied paraphrase. The wording is the deliverable and you cannot recover it later.
The practical form of that discipline is one row per line, exact text, permalink in the adjacent cell, and no editing at collection time. Edit at analysis time if you must, in a separate column, so the original survives. We have never regretted keeping too much raw text and have repeatedly regretted keeping too little.
Once the corpus is coded, ranking is arithmetic with one adjustment. Rank by distinct threads carrying the code, multiplied by the average evidence grade of those rows, not by raw row count. The multiplication is what keeps a code that appeared 11 times in 1 long thread from beating a code that appeared in 6 separate threads across 3 communities. The second is a market signal. The first is a conversation.
What is a Reddit signal worth against everything else?
A Reddit signal is worth less than an interview and far less than a sale, and the entire purpose of writing that down is so it survives contact with a persuasive thread. Evidence grading is unglamorous and it is the step that most often separates a research pass that changes a roadmap from one that changes a mood.
What a Reddit signal is worth, against everything else you could collect
| Tier | Signal | What it proves | What it does not prove | Weight | Source |
|---|---|---|---|---|---|
| 1 | Somebody paid for a fix | Willingness to pay at a price | That the market is large | Decisive | derived |
| 2 | A scheduled interview where they described the problem unprompted | The problem is real for a named person | That they will pay | High | derived |
| 3 | An unprompted thread describing the problem plus a workaround | The problem is real and costly enough to route around | Who has it, or how many | Medium | derived |
| 4 | An unprompted thread describing the problem only | The problem is articulable | That it is expensive | Low | derived |
| 5 | Upvotes and comment counts on any of the above | The post was interesting | Anything about demand | None | derived |
| 6 | A reply to your own question in a thread | Somebody was polite to you | Nothing, you contaminated it | None | derived |
FORKOFF's own ladder, used to grade every row before a problem list goes to a client. Tier 5 sits below tier 4 deliberately: a score is a popularity measurement, and the most useful post in our 32-row set ranked 30th by it.
2 rows on that ladder tend to provoke an argument. The first is that upvotes and comment counts score zero. They do, and this post's own measurements are the reason: a post carrying an analysis of 17,946 comments ranked 30th of 32 by score, while a band rumour thread ranked 1st. A score measures how interesting a post was to people scrolling. Nothing in that sentence is about demand.
The second is that a reply to your own question scores zero too, which people find counterintuitive because it feels like the most direct evidence available. It is the least. The moment you ask, you have reintroduced every distortion the corpus was valuable for removing: framing, politeness, and the presence of an interested party. You have also, on many subreddits, broken the rules; our post on Reddit self-promotion rules covers where the line sits, and a research question from a brand account lands closer to it than most people expect.
Operator noteDo not reply while collecting. The moment you comment you are a participant and the sample is contaminated.
The corollary is that asking is not banned forever, only during collection. Once the corpus is coded and you have a ranked list, a disclosed question in a community where you have standing is a legitimate and often excellent move. It is simply a different instrument, producing tier-2 evidence at best, and it should be run after the unprompted pass rather than instead of it.
Where a raw search becomes evidence, and where it can still go wrong
The 2 feedback edges in that diagram are the part people skip. What the returned page looks like should change the query you run next, and what you had to throw out during cleaning should become the exclusion list for the pass after. A research pipeline that never feeds back is a pipeline that pays the same noise tax every month forever.
s1rozha1
@s1rozha_
CLAUDE CODE + MCPs JUST TURNED MARKETING INTO AN AUTONOMOUS SOFTWARE LOOP Cody Schneider says the hard part of startups is no longer building. it’s getting customers. and his answer is not another Zapier workflow. it’s code in the cloud making marketing decisions from live bu… Show more
Automated versions of the collection half are common, and the one below drew 49 likes on 2026-07-27. They work for exactly the half they cover. Scraping a category's threads and ranking the most repeated complaints is a genuine time-saver and it is what most of the tooling does. What none of it does is the coding step, because separating a problem from a workaround from a trigger requires reading. Treat automation as a way to collect more and clean faster, never as a way to skip the part where a person looks at the text. The shortest version in circulation compresses the job to 45 minutes, which is achievable for finding an idea and not for validating one; the 2 posts in our corpus that actually coded one drew 64 and 175 comments of scrutiny.
Why do the comments matter more than the posts?
Because the post is a question and the comments are the answers, and almost every collection method in circulation collects posts. Search returns posts. Scrapers return posts. Exports are organised by post. The result is that the default pipeline systematically drops the layer where most of the workaround detail lives.
A typical useful thread: somebody writes 4 sentences asking how other people handle a thing. That post carries the problem, stated generally, and nothing else. Underneath it, 11 people describe what they actually do, 3 of them with specifics, 1 with a spreadsheet template, and 2 arguing about whether the first approach breaks at scale. The post gave you a category. The comments gave you the workaround column, the trigger column, and the disagreement that tells you where the category splits.
A second r/SaaS thread the same day, 239 upvotes and 175 comments, is largely that kind of correction. The disagreement is the part that no other research method hands you for free. In an interview you get one person's view and you have to infer whether it is typical. In a survey you get a distribution with no reasoning attached. In a comment thread you get people explicitly telling each other that the common approach does not work for them and why, which is a segmentation signal arriving unrequested. When 2 camps form in a thread about the same problem, that is almost always 2 different jobs being done by one tool, and it is frequently where a wedge product lives.
Practically, this changes 2 things about the method. First, when you select threads to read properly, comment count is a better selector than score, because it measures how much answering happened rather than how many people found the question relatable. A thread with 40 upvotes and 60 comments is worth more of your time than one with 400 upvotes and 12. Second, budget your reading time per thread rather than per row. 15 threads read completely beats 60 skimmed, and the 15 should be chosen for depth rather than for popularity.
There is a collection wrinkle worth knowing. Reddit's search matches against comment text as well as post text, which is why a post about something else entirely can surface for your query: one commenter used your phrase once. That is a meaningful share of the off-topic rows we measured, and it is not a bug you can filter out, because the same behaviour is what lets you find a thread whose title gives no hint that the answer you need is 4 comments down. The cost and the benefit are the same mechanism. Accept the noise, scope the query hard enough that the noise stays manageable, and read the whole page.
Operator noteThe useful comment is rarely the top one. It is the two-upvote reply describing a workaround in specific detail.
Why do the existing guides stop where they stop?
Because most of them are written to rank for the query rather than to be used, and the 2 goals diverge exactly at the point where the work gets boring. We read the editorial results across the 4 queries we pulled, and the pattern is consistent enough to be useful as a map of what is missing.
Almost all of them cover finding subreddits, and several cover search operators. That is the part which is easy to write, easy to illustrate, and pleasant to read, and it is roughly the first 25 minutes of a 4-hour pass. After that they diverge into either a tool recommendation or a list of things you might look for, and neither is a method. None of the ones we read stated a sample size. None stated a stopping rule. None separated a problem from a workaround, which means none of them produce the column that predicts willingness to pay. And none graded evidence, so none of them address the question a reader actually has when they finish, which is how much they are allowed to believe what they just found.
That absence is why this post is shaped the way it is. The genuinely hard parts of Reddit research are not access, they are sampling and interpretation, and those are the parts every incumbent skips. It is also why the corpus outranks the commentary. Our own cluster is a fair test: 24 posts live here, and none outranks the raw threads for these 4 terms. A reader who wants to know what people think about a category is better served by the thread than by an article about how to read the thread, and Google's results reflect that accurately.
The one incumbent worth reading in full is the platform's own guidance on conducting market research, and for a different reason than method. Reddit's business learning hub describes the platform as its owner wants it described, which is a useful calibration point to hold against what the threads show. Where the hub and the corpus disagree, believe the corpus. The corpus is the evidence and the hub is the sales material, and noticing that distinction is itself a small piece of research training.
2 things that follow from all this. If you write up your own pass internally, the sections that will make it useful 6 months later are exactly the ones the public guides omit: what you sampled, how much, when you stopped, and how much you believed it. And if you are choosing between reading another guide and running a ninety-minute pass, run the pass. The corpus in your category has specifics in it that no general article can carry, which is the whole reason it is worth reading in the first place.
Which failure modes will quietly ruin the read?
Five, and the reason they are dangerous is that 4 of the 5 produce a clean-looking result. A research pass that has been wrecked by sampling bias does not come back empty. It comes back confident, ranked, and wrong, which is a considerably worse outcome than coming back empty, because somebody will build against it.
Before the list, one framing that makes all five easier to hold. Every failure below is a sampling failure rather than a Reddit failure, and every one of them has an exact analogue in the other free corpora teams reach for. App store reviews carry the same self-selection. Support tickets carry the same survivorship problem, worse, because only customers who stayed can file one. A community Slack carries the same astroturf risk with less moderation. Nothing here is an argument for preferring a different free source; it is an argument for reading any free source with a procedure.
Crosspost duplication inflates a count. This is the only one that is trivially fixable and it is still the one that got us. In our 50-row pull, 17 rows were 6 underlying posts, 1 of which had been crossposted into 6 regional communities. Counted naively, that single post looks like 6 independent signals from 6 different audiences. Deduplicate on normalised title before you count anything, and if a post carries a crosspost origin field, use it. The cost of missing this is an hour and a wrong rank order.
Score weighting hides the specific post. Reddit's ranking, and every default sort built on top of it, optimises for how interesting a post was, and specificity is not interesting. The detailed account of one team's workflow, with numbers, gets fewer upvotes than a broad relatable complaint, every time. Our own data is the clean example: the 17,946-comment analysis at fourteen upvotes. Read the whole returned page, or sort by relevance and read past the fold. Never read the top five and stop.
Self-selection skews who posted. This one cannot be cleaned, only bounded. The people who post about a problem are more articulate, more annoyed and more online than the people who have it, and no amount of sampling discipline changes that, because the bias is in who wrote the corpus rather than in how you read it. The bound is to never make an incidence claim from Reddit. Say the problem exists and here is how people describe it. Do not say how many people have it. If you need incidence, that is what a survey is genuinely good at, and it is the one row where a survey beats everything else in our comparison grid.
Astroturf and vendor seeding. Some share of any commercially interesting thread is people with something to sell, sometimes disclosed, often not. It is more common in categories with high customer value and in threads that read as recommendation requests. The tells are cheap to check: an account with a short history, a posting pattern concentrated on one product's category, enthusiasm with no specifics attached, and a workaround description that is really a feature list. When a thread is heavily seeded it usually shows up as unusual agreement, because real peer threads contain disagreement. We wrote up the broader pattern in how Reddit detects bots and spam, and the detection signals are also the reading signals.
Machine written comments. This is the newest failure mode and the hardest one, and it is growing. A fluent, well-structured, evenly-paragraphed comment from a recent account, appearing across several unrelated communities, is not a customer voice. It may not be a person. Since 2025 we read a commenter's history before quoting them, which takes about 15 seconds and removes the great majority of the risk. 1 synthetic voice in a sample of 40 is enough to move a rank order, and unlike the other 4 failure modes, this one produces text that reads better than the real material, so it is disproportionately likely to end up quoted in a deck. Several communities have responded with outright bans, which we covered in the subreddit AI content ban playbook; for a researcher those bans are a small mercy, because they make the remaining corpus cleaner.
Operator noteRead comment histories before quoting. A new account writing fluent paragraphs across six unrelated subs is not a customer.
Tiny sample size, so don't read this as gospel. But the pattern was strong enough that i'm changing the workflow.
That quote is the tone to aim for in your own write-up. That note sat at 10 upvotes and 18 comments. Small sample, stated plainly, pattern strong enough to act on, action named. A research memo that hedges everything is useless, and one that claims certainty it does not have is worse. The convention we use is to put the sample size and the date in the first line of every finding, so nobody downstream has to go looking for the caveat.
How do you run this on a cadence instead of once?
You re-run identical queries on a fixed interval, diff the result against the previous pass, and promote the codes that grew rather than the codes that are loudest. A single research pass is a photograph, and it ages out in about a quarter in most categories, faster in anything touched by a fast-moving tooling shift.
Identical is the operative word. If you widen the window, change the sort, or add a community between passes, the diff is meaningless, because you cannot tell a real change in the market from a change in your instrument. Freeze the query set. Keep it in a file. Add new communities as a separate, additionally-run query rather than by editing the existing ones, so the historical series stays comparable.
What you are watching for is second-derivative information that a single pass cannot give you. A code that appeared 2 times last month and 11 times this month is a story, even at a low absolute count. A code that has sat at 9 for 3 passes is stable, real, and probably already served by somebody. A code that has produced no new rows across 2 consecutive passes is closed, and should be retired from the sheet rather than carried forever, because a sheet nobody prunes stops being read.
Katie Keith
@KatieKeithBarn2
Following a talk about market research, a team member suggested to attend some nonprofit events to learn more about the sector and approach people about Document Library Pro which is popular with nonprofits. Another talk reminded me to re-trawl online forums as market research f… Show more
That conference note, 57 likes on 2026-06-12, is the habit in the wild, and the phrasing is the useful part: re-trawl the forums now that people are discussing the new features. The trigger for a re-run is not a calendar date, it is an event in the market. A major competitor release, a pricing change, a platform deprecation, or a new capability landing in the category all justify an off-cycle pass, and all 3 produce a burst of exactly the posts you want, written by people in the middle of reacting.
There is a second reason to keep the cadence, which is that it converts research into a distribution asset almost for free. A team that has read its category's threads every month for 6 months knows which communities are worth posting in, which topics reliably draw discussion, and which phrasings land, and that knowledge is exactly the input a posting strategy needs. The Reddit marketing strategy hub covers the posting side, and the B2B founder playbook covers the account-building side. Listening first is what makes both of those work, and skipping straight to posting is why most brand accounts read like brand accounts.
I stopped brainstorming business ideas. I started mining Reddit instead. Here's the 45-minute framework.
What does the tooling actually cost?
Nothing, if you want it to. Reddit's own search plus a spreadsheet runs the entire method described here, and a paid tool buys you speed, history and export rather than better evidence. The honest threshold is that a tool starts paying for itself when you are running the pass monthly across more than about 5 communities, because at that point manual collection is the step that quietly stops happening.
Do you need a paid Reddit research tool?
No. The free Reddit search interface plus a spreadsheet does the whole method, and a paid tool buys you speed and history rather than better evidence. A tool is worth paying for once you are running the pass monthly across more than about five communities, because manual collection is the part that stops getting done.
Four of the ten results on the reddit market research tool query we pulled were vendor pages. The differentiator between them is retention window and export format, not insight quality.
The tool market for this is real and visible. On the query for a Reddit market research tool, 5 of the 10 results we pulled were vendor pages. What they compete on, once you strip the positioning, is how far back their archive goes, how quickly you can filter it, and what comes out the other end. None of them competes on the coding step, because none of them does it.
Who ranks for the four research queries, measured 2026-09-12
| Query | Reddit threads in top 10 | Everything else | AI Overview | What the mix says | Source |
|---|---|---|---|---|---|
| reddit market research | 7 | 2 vendor blogs, 1 scraper-tool page | present | Reddit outranks everyone writing about Reddit | measured |
| how to use reddit for market research | 4 | 5 vendor blogs plus Reddit's own learning hub | present | The only query where editorial competes | measured |
| reddit for customer research | 7 | 2 vendor blogs, 1 scraper-tool page | present | Same shape as the head term | measured |
| reddit market research tool | 5 | 5 tool vendor pages | present | A separate, transactional query | measured |
| All four combined | 23 of 40 | 17 non-Reddit results across 9 distinct domains | 4 of 4 | The corpus outranks the commentary | derived |
as of 2026-09-12
Method: Live Google organic results pulled through firecrawl.dev, location United States, 10 results per query, plus a separate SERP-features read per query, all on 2026-09-12. Reddit threads counts any result on the reddit.com domain, including subreddit home pages. The combined row is arithmetic on the four rows above it. A different day or country returns a different page.
People Also Ask appeared on all four queries and a video pack on the how-to query only. The r/Marketresearch subreddit home page, a community for market research professionals rather than a page about Reddit, held position 1 on three of four.
Our own view, having run this both ways, is that the free path is the right starting point and staying on it too long is a common mistake. The failure is not analytical, it is operational: a manual pass takes 3 to 4 hours, a busy month arrives, the pass gets skipped, and the series you were building breaks. The value of this method is almost entirely in the series. A single pass tells you what people complain about. 6 passes tell you what is changing, and that is the part worth paying to protect.
We keep a running comparison in the best Reddit marketing tools, and the same evaluation applies to research tooling: check the retention window first, the export format second, and treat every insight feature as a convenience rather than a reason to buy.
Reddit publishes its own guidance on this, and it is a useful check on your own framing
Reddit's business learning hub carries an article on conducting market research on social media, and it ranked tenth for the how-to query in our pull. It is worth reading once, not for method but for calibration: it describes the platform as its owner wants it described, which is a useful contrast against what the threads themselves show. Where the two disagree, the threads win, because the threads are the evidence and the hub is the sales material.
Source: Reddit for Business learning hub, Conduct market research on social media
How to Use AI to Find a $1M Idea [Reddit, Claude]
Starter Story
A walkthrough of using Reddit plus an assistant to find and size an idea. Worth watching for the collection half; the sampling and grading discipline is the part these walkthroughs consistently skip.
Walkthroughs like that one, in this case a video at 552,962 views, are worth an hour if you have never done this, and the thing to notice while watching is what gets compressed. The collection is always shown in detail because it is visual and fast. The reading, coding and grading is always summarised, because it is slow and looks like nothing. That asymmetry is why so many teams end up with a folder of scraped threads and no ranked list.
What do you ship at the end of it?
A ranked problem list with verbatim wording, a named workaround per problem, an evidence grade per row, an exclusion list for next time, and 3 interview scripts. Not a report. The distinction matters because a report is something people agree with and file, while a set of interview scripts is something somebody has to go and do, and the research only becomes valuable at the moment somebody does it.
The ranked list should be short. 5 problems is plenty, 3 is often better. A list of 15 means the coding collapsed distinct problems into a category then split it back out, and nobody can act on 15.
The verbatim wording gets used immediately and in 2 places. The first is the landing page, where a headline written in the market's own phrasing consistently outperforms one written in yours, because it passes the 5 second is-this-for-me test without the reader having to translate. The second is the interview script, where using their words rather than yours stops you leading the witness in exactly the way the Reddit corpus was valuable for avoiding.
The named workaround is what the demo has to beat. Not a competitor's feature list, the actual manual process somebody maintains today. If your product does not obviously remove that process, you have not built a replacement, you have built an addition, and additions are much harder to sell.
The evidence grade travels with every row into every downstream document, and this is the discipline that decays fastest. A tier-3 finding that gets copied into a deck without its grade becomes a fact by the 3rd slide, and by the roadmap meeting nobody remembers it came from 4 threads. Keep the grade in the same cell as the claim.
The exclusion list is the cheapest compounding artifact in the method. Record what you threw out and every later pass gets faster; by the 3rd, a pass takes about half as long as the 1st.
Then you go and run the interviews, and the interviews are where a medium-grade signal becomes a high-grade one or dies. That is the whole arc: the corpus tells you what to ask about and in what words, the conversations tell you whether it is real for named people, and a paid test tells you whether anybody cares enough to move money. Reddit is genuinely excellent at the first of those three and cannot do either of the others, and a method that is honest about that boundary is worth more than a tool that is not.
For where this sits inside a wider Reddit programme, the strategy hub covers posting, the services versus DIY comparison covers whether to run it in-house, and how to choose a Reddit marketing agency covers what to ask whoever you hire. If you are researching an AI product specifically, the Reddit stack for AI startups names the communities worth sampling first. And if your pass turns up a thread about you rather than about the category, that is a different job with a different clock, covered in how to remove a Reddit post about your brand.
Is it fair to use what people wrote?
Publicly posted threads are fair to read and to learn from, and the boundaries worth respecting are about attribution, consent and scale rather than about access. Nobody who posts in a public community is surprised that strangers read it. What they did not sign up for is being named in a marketing asset, having their words repackaged as your insight, or receiving a cold pitch because an automated system decided they were a lead.
3 rules cover almost every case in practice.
Attribute when you quote, and link. Every quote in this post carries the account name and the permalink, which is the same standard we would want applied to us. If a person's wording is good enough to reproduce, it is good enough to credit, and the link also lets a reader check the context you pulled it from. That last part is the honest reason for the rule: an uncited quote cannot be verified, and an unverifiable quote in a research memo is indistinguishable from one you wrote yourself.
Aggregate when you report. A finding is a pattern across many threads, and the useful output is the pattern rather than a gallery of individuals. Where we report counts in this post, the counts are of rows and posts, not of named people, and the individuals appear only where the quote itself is the point.
Never turn a research pass into an outreach list. This is the line that gets crossed most often, usually with the best intentions, because the person describing your exact problem in public looks like an obviously qualified prospect. Messaging them because you read their complaint is unwelcome on essentially every community, it is against the norms of the platform, and it converts a research programme into a spam incident. Reddit's own content policy and user agreement set the platform-level terms, and its data API terms govern programmatic access specifically, which matters if you are collecting at any scale rather than reading by hand.
The practical version of all three is that a research pass should leave no trace in the communities it read. You collected, you did not post, you did not message anyone, and the only artifact is internal. If somebody in one of those communities later found your ranked problem list, the worst thing they should be able to say is that you paid attention.
There is a separate, softer obligation that is worth taking on anyway. If a community's threads made your product better, that community is a reasonable place to show up later with something useful and disclosed. Not a pitch. An answer, a teardown, a summary of what you learned. Several of the accounts we quote in this post did exactly that, and the reason their posts are useful is that they gave the method away. The Reddit AMA playbook is the structured version of that move, and it works considerably better when you have read the community for a quarter first.
How does this change by product type?
The method does not change and 3 variables move: which communities actually hold your buyers, how much of the useful material sits in comments rather than in the top-level posts, and how far the trigger sits from the moment of purchase. The rubric, the saturation rule and the evidence ladder are identical in every case; what changes is how many scoped queries you run and how sceptical to be of any ranking.
For developer tools, the corpus is unusually good and unusually scattered. Engineers describe problems with precision, include error messages, and reliably state their workaround because the workaround is code. The scatter is the cost: your buyers are spread across a language community, a framework community, a role community and 2 or 3 tool-specific ones, and a pass that only samples the role community will systematically miss the specific complaints. Expect to run 6 or 7 scoped queries rather than 4, and expect a much higher share of the value to sit in comments, because the top-level post is usually a question and the good material is somebody answering it.
For B2B SaaS aimed at an operations or finance buyer, the corpus is thinner and the trigger is sharper. There are fewer communities, they are less active, and the posts are more likely to be recommendation requests than problem descriptions. The compensation is that when somebody does describe a problem, the trigger is nearly always a date: a month-end close, a quarter-end report, an audit. That makes the trigger column unusually valuable for campaign timing, and it makes a past-year window safe, because the annual cycle repeats.
For consumer products, everything inverts. The communities are large and fast, the corpus is enormous, and self-selection is far more severe because the population posting about a consumer category is very different from the population buying in it. Saturation arrives quickly on problems and never arrives on sentiment. Use it for language and for discovering unexpected use cases, and be considerably more sceptical than usual about any ranking. Our consumer app launch week playbook covers the distribution side of that asymmetry.
For AI products, the distinctive problem is corpus contamination and it is getting worse. The category attracts both heavy promotion and a high volume of machine-written commentary, so the astroturf and synthetic-comment failure modes both run hotter than the baseline. Read histories more aggressively, weight communities with active moderation higher than large ones, and treat any unusually agreeable thread as suspect. The Reddit stack for AI startups names the communities where the signal-to-noise is still good.
The one constant across all four is that the workaround column carries the most information, and the fastest way to tell whether a pass went well is to count how many rows have one. Below about 20 percent, you sampled a complaint channel rather than a problem space, and the fix is almost always a different set of communities rather than more threads from the same ones.
What does a ninety-minute version look like?
The full pass takes 3 to 4 hours the first time. There is a shorter version that is genuinely useful, takes about 90 minutes, and is the right thing to run before a roadmap conversation when nobody has 90 minutes to spare, let alone 4.
Spend the first 15 minutes picking communities rather than searching. Write down 4, and for each one write a sentence on why your buyer would be in it. If you cannot write the sentence, the community is a guess and should be replaced. This step feels like procrastination and it is the highest-leverage quarter-hour in the exercise, because every later minute is spent inside whatever you chose here.
Spend the next 25 minutes collecting. One scoped query per community, relevance sort, past year, the largest result count the interface will give you. Paste titles, permalinks and scores into a sheet, one row each, and do not read properly yet. Dedupe on title as you go. You should end with somewhere between 30 and 60 unique rows and a clear sense of which communities are productive.
Spend 40 minutes reading and coding, and read the whole thread for the 15 or so rows that look most specific rather than skimming all 60. Specificity is the selector, not score. For each one, pull the problem, the workaround if there is one, the trigger if it is visible, and at least one verbatim line. Keep a tally of new codes in the margin. If you reach the 15th thread and the last 3 added nothing new, you are done early, which is a real outcome and not a shortcut.
Spend the final 10 minutes ranking and writing 3 questions. Rank by distinct threads times average grade, take the top 3, and for each one write the question you would ask a customer to find out whether it is real for them. Those 3 questions are the deliverable. Everything else is working material.
What the short version gives up is the cadence, and therefore the second-derivative information that makes this compound. It will tell you what people complain about in your category today. It will not tell you what is growing, because there is nothing to diff against. Run it once to see whether the corpus is worth the 4 hours, and if it is, put the full pass on a monthly slot before the enthusiasm fades.
Every figure here comes from 1 of 2 places. The first-party half is 2 Reddit API pulls and 4 firecrawl SERP reads, all on 2026-09-12, covering 82 returned rows and 40 organic results. The rest is other people's self-reported numbers, always attributed. Nothing rests on a figure we could not link to.
The thing we would most want somebody to take from this is the smallest one. Reddit is not a magic source of truth about a market, and it is not worthless anecdote either. It is a large, free, unprompted corpus with a bad interface and a known set of biases, and every one of those biases has a procedural answer. Scope the query. Dedupe the page. Read past the fold. Code in 3 columns. Grade before you count. Diff against last month. None of that is clever, and all of it is the difference between a ranked list somebody can act on and 3 interesting threads in a document nobody opens again.















