WebSub

WebSub (formerly PubSubHubbub) is a push protocol that broadcasts RSS/Atom feed changes to search engines like Google in real time — what it is, how it works, and its limits.

First published: Jun 26, 2026 · Last updated: Jul 18, 2026 · Advanced
demand #9 in Discovery#45 in How Search Works#224 in Technical SEO#304 on the site

WebSub (formerly PubSubHubbub) is a W3C push protocol — a Recommendation since Jan 2018, republished with security fixes in June 2026 — that broadcasts RSS/Atom feed changes to search engines the moment you publish, instead of waiting for them to poll your feed. You advertise a hub in your feed (Google runs one at pubsubhubbub.appspot.com, confirmed live) and ping it on publish; the hub fans the update out to subscribers. Google confirms it supports WebSub for Atom/RSS. But it only works for feeds — not arbitrary pages — and it only speeds discovery, never guaranteeing a crawl or index. For pushing general pages, IndexNow (Bing and others) is the right tool, not WebSub; Bing's separate news-only PubHub stopped taking new publishers in June 2025.

TL;DR — WebSubWebSub (formerly PubSubHubbub) is a push notification protocol for RSS/Atom feeds that lets a site instantly broadcast new or updated content to subscribing search engines instead of waiting to be re-crawled. (formerly PubSubHubbub; a W3C Recommendation since January 2018, reaffirmed with a security-focused update in June 2026) is the push complement to RSSAn RSS or Atom feed is an XML file listing a site's most recently published or updated URLs. Search engines accept it as a sitemap-style discovery signal for fresh content — not a replacement for a full XML sitemap./Atom’s pull. A publisher advertises a hub in its feed (<link rel="hub">), subscribers register with that hub, and on publish the publisher pings the hub so it fans the updated feed out to every subscriber. Search services can subscribe, but WebSub itself makes no promise that any search engine will crawl or indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. a URL. It is designed around topic resources such as feeds, not as a general indexing APIThe Google Indexing API lets site owners notify Google directly when a URL is added, updated, or removed. Google officially supports it only for pages with JobPosting or BroadcastEvent (livestream) structured data — not for general content.. For participating search engines, IndexNowIndexNow is an open push protocol that lets you instantly tell participating search engines (Bing, Yandex, Naver, Seznam, and Yep) which URLs you've added, changed, or removed via a simple HTTP request — and one submission is shared across all of them. Google does not use it. is a separate URL-notification protocol — and as of mid-2025, Bing has also stopped taking new sign-ups for its own news-feed submission program (more below), which narrows the field further.

Evidence for this claim WebSub is a W3C publish-subscribe protocol in which publishers advertise hubs and subscribers receive content-change notifications. Scope: WebSub protocol; notification is not search indexing. Confidence: high · Verified: W3C Recommendation: WebSub Evidence for this claim WebSub has no standardized guarantee of search-engine crawling or indexing; search push protocols such as IndexNow have separate participants and semantics. Scope: Distinction between feed subscription and IndexNow URL notification. Confidence: high · Verified: IndexNow protocol documentation

WebSub is the push half of feeds

In the DiscoveryURL discovery is how search engines find URLs to crawl — by pull (following links and reading sitemaps) and by push (you notify them via IndexNow, the Indexing API, or WebSub). It's the find step that comes before a page is ever fetched. hub I split discovery into pull and push. RSS/Atom feeds are a pull channel: the engine polls your feed on its own cadence (Google’s Feedfetcher, for instance, won’t pull most feeds more than about once an hour). WebSub is what turns that pull into a push — instead of waiting to be re-fetched, your feed broadcasts the change the moment you publish.

That’s the whole value proposition: near-real-time notification of feed updates, rather than waiting for the next scheduled poll.

PubSubHubbub vs WebSub — same protocol, different name

This trips people up in documentation searches. The protocol was originally called PubSubHubbub (abbreviated PSH). It was renamed WebSub in October 2017 and published as a W3C Recommendation in January 2018. Pre-2018 articles say “PubSubHubbub”; post-2018 articles say “WebSub.” They’re the same thing, and Google’s hub still answers to both — which John Mueller confirmed at the time of the rename (“Yes, finally dug it up! We support both.”).

The spec itself hasn’t stood still since 2018, either: the W3C republished WebSub as a new Recommendation on 2 June 2026, adding cross-site-scripting (XSS) mitigations to the Security Considerations section. That’s a security-hardening update, not a mechanics change — the actors, discovery relations, and subscribe/ publish flow described below are the same protocol as the 2018 version. If you’re implementing (not just consuming) WebSub, read the current Recommendation rather than a copy of the 2018 text.

