Discourse Feed Widget for Website. Free JSON API - Poper
Discourse Feed Widget

Discourse forums on any website.

Embed any Topic list, Category or tag from a Discourse forum in 90 seconds via the public JSON API. Self-hosted or Discourse-hosted. Free, no code.

No credit card required
14-day free trial
Cancel anytime
Discourse Feed widget displayed across iPhone, iPad and Macbook showing a Discourse forum Topic list with Categories, tags, trust-level badges and reply counts

Trusted by 11,000+ brands

Timetics
Academie Digitale
Goldcast
nbcf
Seedstock
Wow
Linkxar
Gale Toyota
Skills
Rugby Sport
Lamp
Leaktronics
Steel
Theatre in Chicago
Globerto
Meetup
FYM
Zeben
Kraftix
IETraditionala
Meethires
Leadscrape
Happily
Timetics
Academie Digitale
Goldcast
nbcf
Seedstock
Wow
Linkxar
Gale Toyota
Skills
Rugby Sport
Lamp
Leaktronics
Steel
Theatre in Chicago
Globerto
Meetup
FYM
Zeben
Kraftix
IETraditionala
Meethires
Leadscrape
Happily
Free forever, paid plans from $19/mo

Try the live Discourse widget

Live demo, not a screenshot. Paste a forum URL, pick a Category, brand it, embed it. What you see here ships to your site.

From Discourse to your site

Your Discourse reviews. Now on your own domain.

Poper crawls the official Discourse review feed for your business and renders it inline on your website. Same reviews, your branding, your domain.

