Forums in AI Search Citations: How Often Threads Get Cited

Forums in AI search citations: only 17 of 2,525 citations were discussion threads, mostly on error-message questions. When forums matter for AI visibility.

· BugViso Team

12 min read

Forums are a small share of AI search citations for most B2B questions, and a large share of a narrow kind: troubleshooting questions with an error message in them. Across 400 buyer answers from ChatGPT, Gemini, Perplexity and Claude, discussion threads from Reddit, Stack Overflow, GitHub issues and community forums received 17 of 2,525 citations (0.7%). Six of the 13 answers that cited a thread came from one prompt about a React error code.

So "post on Reddit" isn't a universal GEO tactic, and "forums don't matter" isn't either. By the end of this post you'll know how often each engine cites threads, which questions draw them, why "forum" counts in dashboards run high, and where community answers are worth your time. A script classifies the forum citations in your own answers.

Data used: 50 buyer prompts (35 unbranded, 15 branded) × ChatGPT, Gemini, Perplexity and Claude × 2 runs on 2026-10-20 (400 answers, 2,525 citations, web search on), collected by BugViso's AI Visibility Tracker for bugviso.com (website-audit software). Cited URLs were classified by host and path with the script below. Individual threads and authors aren't named.

Threads, Developer Platforms and Video Are Different Sources

"Forum" in most AI visibility tools means user-generated platforms in general, which mixes three sources engines use very differently. BugViso's citation typing is broad by design: Q&A sites, Reddit, GitHub, dev.to, Medium, YouTube and social networks all count as "forum". That's 48 of our 2,525 citations (1.9%). Splitting them by what the cited page actually is:

Source kindWhat the cited page isCitationsShare of all citations
Discussion threadsA Reddit or Stack Overflow question, a GitHub issue, a community-forum topic170.7%
Developer platformsA GitHub repository or file, a dev.to or Medium article331.3%
VideoA YouTube video20.1%

The thread count includes 4 citations from vendor community forums (community. subdomains) that a domain list types as "other", which is why it doesn't line up exactly with the forum type.

The difference matters for what you do next. A cited GitHub repository is documentation. A cited dev.to article is a blog post on a shared platform. Only the 17 threads are conversations you could join.

Forums in AI Search Citations, Engine by Engine

Gemini cited threads most, and was the only engine to cite Reddit or Stack Overflow at all.

EngineCitationsThreadsDeveloper platformsVideoThread share
Gemini4619622.0%
Perplexity1,44051700.3%
Claude4102700.5%
ChatGPT2141300.5%
All engines2,525173320.7%

All 3 Reddit threads and all 3 Stack Overflow questions in the data came from Gemini, which grounds its answers in Google Search results (grounding with Google Search returns the pages it used). Perplexity cited the most user-generated pages in absolute terms, 22, but most were developer articles and repositories, a small slice of result lists that run up to 15 sources per answer.

These are API answers with web search on. Consumer apps can show different sources, and a category with an active hobbyist community will look different from website-audit software. Treat the engine pattern as the finding, not the exact shares.

The Questions That Draw Threads

Threads were cited on troubleshooting questions, especially ones containing an error message or a "why does X differ" puzzle. Only 13 of 400 answers cited a thread:

PromptAnswers citing a threadWhat was cited
What website audit tool can find React hydration errors like #418 and explain the cause6GitHub issues and a Stack Overflow question about the error
Why do PageSpeed Insights results differ from other speed testing tools2Reddit and Stack Overflow threads asking the same question
My robots.txt allows AI bots but they still get a 403, which audit tool can diagnose this2Vendor community-forum topics on bot blocking
How can I check whether ChatGPT and Perplexity crawlers are blocked by my CDN or firewall2Vendor community-forum topics
What should I look for in a website accessibility checker1A Reddit thread on evaluating tools

By buyer stage, 5 of 104 learn answers, 6 of 184 consider answers and 2 of 112 purchase answers cited a thread. The common thread, so to speak, is a concrete problem: an error code, a mismatch between two tools, a block nobody can explain. That's exactly what Q&A threads contain, and engines go there when the question reads like a support ticket.

No "best tool for X" shortlist question in our set cited a thread. For shortlists, engines went to list pages and vendor sites, which we covered in AI search citation sources.

Do Thread Citations Help a Brand Get Named?

Only when the brand solves the problem in the thread. Three of the 13 answers that cited a thread named our brand, all on the React hydration error prompt. That's the one question where our product does something specific (it detects hydration errors such as #418 in the page's console and explains the fix), and engines combined the threads describing the error with our page describing the fix.