How WebSub actually works

There are three actors:

  • Publisher — your site (specifically, your feed).
  • Hub — a relay server that handles subscriptions and fan-outQuery fan-out is the technique where an AI search system breaks a single user question into multiple related sub-queries, runs those searches concurrently, and synthesizes the retrieved results into one answer. Google confirms AI Overviews and AI Mode 'may use a query fan-out technique' issuing multiple related searches across subtopics..
  • Subscriber — a search engine (or any client) that wants updates.

The W3C spec frames the flow plainly: “Subscribers discover the hub of a topic URL, and makes a POST to one or more of the advertised hubs in order to receive updates when the topic changes. Publishers notify their hub(s) URLs when their topic(s) change. When the hub identifies a change in the topic, it sends a content distribution notification to all registered subscribers.”

In practice, for SEO:

  1. Your feed advertises a hub with a <link rel="hub" href="..."> tag (plus a <link rel="self" href="..."> pointing at the feed’s own URL).
  2. Subscribers (search engines) register with that hub for your feed.
  3. When you publish, your site notifies the hub that your feed changed.
  4. The hub fetches your updated feed and fans it out to every subscriber via an HTTP POST to their callback URL.

Step 2 is doing more work than “register” implies. The spec breaks subscription into separate states: a subscription request, a verification step where the hub confirms the subscriber actually wants the topic (so nobody can subscribe a stranger’s callback URL without their say-so), a lease the subscription holds for a bounded time, and a renewal the subscriber has to make before that lease expires (there’s no such thing as a permanent subscription) — plus an explicit unsubscribe path. None of that is something you, as the publisher, manage; it’s the hub-and-subscriber side of the handshake. But it’s worth knowing it exists, because it’s why “I pinged the hub” and “a search engine has an active subscription to my feed” are two different, independently-failable things.

Step 3 is also less standardized than most WebSub write-ups let on: the spec itself says “the specific mechanism for the publisher to inform the hub is left unspecified,” and only notes, as an example, that some public hubs — including Google’s — accept a POST with hub.mode=publish and hub.url set to the changed feed. That convention is universal enough in practice that “ping the hub” and “POST hub.mode=publish” are effectively synonyms — but it’s a widely-adopted convention documented as an example, not a hard requirement of the Recommendation.

The W3C spec is technically broader than feeds — it can carry any HTTP resource — but Google’s documentation scopes its recommendation to Atom/RSS feedsAn RSS or Atom feed is an XML file listing a site's most recently published or updated URLs. Search engines accept it as a sitemap-style discovery signal for fresh content — not a replacement for a full XML sitemap.. The spec is wide; the SEO use case is narrow.

WebSub and Google

Google’s support is on the record, in the Build a SitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. docs: “If you use Atom or RSS, you can use WebSub to broadcast your changes to search engines, including Google.” It’s a single subordinate sentence — Google doesn’t give WebSub its own section — but it’s confirmed.

Google’s hub is at pubsubhubbub.appspot.com, run by Google as a service — I confirmed it’s still live and answering as of 2026-07-18. That’s the hub you advertise in your feed and ping on publish. Community hubs exist too, but they’ve historically been less durable than Google’s — check that any third-party hub you’re considering is actually still responding before you commit your feed to it, rather than trusting an old blog post that says it works.

The crawlerA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. behind the curtain is Feedfetcher (Feedfetcher-Google), which is how Google crawls RSS/Atom feeds for Google News and WebSub. One important nuance from Feedfetcher’s own docs: “only podcast feeds get indexed in Google Search” through that path. So for a normal blog feed, WebSub accelerates Google’s awareness of the feed update, but the actual indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. of each page still comes from GooglebotGooglebot is Google's web crawler — the software that fetches pages so Google can index and rank them. It comes in two variants, Googlebot Smartphone (primary, under mobile-first indexing) and Googlebot Desktop, and runs an evergreen Chromium renderer. following the URLs inside the feed through the normal crawl → index pipeline. WebSub is a discovery accelerant, not an indexing shortcut.

WebSub and Bing

