You want to control which new pages get published to your Notion workspace before they are visible to the team. Notion does not include a built-in approval system, so you must build a workflow using databases, linked databases, and status properties. This article explains how to create a two-stage approval pipeline where team members submit page requests and managers approve or reject them before the content becomes public. You will learn to set up a submission database, an approval dashboard, and automated notifications using Notion formulas and relations.
Key Takeaways: Setting Up a Notion Workspace Approval Workflow
- Submission database with a Status property: Tracks each page request through Draft, Pending Approval, Approved, and Rejected states.
- Linked database on the approval dashboard: Shows only Pending Approval items so managers can review and update status in one place.
- Relation and Rollup properties: Connect the submission database to your main content database so approved pages automatically appear in the workspace.
- Formula property for conditional visibility: Hides pages from the main database until the Status equals Approved.
How a Notion Workspace Approval Workflow Works
An approval workflow in Notion relies on multiple databases linked by relations rather than a built-in approval button. You create a separate Submission database that acts as a request queue. Each new page request starts in Draft or Pending Approval status. A manager reviews the request in an approval dashboard and changes the status to Approved or Rejected. When approved, a relation property copies the page into your main content database, or a formula property reveals the page to viewers.
The core components you need are:
- Submission Database: Stores all page requests with properties for Status, Submitter, Date, and a Relation to the main database.
- Main Content Database: Holds the final approved pages that are visible to the workspace.
- Approval Dashboard: A linked view of the Submission database filtered to show only Pending Approval items.
- Formula or Rollup: Controls visibility of approved pages in the main database.
No third-party integrations are required. The workflow uses built-in Notion features so it works on all plans, including the Free plan. The Free plan limits the number of database rows to 1,000 per workspace, so plan accordingly for large teams.
Steps to Build the Approval Workflow for New Pages
Create the Submission Database
- Create a new database
In your workspace, click Add a page in the sidebar. Name it “Page Submissions”. Click Database and select Table. This database will hold all page requests before approval. - Add required properties
Add these properties to the database:
– Status: Select property type. Add options: Draft, Pending Approval, Approved, Rejected. Set a default value of Draft.
– Submitter: Person property. This automatically captures the person who created the request.
– Date Submitted: Date property. Set the default to Now when a new row is created.
– Page Title: Title property. Rename the default Title property to “Page Title”.
– Description: Text property. Allows the submitter to explain what the page will contain. - Add a Relation to the main content database
If you already have a main content database, add a Relation property that links to it. If not, create a second database named “Approved Pages” with a Table view. Then add a Relation property in the Submission database pointing to the Approved Pages database. This relation will later copy the approved page content. - Set up a form view for submitters
Click the + Add a view button in the Submission database. Select Form. Name it “Submit New Page”. In the form settings, hide the Status, Submitter, and Date Submitted fields so submitters only see the Page Title and Description fields. Share the form link with your team.
Build the Approval Dashboard
- Create a linked database to the Submission database
On a new page called “Approval Dashboard”, type /linked and select Linked view of database. Choose the Submission database. This creates a live view that you can filter without affecting the original database. - Filter to show only Pending Approval items
Click the filter icon in the top-right of the linked database. Add a filter: Where Status is Pending Approval. Now the dashboard shows only requests that need review. - Add a Gallery view for visual review
Click + Add a view and select Gallery. Name it “Pending Gallery”. Set the card preview to show the Description property. This makes it easy for managers to scan requests. - Set permissions for the dashboard
Click Share in the top-right of the Approval Dashboard page. Add the managers who will review requests. Set their permission level to Can edit. For the rest of the workspace, set permission to Can view or remove access entirely so only managers see pending items.
Configure the Approval and Rejection Process
- Approve a page request
In the Approval Dashboard, open a pending request. Change the Status property from Pending Approval to Approved. Then click the Relation property and select the page in the main content database where the approved content should appear. If you are creating a new page in the main database, open the main database and add a new row. Then return to the Submission database and link that row. - Reject a page request
Open the pending request. Change Status to Rejected. Optionally add a comment in the Description field explaining why. The submitter will see the updated status when they open the Submission database. - Automate page visibility with a Formula property
In the main content database, add a Formula property named “Show Page”. Use this formula:if(prop("Status") == "Approved", "Visible", "Hidden")
Then create a filter in the main database view: Where Show Page is Visible. This hides all unapproved pages from viewers.
Common Issues and Limitations in the Approval Workflow
Submitters Cannot See the Submission Database After Submitting
When you share only the form link, submitters cannot see the database to check the status of their request. To fix this, share the Submission database page with the team at Can view permission. Create a second linked view in the Submission database filtered to show only rows where Submitter equals the current user. This way each team member sees only their own requests.
Approved Pages Do Not Automatically Appear in the Main Database
The Relation property does not automatically copy content from the Submission database to the main database. You must manually create a page in the main database and link it. To reduce manual work, use a Rollup property to pull the title and description from the Submission database into the main database. Add a Rollup property in the main database that rolls up the Page Title from the linked Submission row.
Notifications Are Not Sent When Status Changes
Notion does not send email or push notifications when a Status property changes. To work around this, ask managers to add a Comment on the page row when they approve or reject it. Notion sends a notification to the page creator when a new comment is added. Alternatively, use a third-party tool like Zapier or Make to watch for status changes and send an email.
Free Plan Row Limit Affects Large Teams
The Free plan allows up to 1,000 database rows across the entire workspace. If your team submits many page requests, you may hit this limit. Upgrade to a Plus plan ($10 per user per month) which increases the limit to 100,000 rows per database. Or archive approved requests regularly to free up space.
Notion Plans: Approval Workflow Limits Compared
| Feature | Free Plan | Plus Plan |
|---|---|---|
| Database rows per workspace | 1,000 | 100,000 |
| File upload limit | 5 MB per file | 5 GB per file |
| Version history | 7 days | 30 days |
| Guest accounts | 10 guests | 100 guests |
| API access for automation | No | Yes |
The Plus plan is recommended for teams that need more than 1,000 rows or want to use automation tools like Zapier to send approval notifications. The Free plan works for small teams with fewer than 50 active page requests.
You now have a working approval workflow that uses only Notion databases and properties. Start by creating the Submission database and form, then share the form link with your team. As a next step, try adding a Rollup property to automatically pull the submitter name into the main database so viewers know who created the approved page. For advanced automation, connect the workflow to Zapier to send a Slack message when a page is approved.