Any Notion plan can make a Site indexable, but titles, descriptions and custom domains need a paid plan, and no schema or robots.txt setting is documented.
LLaunchScaler·Published ·8 min read
A Notion page can rank on Google once it is published as a Notion Site with search engine indexing turned on, which every plan allows. What Notion limits is control: editing the title and description that search engines show, using your own domain and removing the Notion branding all need a paid plan, and Notion's help documents no way, on any plan, to add structured data, edit robots.txt or submit a sitemap of your own pages.
Below is every setting that exists, what each plan includes, and how to check what a crawler actually receives from a Notion Site, based on Notion's help center and on public Notion Sites fetched in September 2026.
How do you make a Notion page indexable?
Publish the page as a Notion Site, then turn on indexing. Open the page, select Share at the top, open the Publish tab and select Publish. Then, in the same Publish menu, select Search engine indexing and toggle on Discoverable on the web. Notion's help says Sites "can take up to four weeks to be indexed and appear in search results."
The full sequence, from Notion's help center:
Open the page you want to publish and select Share at the top.
Open the Publish tab and select Publish.
Select View site to check the live page.
Back in Share, then Publish, select Search engine indexing.
Toggle on Discoverable on the web.
On a paid plan, edit the link title and description in the same place.
Notion draws a line between two kinds of public page. Publishing through Notion Sites is different from setting a page's general access to "Anyone on the web with link" in the Share menu. Only a published Site has the indexing toggle, so a page shared by link is not the same as a page published for search.
Publishing a page publishes all its subpages too, by default. Before you publish a blog index, check that every page nested beneath it is meant to be public, or restrict the subpages you want hidden. Notion's help also notes that a published page's metadata "will include the names, profile photos, and email addresses" of the Notion users who contributed to it, which matters if drafts were edited by people who expect privacy.
What can you control for SEO on each Notion plan?
Questions, answered
What people ask about this
01
Can Google index a Notion page?
Yes, if it is published as a Notion Site with search engine indexing on. Open Share, then Publish, select Search engine indexing and toggle on Discoverable on the web. Notion says Sites can take up to four weeks to be indexed.
On the Free plan you can publish unlimited Sites, claim one notion.site domain and turn on indexing. Paid plans add up to five notion.site domains, a homepage per domain, Site customization including the SEO title and description, Google Analytics, and custom domains through a paid add-on. Notion's help documents no setting on any plan for structured data or robots.txt.
SEO control
Free plan
Paid plans
Where it lives
Search engine indexing on or off
Yes
Yes
Share, then Publish, then Search engine indexing
Page title and meta description
No
Yes
Site customization, and the Search engine indexing panel
Share preview image
No
Yes
Site customization, Share preview
Custom URL slug
No
Yes, up to 60 characters, letters, numbers and hyphens
The slug field in the Publish menu
Favicon
No
Yes
Site customization
Custom domain
No
Paid add-on, up to 25 domains
Settings, then Sites, then New domain
Remove the "Built with Notion" watermark
No
Only on a custom domain
Site customization, Header
Google Analytics
No
Yes, by measurement ID
Site customization, Google Analytics
Structured data (JSON-LD)
No setting documented
No setting documented
None
robots.txt and your own sitemap
No setting documented
No setting documented
None
Canonical tag choice
No setting documented
No setting documented
None
The slug rules are worth knowing before you publish a blog. Slugs must be set one page at a time, a page's slug does not carry over to its subpages, the same slug cannot be used twice in a workspace, and once a published page is permanently deleted, its slug cannot be reused. Home pages cannot have a slug.
How do custom domains work with Notion Sites?
You connect a domain you already own through Notion's custom domain add-on, available to workspace owners on paid plans. Notion's help prices it at an extra $10 per month, or $8 per month on annual billing, per domain, for up to 25 domains. Notion does not sell domains, so you keep your registrar and add two DNS records.
The steps from Notion's help:
In Notion, go to Settings in the sidebar, then Sites.
Next to Domains, select New domain, then Custom domain, then Continue, and add a payment method if asked.
Enter the domain, including a subdomain such as www.yourdomain.com.
At your DNS provider, add a CNAME record for that subdomain with the target external.notion.site. (the trailing period matters).
Add the TXT record Notion shows you, named _notion-dcv followed by your subdomain, with the unique value Notion gives.
Back in Notion, select Verify.
The subdomain requirement is the catch for a blog. Notion's help says you "must include a subdomain," so the bare domain cannot point at the Site directly. To use yourdomain.com, Notion recommends setting the Site up on www and adding a redirect from the root at your DNS provider. Make that a permanent redirect, so search engines consolidate the root on the www address.
A custom domain matters for SEO in a practical way: links other sites give your posts point at your domain, which you keep if you ever move off Notion. Links to a notion.site address stay with that address.
What do search engines see on a Notion Site?
It depends on who asks. In September 2026, fetching public Notion Sites with a browser user agent returned an app shell: the title "Notion", Notion's own meta description and a message that "JavaScript must be enabled in order to use Notion." Known crawler user agents received a simple server-rendered page with the real title, a canonical tag and the page's text.
This is what the two responses contained for the same public Site page:
In the raw HTML
Browser or curl user agent
Known crawler user agent (GPTBot, Facebook's link fetcher)
<title>
"Notion"
The page title followed by " | Notion"
Meta description
Notion's product description
"Hosted by Notion Sites" boilerplate when not customized
Canonical
None
The page's own notion.site URL
Page text
None, JavaScript required
Paragraphs, headings and links as plain HTML
Structured data
None
None
Two details stand out. Notion appends " | Notion" to page titles on an uncustomized Site, and its default description is Notion's own marketing line, not your content, which is exactly why the paid title and description settings matter. The crawler version also rendered some Notion blocks imperfectly: callout blocks came through as literal <aside> text.
Google can render JavaScript. Its JavaScript SEO documentation says Googlebot "queues all pages with a 200 HTTP status code for rendering," but it also says server-side or pre-rendering "is still a great idea because it makes your website faster for users and crawlers, and not all bots can run JavaScript." A crawler that neither renders JavaScript nor gets Notion's crawler version sees an empty page. The client-side rendering SEO guide explains that risk in general terms.
How do you check what a crawler receives from your Notion Site?
Fetch the page yourself as different clients and compare. Use curl with a browser user agent and with a crawler's user agent, then use Search Console's URL Inspection tool for what Googlebot itself receives, since impersonating Googlebot from your own machine gets blocked. Check the title, description, canonical and text in each.
# What a plain client gets
curl -sL "https://yoursite.notion.site/your-post" | grep -iE "<title>|name=\"description\"|rel=\"canonical\""
# What a crawler user agent gets (OpenAI's GPTBot string as an example)
curl -sL -A "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.4; +https://openai.com/gptbot" \
"https://yoursite.notion.site/your-post" | grep -iE "<title>|name=\"description\"|rel=\"canonical\""
Sending Bing's or Google's crawler user agent the same way returned a 403 block page from Notion's Cloudflare firewall in September 2026, which is what a fake crawler request from an ordinary IP address should get. It says nothing about what the real Googlebot receives. For Google, add the Site to Search Console (a domain property on a custom domain is verified with a DNS TXT record), run URL Inspection, click Test live URL and open View tested page to see the rendered HTML and screenshot.
Check the host-level files too. On the notion.site subdomains fetched in September 2026, robots.txt allowed everything and pointed to a shared Notion sitemap, and /sitemap.xml returned Notion's own marketing sitemap, not the Site's pages. You cannot edit either, so discovery depends on links: link every new post from your Site's index page, and from pages on your main website if you have one.
When is Notion the wrong place for a blog?
Notion works for a small blog whose job is to be found by name or by a handful of specific searches. It becomes limiting when you need per-post control: structured data for articles, your own sitemap, canonical tags for cross-posts, or pages that load full content without JavaScript for every crawler. Those need a CMS you control.
A reasonable test: if you expect to publish more than a few posts a month and care about ranking for competitive queries, publish on a platform where you can set the title, description, canonical and Article markup for each post. You can still keep Notion for drafting. If you already cross-post elsewhere, the Medium import and canonical guide covers how to keep your own domain as the source, and a signed webhook lets a CMS of your own receive finished articles automatically.
Get articles to publish, wherever the blog lives
Notion is one of the destinations LaunchScaler's content engine publishes to, along with WordPress, Webflow, Ghost, Shopify, Medium and a signed webhook. The engine plans a month of articles from your own Search Console queries, writes one a day (thirty a month) from what your product actually does, in your voice, and puts every draft in your workspace to rewrite, trim or scrap. By default, every draft waits for your review before it publishes, and each draft you approve goes where your blog lives.
It costs $99/mo per website, with 3 days free before the first charge. Start the engine and your first article is ready on day one.
It is enough for a small blog that only needs to be found, but it gives you little control. Titles and descriptions can be edited only on paid plans, custom domains cost extra, and Notion documents no setting for structured data, robots.txt or your own sitemap.
03
Can I use a custom domain for a Notion blog?
Yes, on a paid plan with the custom domain add-on, which Notion prices at $10 per month, or $8 per month billed annually. The domain must use a subdomain such as www, pointed at external.notion.site with a CNAME record.
04
Can I change the meta title and description of a Notion Site?
Only on a paid plan. Notion's help says paid plans can customize a Site's page title and description, which are used in share previews and for SEO, from Share, then Publish, then Site customization or Search engine indexing.
05
Does a Notion Site need JavaScript to show its content?
For browsers, yes: in September 2026 a plain request returned an app shell asking for JavaScript. Some known crawler user agents received a simple server-rendered version with the page text, so test what each crawler receives.
Programmatic SEO builds many pages from one dataset; editorial answers one question per page. Start editorial, and add programmatic where you own data.