---
title: "Publish to Notion"
description: "Connect a Notion database with an access token. Articles arrive as pages, ready for Notion-powered sites like Super or Potion. Takes about five minutes."
---

> Documentation Index
> Fetch the complete documentation index at: https://rctrl.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Publish to Notion

RankControl publishes each approved article as a page inside a Notion
database. This fits a public site served from Notion by a tool like Super or
Potion, or a Notion workspace used as a staging area. Updates to an article
rewrite the same page.

You need a Notion workspace where you can create connections, and a
**database** in that workspace. A page does not work.

## 1. Create the connection

Go to **notion.com/developers/connections** and click **New connection**.

- **Connection name**: any name, for example `RankControl`.
- **Authentication method**: keep **Access token**. RankControl does not use
  OAuth.
- **Installable in**: the workspace that holds your database.

Click **Create connection**. The default capabilities (read, update, and
insert content) are the three RankControl needs. Reveal the **Access token**
with the eye icon and copy it. It starts with `ntn_`.

## 2. Pick or create a database

Any database works: table, board, gallery, or list. You do not need to add
columns. RankControl finds the title column on its own, whatever its name.

## 3. Give the connection access to the database

Open the database in Notion. Click the **•••** menu, choose **Connections**,
then **Add connection**. Select the connection from step 1 and click **Add to
page**.

This step is the most common one to miss. Without it, the connection test
fails with "Notion can't see that database."

## 4. Connect in RankControl

Go to **Brand Control → Publishing**, open **Add a destination**, and choose
**Notion**. Enter:

- **Name**: what you want to call this destination.
- **Access token**: the `ntn_` token from step 1.
- **Database link**: the database URL, from your browser or from **Share →
  Copy link**.

Click **Test connection**. On success, RankControl shows the database name.
Click **Save destination**. Open the saved row and click **Make active** if
new articles must go to Notion.

Notion has no draft state, so there is no **Publish as** choice here. A page
is visible wherever its database is visible.

## What RankControl writes

- The **title column** gets the article title.
- The **page body** gets the full article as Notion blocks: headings,
  paragraphs, lists, tables, quotes, code, and images.
- The **page cover** gets the hero image.

No other column is touched. Add your own status, date, or tag columns and
manage them yourself.

## Making pages public

If your site is served from Notion, publish the **database** to the web once:
open it and choose **Share → Publish**. Every page RankControl adds after that
is public. Until then, pages stay private to your workspace, and the
destination shows **Delivered, not public yet**.

## Analytics

Notion-hosted pages cannot run a tracking script and expose no crawler data,
so visit and crawler analytics are not available for this destination.
Citations and rankings are unaffected.

## Troubleshooting

**"Notion rejected the access token."** The token is wrong, revoked, or from
another workspace. Copy it again from **notion.com/developers/connections**.

**"That link points to a page, not a database."** You pasted a page URL. Open
the database itself and copy its link.

**"Notion can't see that database."** The connection is not added to the
database. Go back to step 3.

**"Couldn't find a database ID in that link."** Copy the link again with
**Share → Copy link** on the database.

**Pages exist but the site does not show them.** The database is not
published to the web. Open it and choose **Share → Publish**.

Source: https://rctrl.com/docs/notion/index.mdx