In the other 10 thread-citing answers, the threads explained the problem and the answer then named general-purpose tools, usually free ones. A thread can't recommend you if nobody in it mentions you, and on most of these questions nobody had.

That points to the realistic forum play for a B2B product:

  1. Find the error messages and puzzles your product solves. List the exact strings: error codes, status codes, warnings from popular tools.
  2. Check whether threads about them get cited. Run those as prompts. If engines cite threads, those threads are the source to join.
  3. Answer as an expert, not a vendor. Explain the cause and the fix in the thread. Mention your tool only where it does something the free options don't, and disclose that you work on it.

💡 Rule of thumb: a forum answer earns its place when it would be the accepted answer without the product link. Communities remove promotional posts, and an answer removed from the thread can't be cited.

Why Forum Counts in Dashboards Run High

Because domain lists type whole platforms, not pages. BugViso's tracker typed 48 of our citations as "forum": 28 GitHub, 10 dev.to, 3 Reddit, 3 Stack Overflow, 2 YouTube, 2 Medium. Of the 28 GitHub citations, 14 were repository or profile pages, 7 were files inside repositories and 7 were issues or discussions.

Typed "forum" by domainCitationsOf which discussion threads
github.com287 (issues and discussions)
dev.to100
reddit.com33
stackoverflow.com33
youtube.com20
medium.com20
Total4813

A 1.9% "forum" share looks like a community channel. A 0.7% thread share, concentrated on one error-message prompt, looks like a support-content opportunity. Read the URLs behind the type before you budget for community work. Our post on review sites in AI citations found the same effect with review platforms.

Classify Forum Citations Yourself

This script reads an answer export and classifies each cited URL as a discussion thread (Reddit, Stack Overflow, Quora, Stack Exchange, Hacker News, GitHub issues and discussions, community./forum. subdomains), a developer platform (GitHub repositories, dev.to, Medium) or video. It prints the split per engine, the buyer stages and prompts that drew threads, and the thread hosts. Standard library only.

python
#!/usr/bin/env python3
"""How often do AI engines cite forums and discussion threads? Separates real threads
(Reddit, Stack Overflow, Quora, GitHub issues, community forums) from developer platforms
(GitHub repos, dev.to, Medium) and video, per engine and buyer stage.

Usage: python3 forum_citations.py answers.csv [--brand Acme]
answers.csv columns: engine, intent, prompt, answer, cited_urls (space-separated), branded (1/0).
"""
import argparse, csv, re
from collections import Counter, defaultdict
from urllib.parse import urlparse

THREAD_HOSTS = ("reddit.com", "quora.com", "stackoverflow.com", "stackexchange.com", "news.ycombinator.com",
                "superuser.com", "serverfault.com")
THREAD_SUB = re.compile(r"^(community|forum|forums|discuss|discourse|answers|groups)\.")

def kind(url):
    u = urlparse(url)
    h, p = (u.hostname or "").lower().removeprefix("www."), u.path.lower()
    if h.endswith(THREAD_HOSTS) or THREAD_SUB.match(h):
        return "thread"
    if h == "github.com":
        return "thread" if re.search(r"^/[^/]+/[^/]+/(issues|discussions)/", p) else "dev platform"
    if h in ("dev.to", "medium.com") or h.endswith(".medium.com") or h == "hashnode.dev":
        return "dev platform"
    if h.endswith(("youtube.com", "youtu.be", "vimeo.com")):
        return "video"
    return None

def main():
    ap = argparse.ArgumentParser()
    ap.add_argument("csv"); ap.add_argument("--brand")
    a = ap.parse_args()
    you = re.compile(r"(?<![\w-])" + re.escape(a.brand) + r"(?![\w-])", re.I) if a.brand else None
    eng = defaultdict(Counter); stage = defaultdict(Counter); hosts = Counter(); prompts = Counter()
    for r in csv.DictReader(open(a.csv, newline="", encoding="utf-8")):
        urls = r["cited_urls"].split()
        ks = [kind(u) for u in urls]
        eng[r["engine"]]["citations"] += len(urls)
        for u, k in zip(urls, ks):
            if k:
                eng[r["engine"]][k] += 1
            if k == "thread":
                hosts[(urlparse(u).hostname or "").removeprefix("www.")] += 1
        if "thread" in ks:
            stage[r.get("intent") or "?"]["answers with a thread"] += 1
            prompts[r["prompt"][:70]] += 1
            if you and you.search(r["answer"]):
                stage[r.get("intent") or "?"]["...that named you"] += 1
        stage[r.get("intent") or "?"]["answers"] += 1
    print(f"{'engine':<12}{'citations':>10}{'threads':>9}{'dev platforms':>15}{'video':>7}{'thread share':>14}")
    for e, c in sorted(eng.items()):
        print(f"{e:<12}{c['citations']:>10}{c['thread']:>9}{c['dev platform']:>15}{c['video']:>7}"
              f"{100 * c['thread'] / max(1, c['citations']):>13.1f}%")
    print("\nby stage: " + "; ".join(f"{s}: " + ", ".join(f"{k} {v}" for k, v in c.items()) for s, c in sorted(stage.items())))
    print("thread hosts: " + ", ".join(f"{h} {n}" for h, n in hosts.most_common(10)))
    print("prompts that drew threads:")
    for p, n in prompts.most_common(8):
        print(f"  {n}x  {p}")