discourse.org
Discourse forum (forum.acme.com) showing the Acme Community Forum header with 47K members, Latest topic list and 3 highlighted topics: Marcus's monorepo deployment thread (#deployment, 47 replies), Priya's dark mode feature request (#feedback, 89 replies), and Aïsha's pinned CI tutorial (#tutorials, 23 replies)Source: DiscourseOpen
Discourse forum (forum.acme.com) showing the Acme Community Forum header with 47K members, Latest topic list and 3 highlighted topics: Marcus's monorepo deployment thread (#deployment, 47 replies), Priya's dark mode feature request (#feedback, 89 replies), and Aïsha's pinned CI tutorial (#tutorials, 23 replies)
acme.com
Poper widget live

Mockups for illustration. Pull your real Discourse Feed Widget: Embed Forum Topics, Categories and Tags on Any Website from Discourse and embed in 90 seconds.

How to use it

How to embed a Discourse forum on your website

Three steps. Under two minutes. No developer needed. Works on every Discourse instance, self-hosted or hosted.

  1. 01

    Paste a Discourse forum URL

    Drop in any public Discourse forum URL. Poper appends .json to read the public JSON API that every Discourse instance ships with by default. No API key needed for public Topics.

    Poper widget builder showing the Discourse forum search input with Acme Forum (forum.acme.com, 47K members) autocomplete result and a blue Connect button
  2. 02

    Pick Categories, tags, layout and trust-level filters

    Choose Latest, Top, Hot, New or Unread. Filter by Category, multi-select tags, minimum trust level, solved status or staff-only. Pick a card, list, masonry or roadmap layout.

    Layout picker showing 6 Discourse widget layouts (Topic List, Cards, Masonry, Magazine, Compact, Roadmap) with topic-card and reply-count style plus brand color picker and trust-level (TL0-TL4) controls
  3. 03

    Copy the snippet and embed

    Paste the one-line script tag into your site. Works on Webflow, Framer, self-hosted Discourse, Circle.so, Ghost and 250+ platforms.

    Code snippet with blue Copy button and 5 community platform cards (Webflow, Framer, self-hosted Discourse, Circle.so, Ghost) showing one-click embed compatibility

Works everywhere

Works with every website platform you already use

Drop-in install on WordPress, Shopify, Wix, Squarespace, Webflow, Framer, Ghost, and any HTML-friendly stack. No build step, no developer needed.

WordPress
Shopify
Wix
Squarespace
Webflow
Framer
Ghost
HTML

Plus 250+ other platforms via the embed snippet. If your site can render a <script> tag, it can render the Discourse Feed Widget: Embed Forum Topics, Categories and Tags on Any Website.

What you get with Poper Discourse Feed

Six things that matter when you embed a Discourse forum on a brand site, not 30 features no one uses.

Public JSON API, no key for public Topics

Every Discourse forum exposes a public JSON API by appending .json to any URL. /latest.json, /c/support/8.json, /tag/bug.json all return structured Topic lists with no OAuth, no developer account, no rate-limit cliff. For private Categories, paste a read-only Api-Key from Admin to Api Keys. Poper handles both flows transparently and caches everything at the edge.

Categories, tags and Topic lists

Embed a single Category like #support, a tag like release-notes, the global /latest list, or any combination. Subcategories render as a nested tree. Switch between sources from the dashboard without re-embedding the snippet on your site.

Trust-level curation

Multi-select trust-level filter (TL0 through TL4). Restrict to TL2+ regulars to skip new-user posts, or staff-only for moderator answers only. The killer feature for brand sites.

Native sort modes

Latest, Top, Hot, New, Unread, plus per-Category and per-tag variants. Top supports day, week, month, quarter, year, all-time windows. Matches Discourse's own ordering exactly.

Self-hosted and Discourse-hosted alike

Discourse is open-source MIT-licensed software, so half the forums in the wild are self-hosted on your own infrastructure and half run on Discourse-on-server hosted plans. The widget treats both identically. Paste any forum URL and we figure out the rest.

Core Web Vitals safe

Lazy-loaded below the fold, async-injected, scoped CSS that does not bleed into your design system. Under 40KB gzipped. Edge cache hit rate above 97%, so your visitors never wait on the forum's response time.

DiscussionForumPosting schema built in

Every embedded Topic emits Schema.org DiscussionForumPosting JSON-LD with author, datePublished, replyCount, articleBody and the canonical Discourse URL. Google rolled this out for Discussions and forums rich results in 2023, and Discourse instances dominate that surface for product-support queries today. Your embed gets the same treatment.

Use cases

Where Discourse Feed Widget: Embed Forum Topics, Categories and Tags on Any Website actually moves the needle

Four buyer types who get the most lift from embedding Discourse Feed Widget: Embed Forum Topics, Categories and Tags on Any Website on their site.

SaaS customer forum embed showing a support thread with verified-staff replies, a feature-request voting card with 187 votes, and a community overview with #support topics, staff replies and top feature-request rankings

SaaS customer forum

Embed a #support or #feature-requests Category on your help center and product roadmap. Real questions, real answers from verified staff, real feature-request votes. Beats a static FAQ that goes stale and a closed support ticket queue your prospects cannot see.

Developer community embed with a TypeScript code-snippet card marked SOLVED, an RFC-042 plugin API design discussion with section votes, and a Distributed Tracing v2 technical-spec thread pinned by the team

Developer community

Mirror the #show-and-tell or #help Category from a developer-focused Discourse forum on your project README or docs site. Code snippets, RFC discussions and technical specs render natively. Live community activity sells the project better than a screenshot ever will.

Open-source organization embed showing a #governance vote on adopting MIT for v3, a maintainer roundtable with TL4 leaders Lin/Rohit/Eira, contributor-of-Q2 recognition for Mei Tanaka, and latest #steering threads

Open-source org

Discourse is the home of open-source governance. Embed steering-committee threads, maintainer roundtables and contributor recognition feeds on your foundation site so the community sees the work happening in the open.

Knowledge base embed with searchable FAQ panel showing top 4 most-asked questions, how-to article cards (TUTORIAL, GUIDE, QUICKSTART) by staff-verified authors, and categorized topic tags grouped by color across getting-started, billing, security and more

Knowledge base

Turn your Discourse forum into a searchable help center. Categorized topic tags, FAQ-style top threads, how-to articles and tutorial collections render as a polished knowledge-base experience embedded directly in your docs or marketing site.

Poper vs other Discourse and forum embed tools

Discourse ships some native embed widgets but they are limited to a single Topic or a Category JS snippet. Forum competitors like Vanilla and Circle have their own embed approaches with different trade-offs. Here is how the popular options stack up.

 Recommended
Poper
Discourse native widgets
Vanilla Forums embed
Circle.so feed
Free plan available
Whole Category feed (not just one Topic)
JS snippet only
Multi-tag filtering in one feed
Single only
Trust-level filter (TL0 to TL4)
Multi-select
N/A
N/A
Sort modes (Latest, Top, Hot, New, Unread)
All 5
Latest only
Recent only
Recent only
Top time window (day to all-time)
Self-hosted Discourse support
N/A
N/A
Discourse-hosted plans support
N/A
N/A
Uses public JSON API (no paid tier)
Public .json
Public .json
Own API
Closed platform
DiscussionForumPosting JSON-LD
Sync frequency (lowest paid plan)
30 minutes
On page load
1 hour
Real-time, paid
Pricing for unlimited Topics
$19/mo (Starter)
Free, Discourse only
$689/mo+
$89/mo+
Bundled with popups, forms, quizzes

Comparison reflects publicly listed pricing and features as of 2026. Discourse native widgets refers to the official JS snippet and embed.js loader from discourse.org. Vanilla Forums and Circle.so pricing per their public pricing pages.

Real teams. Real Discourse forums. Real outcomes.

Open-source maintainers, SaaS product managers and community admins who replaced static FAQs and closed roadmaps with Poper.

Poper has improved our website's user engagement! Since integrating Poper's personalized popups, we've seen a dramatic surge in conversions and user interactions. The platform's intuitive design makes creating and customizing popups a breeze, even for those with minimal tech skills. What truly sets Poper apart are its…
Jayson Ang
Jayson Ang
Singapore Property Swapper · Singapore Property Swapper
Fantastic app and support team, they are very quick to help and provide a solution or improvement to their product. Highly recommended!
Alex
Alex
CEO · AH
Poper has been a total lifesaver for our agency! As a digital marketing agency, we’re always juggling a million things at once. Poper has been a real game-changer in terms of streamlining our workflow and keeping track of all our clients’ campaigns. The ability to track all our clients’ websites from one place is a…
Idris Basir
Idris Basir
-

Pricing

Simple pricing. Free plan covers most websites.

Free forever for one widget. Upgrade only when you need faster sync, multiple instances, or to drop the watermark.

Free

Everything you need to ship the widget today.

$0forever
  • 1 widget instance
  • All layouts & customization
  • Brand-match styling
  • 6-hour sync cadence
  • Poper watermark
Start free
Most popular

Pro

Remove the watermark, faster sync, more widget instances.

$19/mo
  • Unlimited widget instances
  • 30-minute sync cadence
  • No Poper watermark
  • Custom CSS
  • Priority email support
  • Shoppable tagging
Start 14-day trial

Business

Multi-site, multi-account, white-label.

$49/mo
  • Multi-account combined feeds
  • Real-time sync
  • White-label embed
  • API access
  • Dedicated success manager
  • Custom SLA
Start 14-day trial

All plans include unlimited page views, no contracts, cancel anytime. Annual billing saves 20%.

Guide · 7 min read

The complete guide to embedding a Discourse forum on your website

Discourse is the open-source forum software that quietly became the default for serious product communities, open-source projects, education programs and brand-owned customer forums. It was founded in 2013 by Jeff Atwood (co-founder of Stack Overflow) and Robin Ward, ships under the MIT license, and runs more than 23,000 active forums in 2026 across self-hosted instances and Discourse's own hosted plans. Where Reddit is corporate, ad-supported and centralized, Discourse is software you install (or rent), data you own, and a community you moderate. Embedding a Discourse forum on your website turns that owned-conversation surface into a public, searchable, ever-fresh marketing asset. This guide walks through what actually matters when you choose and configure a discourse feed widget in 2026: the .json URL trick that makes every page machine-readable, trust-level filtering, the DiscussionForumPosting schema Google now ranks for, the difference between embed.js and a third-party feed widget, and how the open-source-vs-corporate split shapes the embed market.

01

The .json URL trick: why every Discourse page is a public API

One of the most under-appreciated design choices in Discourse is that every public page on every Discourse forum returns JSON when you append .json to the URL. Visit https://meta.discourse.org/latest in a browser and you get the human Topic list. Visit https://meta.discourse.org/latest.json and you get the same Topics as a structured JSON response with all the metadata you would ever need: title, slug, posters, replies, views, like_count, last_posted_at, created_at, Category id, tags, trust-level of the original poster, accepted-answer status, pinned status, archived status. The pattern works for every page. /categories.json returns the Category tree. /c/feature/13.json returns Topics in the feature Category. /tag/release-notes.json returns Topics tagged release-notes. /t/some-topic-slug/12345.json returns the full Topic with all replies. /top.json?period=weekly returns the top Topics this week. /search.json?q=schema returns search results. This was a deliberate API-first choice from Jeff Atwood and Robin Ward back in the 2013 launch, and it is the reason Discourse has the richest third-party tool ecosystem of any forum platform. The Poper Discourse Feed Widget reads exactly these public endpoints. No OAuth, no developer registration, no API key required for public Topics. We poll your forum's .json endpoints on a schedule (every 6 hours on Free, every 30 minutes on Pro), parse the JSON, cache the result on a global edge with a 97% hit rate, and serve it to your widget. The forum sees a single request per cache window instead of one per page view on your site, which means embedding is friendly to your forum's performance budget no matter how much traffic the embedding page gets.

02

Trust-level filtering: the killer feature for brand-safe embeds

Discourse's trust-level system (TL0 through TL4) is one of its smartest features and the reason serious communities choose it over open-everyone alternatives. TL0 is a brand-new account that just signed up. TL1 (Basic) earns automatically after reading 5 Topics, spending 10 minutes on the forum and similar low-bar engagement. TL2 (Member) earns after consistent participation over 15 days. TL3 (Regular) is granted to the top contributors who consistently post quality content. TL4 (Leader) is manually granted by admins to staff and trusted moderators. Every Topic and Post returned by the JSON API includes the original poster's trust level, which means a feed widget can filter on it. This is the killer move for brand-safe embeds. If you embed an uncurated /latest.json on your homepage, you might surface a TL0 spam Topic before a moderator catches it. If you restrict the embed to TL2+ regulars, you cut new-user noise by roughly 70 percent while retaining 90 percent of meaningful engagement. If you restrict to staff-only, the embed becomes a curated official-answer surface that can confidently sit on a corporate help center. The Poper widget supports a multi-select trust-level filter so you can mix tiers (for example: TL2+ for the Topic original-poster, TL3+ for accepted-answer, staff-only for pinned announcements). Most other Discourse embed tools either skip trust-level filtering entirely or only support a single floor value, which is why their feeds end up looking spammy on production sites. Trust-level filtering plus tag filtering is also the cleanest way to build a public roadmap embed: pull the #feature-requests Category, tagged accepted, original-poster TL2+, sorted by like_count, and you have a self-maintaining Top Voted Features list with no moderator workflow.

03

DiscussionForumPosting schema: how Discourse can dominate Google in 2026

In late 2023 Google launched the Discussions and forums search feature and the Forum filter, both of which surface threads from Reddit, Stack Exchange, Quora and Discourse instances prominently in commercial-intent queries. Discourse forums now appear in roughly 25 percent of high-intent product-support queries on Google, and many of those Topics outrank the brand documentation pages they discuss. The technical mechanism is Schema.org's DiscussionForumPosting markup, which Discourse emits natively for every Topic and which Google specifically rewards with rich-result treatment. Most embed widgets ignore this on the embedding side. The Poper Discourse Feed Widget emits DiscussionForumPosting JSON-LD for every Topic it renders, with author (the original poster's username), datePublished, replyCount (or interactionStatistic for likes), articleBody (the first post excerpt) and a sameAs link back to the canonical Discourse Topic URL. The result is that your embedded Topic block on your marketing page is eligible for the same Discussions rich-result treatment as the original on the Discourse domain, which is a meaningful SEO win on product-comparison and help-center pages. The widget also respects Discourse's own canonical URL convention so your embed never competes with the source for ranking, which both protects your forum's organic traffic and satisfies Schema.org's attribution requirement for DiscussionForumPosting markup.

04

embed.js vs third-party feed widgets: when each one fits

Discourse ships two official embed mechanisms out of the box and they cover different jobs. The first is the embedded comments script (Discourse embed.js), which lets you replace your blog or article comments with a Discourse Topic. You drop a small script tag at the bottom of a blog post, the script creates or finds a matching Topic on your Discourse instance, and visitors comment on the post via the Discourse Topic without leaving the page. This is excellent for blog comments and weak for everything else: it is single-Topic only, it requires anonymous-posting setup on the forum, and it does not give you any control over which Topics appear where. The second mechanism is the Category JS snippet, a small embedded list of recent Topics from a single Category. It is read-only, latest-sorted, and offers minimal styling control. Both official mechanisms work fine for what they are. A third-party Discourse feed widget like Poper covers the long tail of jobs that those two leave undone: multi-Category and multi-tag merged feeds, trust-level filtering, custom sort modes (Top with time windows, Hot, Solved-only), staff-only views, custom layouts (cards, masonry, roadmap), brand-themed CSS, edge caching with a 97 percent hit rate so your forum is not hit on every page view, and DiscussionForumPosting JSON-LD for SEO. The Poper widget is the right answer when you are embedding multiple Topics on a marketing page, a help center, a roadmap, a homepage social-proof block, or a customer portal. Use embed.js when you want Discourse to host comments on your blog. Use the official Category snippet when you want a quick read-only list with no customization needs.

05

The open-source advantage: data ownership, MIT license, and the corporate alternative

When you choose Discourse for your community, you are choosing a fundamentally different relationship to your data than you would get from Reddit, Circle.so, Slack Communities or any closed forum platform. Discourse is open-source MIT-licensed software founded in 2013 by Jeff Atwood and Robin Ward (Atwood previously co-founded Stack Overflow with Joel Spolsky in 2008). You can read every line of the source on GitHub, fork it, modify it, run it on your own server with a single docker run command, and export every Topic and every reply as a Postgres dump or a JSON archive any time you want. Discourse the company sells hosted plans (Discourse-on-server) starting around USD 100 per month, which is the right call if you do not want to run a Rails app and a Postgres database yourself. But the software is the same software whether you self-host or pay Discourse to host it for you, which means a third-party widget like Poper works identically on both. The corporate forum alternatives are a different story. Circle.so is a closed SaaS at USD 89 per month minimum, your data is hostage to your subscription, and the embed surface is a screenshot script that breaks if you cancel. Slack Communities are even worse: messages older than 90 days are inaccessible on free plans, and you cannot embed Slack content on a public website at all. Reddit is corporate, ad-supported, and locked the API behind a paid tier in 2023. Discourse stands alone as the serious open-web alternative, which is why open-source projects (the Rust language forum, the Cargo registry, the WordPress.org community), education programs (Recurse Center, freeCodeCamp), and brand-owned communities (Discourse itself, the Helium network, BoardGameGeek) all converged on it. The Poper widget is the natural embed surface for that ecosystem.

Quick reference

What is Discourse Feed Widget: Embed Forum Topics, Categories and Tags on Any Website?

A discourse feed widget is an embeddable script that pulls Topics from one or more Categories, tags or Topic lists on a Discourse forum and renders them on a third-party website with native sort modes (Latest, Top, Hot, New, Unread), Category and tag filters, trust-level filters, reply counts and like counts.

Key facts

  • Discourse is open-source forum software released under the MIT license, founded in 2013 by Jeff Atwood and Robin Ward.
  • Jeff Atwood previously co-founded Stack Overflow with Joel Spolsky in 2008 before starting Discourse.
  • Every public page on a Discourse forum returns JSON when you append .json to the URL (e.g. /latest.json, /c/support/8.json).
  • Discourse runs more than 23,000 active forums in 2026 across self-hosted instances and Discourse's own hosted plans.
  • Discourse's trust-level system spans TL0 (new) through TL4 (leader), with most automatic promotions earned via reading and posting activity.
  • Discourse Topics appear in Google's Discussions and forums rich results via Schema.org DiscussionForumPosting markup.

Frequently asked questions

Can't find the answer you're looking for? Chat with our support team.

Contact Support

Stop maintaining static FAQs while your Discourse goes underused

Poper takes 90 seconds to embed and uses Discourse's free public JSON API. Free plan, no credit card.

Free plan available forever