Bing’s documented WebSub-style support has lived under Bing News PubHub — i.e., it’s news/feed-scoped, parallel to how Google’s Feedfetcher path is oriented toward News and podcasts. But PubHub itself is winding down: Microsoft stopped accepting new publisher applications to PubHub in June 2025, saying it’s moving Bing News toward automatically identifying and ranking eligible news content instead of manual submissions. Publishers already approved before then stay indexed; the submission portal for new applicants is closed. That’s a program-level retirement of manual news submission, not a change to IndexNowIndexNow is an open push protocol that lets you instantly tell participating search engines (Bing, Yandex, Naver, Seznam, and Yep) which URLs you've added, changed, or removed via a simple HTTP request — and one submission is shared across all of them. Google does not use it..

For pushing general web pages to Bing, the right tool is IndexNow, not WebSub or PubHub. IndexNow is Bing’s (and Yandex’s, Naver’s, Seznam’s, Yep’s) preferred real-time push for arbitrary URLs, unaffected by the PubHub change — and notably, Google does not participate in IndexNow (confirmed on indexnow.org’s own participant list as of this review). So the clean split is: WebSub for feeds (where Google’s hub is the practical option), IndexNow for general pages on the engines that support it.

How to implement WebSub

Step 1 — advertise the hub in your feed. Add a hub link and a self link. The most common form is embedded in the feed itself:

<link rel="hub" href="https://pubsubhubbub.appspot.com/" />
<link rel="self" href="https://example.com/feed.xml" />

Google’s hub also accepts the equivalent as HTTP response headers on the feed request instead of embedded tags — useful if you don’t control the feed’s XML directly (a third-party feed generator, for instance):

Link: <https://pubsubhubbub.appspot.com/>; rel="hub"
Link: <https://example.com/feed.xml>; rel="self"

Either form tells a subscriber the same thing: which hub to register with, and what this feed’s own canonical URL is. That second part matters if you ever move the feed — point the old URL at the new one with an HTTP redirectA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. and, per the spec, a subscriber renewing its lease will follow the redirect and pick up the new hub/self pair automatically, rather than silently going stale.

Step 2 — ping the hub when you publish. POST to the hub URL with the publish mode and your feed URL — this is the widely-used convention Google’s hub (and most others) expect, described above:

curl -i -d "hub.mode=publish&hub.url=https://example.com/feed.xml" \
  https://pubsubhubbub.appspot.com/

In practice, your CMSA content management system (CMS) is software that lets users create, manage, and publish digital content — like blog posts and pages — without writing raw code. WordPress, Drupal, and Joomla are the most common open-source CMS platforms. handles both steps. WordPress’s PubSubHubbub plugin uses Google’s hub by default; Blogger, WordPress.com, and Medium support WebSub natively. For a custom site, you wire the publish-ping into your publishing flow.

Verify — but know what you’re actually confirming. A 2xx from the hub only proves the hub accepted your notification; it doesn’t prove any subscriber received it, and as the publisher you generally can’t observe that last hop directly. What you can check from your own side: publish a test post, confirm the hub returns a 2xx to your ping, then watch for Feedfetcher-Google hitting your feed in your server logs shortly after — that confirms the hub re-fetched, which is as far as publisher-side verification goes. See the Validation Tests lens for the full staged breakdown (feed markup, ping response, hub re-fetch) with what each one does and doesn’t prove.

What WebSub is not

A few myths worth killing:

  • It does not index pages instantly. It notifies the hub of a feed update; Google still crawls and indexes each URL through normal processes.
  • It does not work for arbitrary pages. Feeds only. For non-feed URLs, that’s IndexNow (Bing) or URL Inspection (Google).
  • It does not replace sitemapsA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing.. WebSub and sitemaps are complementary — sitemaps cover the whole site; WebSub pushes real-time feed changes. Google recommends both.
  • Google’s hub is not deprecated. pubsubhubbub.appspot.com is active and run by Google — confirmed live as of 2026-07-18. Bing’s PubHub is a different story: it stopped taking new publisher applications in June 2025 (see WebSub and Bing above), so don’t treat that page as an onboarding path anymore even though it still exists.

Who actually benefits

High-frequency publishers — news sites, podcasts, and anyone whose freshness window matters — get the most out of WebSub. For a site that publishes a few times a month, the marginal speed-up over normal feed polling and good internal linkingLinks between pages on the same site. is small. It’s a sensible default if your platform offers it; it’s rarely worth heavy custom engineering on its own.

For the broader picture of how URLs get found, see the DiscoveryURL discovery is how search engines find URLs to crawl — by pull (following links and reading sitemaps) and by push (you notify them via IndexNow, the Indexing API, or WebSub). It's the find step that comes before a page is ever fetched. hub; for what happens after a URL is discovered, see CrawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor..

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.