if __name__ == "__main__":
    main()

On our export it prints:

text
engine       citations  threads  dev platforms  video  thread share
chatgpt            214        1              3      0          0.5%
claude             410        2              7      0          0.5%
gemini             461        9              6      2          2.0%
perplexity        1440        5             17      0          0.3%

thread hosts: github.com 7, reddit.com 3, stackoverflow.com 3, community.cloudflare.com 2, community.perplexity.ai 2

Add your category's communities to THREAD_HOSTS: a trade forum, a framework's Discourse, a subreddit-heavy niche. Needs Python 3.9 or later.

How BugViso Tracks Forum Citations

BugViso's AI Visibility Tracker types every cited domain from every answer as your site, a tracked competitor, or a review, forum, news, reference, directory or other source. Known platforms are matched by a rule list first, and the remaining domains are classified once by an AI model and cached. The sources view shows the actual domains behind each type, with their most-cited URLs, which is the list to read before acting on a type.

When answers cite forum-typed sources, the "what to do" plan includes an item to earn mentions in the communities engines read. It names the cited forum domains as targets (falling back to Reddit and Quora), lists the buyer questions you lost, and can draft a helpful answer for a thread from your site's facts. Its steps rule out fake or astroturfed posts. The forum breakdown and the plan are part of the AI visibility tracker report.

Forum Mistakes That Waste Effort

Treating "forum" as one channel. GitHub repos, dev.to articles and Reddit threads need different work. Split the type before planning.

Posting product links to win citations. Promotional posts get removed by moderators, and Reddit's content policy prohibits spam and content manipulation. Google's spam policies treat user-generated spam as spam too. A removed post can't be cited.

Joining threads that don't get cited. If your prompts never draw a thread, community work won't move AI answers for those prompts, whatever it does for your brand otherwise.

Assuming consumer-category numbers apply. Categories with large hobbyist communities may see far more thread citations than B2B software. Measure your own prompts before adopting someone else's percentage.

Frequently Asked Questions

How often do AI search engines cite forums?

In our 2,525 citations from four engines, discussion threads made up 0.7% (17 citations). A broader "forum" type that includes GitHub, dev.to, Medium and YouTube reached 1.9%. Gemini cited threads most, at 2.0% of its citations.

Does ChatGPT cite Reddit?

Not in our data: ChatGPT cited one thread in 214 citations, from a vendor community forum, and no Reddit thread. Gemini cited all 3 Reddit threads. Results depend on the category and on API vs app, so test your own prompts.

Which questions make AI engines cite forums?

Troubleshooting questions: an error code, a "why does tool A differ from tool B" puzzle, a block nobody can explain. In our data, one prompt about React hydration error #418 accounted for 6 of the 13 answers that cited a thread.

Is Reddit marketing worth it for AI visibility?

Only where threads get cited for questions your product solves, and only as genuine expert answers. Check your prompts first. If engines cite threads on your problem space, join those threads; if they don't, put the effort into the list pages and your own answering content.

Why does my AI visibility tool show a high forum share?

Because it types whole platforms such as GitHub, Medium or YouTube as "forum". In our data, only 13 of 48 forum-typed citations were discussion threads. Check the URLs behind the number.

Answer the Error Messages Your Product Solves

Forums earn AI citations on troubleshooting questions, not shortlists, so the forum work worth doing is answering the specific errors and puzzles your product solves, in the threads engines already cite. BugViso's AI visibility tracking lists the forum URLs behind every answer, so you can see whether that's your category before you spend a week on it.

Written by

· BugViso Team

Kazi writes BugViso’s guides on website audits, Core Web Vitals, technical SEO, accessibility and AI search. The data in them comes from audits BugViso runs in a real Chromium browser, including our 219-site study of website health.

Found this useful? Share it.

Summarise with AI

Open this guide in your assistant.

Follow BugViso

New guides and audit data as we publish them.

See where your site stands

Run a free BugViso audit for SEO, speed, accessibility and AI search readiness — with fixes you can ship today.