← All Tips

Notion Client Portal Template: Build a Shared Workspace for Clients

Learn how to build a Notion client portal that handles project status, file delivery, feedback, and invoices — all in one shared workspace.

Published June 25, 2026

Freelancers and agencies spend more time than they should chasing clients for approvals, fielding "what's the status?" emails, and digging through threads for deliverables. A Notion client portal fixes this by giving each client a single shared workspace — one place for project status, files, feedback, and invoices. Here's exactly how to build one.


What to Include in a Notion Client Portal

A functional client portal needs four things: visibility into project status, a place to deliver files, a way to collect feedback, and invoice tracking. Notion handles all of this natively through databases, linked views, and shared pages. You don't need a third-party tool.


Step 1: Create the Client Portal Database

Start with a new Notion database called Client Portal. Add these 5 properties:

| Property | Type | Purpose | |---|---|---| | Client Name | Title | The client or company name | | Project | Text | Current project or engagement name | | Status | Select | Draft, In Progress, Review, Complete | | Deliverables | Relation | Links to a separate Deliverables database | | Next Step | Text | One-line description of what happens next |

The Status select should use a fixed set of options. Suggested stages: DraftIn ProgressClient ReviewRevisionsComplete. Keep it short — the fewer stages, the cleaner the board view.


Step 2: Switch to Gallery View for the Status Board

With the Client Portal database open:

  1. Click + Add a view → choose Gallery
  2. Set the card preview to Status (or leave blank for a clean card)
  3. Group by Status to create a visual board showing where every client project stands

Gallery view is better than Board view here because cards are larger and easier to scan at a glance. When you share this page with a client, they see their project card prominently without needing to understand Notion's interface.


Step 3: Build the Deliverables Linked Database

Create a second database called Deliverables with these properties:

  • File Name (Title)
  • Client (Relation → Client Portal database)
  • Type (Select: Design, Copy, Report, Invoice, Contract)
  • Status (Select: Draft, Ready for Review, Approved)
  • File Link (URL or Files & Media)
  • Delivery Date (Date)

Back in your Client Portal database, the Deliverables property is a Relation that links to this database. When you open any client record, you'll see all their associated deliverables inline — and you can add a Rollup property to count how many are approved vs. outstanding.

To show this on the portal page:

  1. Open the client's page
  2. Insert a Linked Database block (type /linked database)
  3. Choose Deliverables, then filter by Client = [current client]
  4. Switch this view to a simple Table or List view

Now the client sees only their own deliverables, cleanly listed.


Step 4: Add a Feedback Form via Sub-Page

Inside each client's page, add a dedicated section for feedback:

  1. At the bottom of the client's portal page, type /page to create a sub-page
  2. Name it 💬 Feedback & Requests
  3. Add a toggle block labeled How to Submit Feedback with simple instructions
  4. Below it, add a table with columns: Date, Request, Status, Notes

This keeps all client communication in one place rather than scattered across email threads. Alternatively, embed a Google Form or Tally form if you want a more structured intake process — use /embed and paste the form URL.


Step 5: Share the Portal with Your Client

Notion has two sharing options for client portals:

Option A — Public link (view-only):

  • Click Share in the top right
  • Toggle Share to web on
  • Send the link to your client — they can view without a Notion account

Option B — Guest access (view + comment):

  • Click Share → type your client's email
  • Set permission to Can comment (so they can leave feedback inline)
  • They'll get an email invite and create a free Notion account to access it

Guest access is better for active projects where you want the client to comment on deliverables or flag issues. Public links work fine for read-only status updates.

Tip: When sharing, double-check that sub-pages and linked databases are accessible. Notion's sharing is hierarchical — sharing a parent page gives access to its children, but linked databases from other parts of your workspace may need to be shared separately.


Step 6: Add Invoice Tracking

Add a third database called Invoices with these properties:

  • Invoice # (Title)
  • Client (Relation → Client Portal)
  • Amount (Number, formatted as currency)
  • Status (Select: Draft, Sent, Paid, Overdue)
  • Due Date (Date)

Add a Linked Database block on each client's portal page filtered to show only their invoices. Clients can see outstanding balances without you having to forward PDFs manually.


Free Notion Templates to Get You Started

Before building from scratch, grab our free templates at notioncraft.madethis.app/free — includes ready-to-use databases for client and project management that you can duplicate and customize in minutes.


Skip the Build: Get the Freelancer Client Tracker

If you want a pre-built system that handles clients, projects, invoices, and deliverables in one Notion workspace — without building all of this from scratch — the Freelancer Client Tracker is ready to use today.

Freelancer Client Tracker (Notion) — $22 →

Includes the Client Portal database, Deliverables log, Invoice tracker, and linked views — fully set up.

Free Resource

Not ready to buy? Grab our free Notion Quick-Start Template

A no-fluff starter workspace to get organized in 30 minutes. Free, no credit card required.

Ready to get organized?

Browse our Notion templates and find your perfect setup.