🎛️Content
Learn how to use Content screens for landing pages, help pages, public entry points, and static app content.
Content (CONTENT_PAGE) is a screen for landing pages, help, legal, and public entry points. It is not a Notion list. This page is the canonical reference for HTML, per-screen CSS, guest vs signed-in, and table of contents.
What this is / when to use it
Use Content when the screen is the message: a welcome page, a public marketing page inside the app, a thank-you page, or a help article.
When not to use it:
Showing a Notion page body on a details record — use Show Page Content on a details screen.
A list of records — use a list screen.
A form — use a form screen, then
go_to_screento a Content thank-you.
Before you start
You know whether guests may open it (Per-screen public access / mixed portal how-to).
You have the copy. Content screens are maker-authored HTML/blocks, not a live Notion database.
Build it
+ New Screen → Content.
Add Heading, Label, HTML block, images, buttons, and optional Show page content if you embed one Notion page.
Optionally add a table of contents when the page is long.
Add per-screen CSS only for this screen’s layout (spacing, hero). Account-wide CSS stays in Settings / Custom CSS how-to.
Set screen visibility: public for guests, or signed-in only.
Place it first in nav for a landing page, or hide it and open it from submit.
Publish. Open as guest and as a signed-in user.
Every control
HTML block
Maker HTML. No Notion property.
Per-screen CSS
Scoped styles for this screen.
Show page content
Embeds a Notion page; TOC optional.
Guest vs signed-in visibility
Who can open the screen.
Buttons
OPEN_URL and friends.
Hide from nav
Thank-you / legal deep links.
What users see
A static (or Notion-embedded) page. Guests who are allowed see only this screen’s public chrome. Signed-in users see the same content plus the private nav if the screen is in their menu.
Limits and plans
HTML is not a full CMS. Do not paste untrusted scripts. Custom JS is a separate, plan-gated how-to.
Per-screen CSS does not replace Appearance theme presets.
Page content embed freshness follows sync.
Example
A mixed portal: public Content Welcome with a Button OPEN_URL to login and a second Button to a public Add-lead form. After login, Home (everyday chrome) replaces Welcome in the client’s tabs.
Fix problems
Guest sees login first
Screen not public
Per-screen public access.
CSS leaks
Selector too broad
Scope to this screen’s classes.
Embedded Notion page empty
Not shared / not synced
Share with the integration. Reload page content.
Related
Next: Show Page Content. Mixed portals: Build a Mixed Public–Private Portal.