Beginner~8 min setupCommunication & ProductivityVerified April 2026
Slack logo
Notion logo

How to Send Notion Meeting Notes to Slack with Zapier

When a new page is created in a Notion database, Zapier automatically posts a formatted message with the page title and link to a designated Slack channel.

Steps and UI details are based on platform versions at time of writing — check each platform for the latest interface.

Best for

Teams who store meeting notes in a shared Notion database and want their Slack channel notified within minutes without anyone manually copying links.

Not ideal for

Teams needing real-time sub-minute delivery — Zapier polls Notion every 1-15 minutes depending on your plan, so use Make or n8n if speed is critical.

Sync type

scheduled

Use case type

notification

Real-World Example

💡

A 20-person product team at a B2B SaaS company logs every standup and sprint review in a Notion database called 'Meeting Notes.' Before this automation, engineers and designers missed notes entirely because the person who wrote them forgot to post in #product-team. Now, every new Notion page triggers a Slack message in #meeting-notes with the title, author, and a direct link — within 15 minutes of creation.

What Will This Cost?

Drag the slider to your expected monthly volume.

/mo
505005K50K

Each platform counts differently — Zapier: 1 task per trigger. Make: 1 operation per module per record. n8n: 1 execution per run.

Prices shown for annual billing. Based on published pricing as of April 2026.

Estimated ROI

1000

min saved/mo

$583

labor value/mo

Free

no platform cost

Based on ~2 min manual effort per operation at $35/hr fully loaded labor cost.

Implementation

Before You Start

Make sure you have everything ready.

Notion account with a database (not just a page) where meeting notes are created — the trigger only works with Notion databases, not standalone pages
Zapier account — free tier works but limits polling to every 15 minutes; Starter plan ($19.99/month) reduces this to 2 minutes
Slack account with permission to add apps to your workspace — workspace admins can always do this; non-admins may need approval
Notion integration permissions — the Notion account you connect to Zapier must have access to the specific meeting notes database
The target Slack channel must already exist before you configure the action — Zapier cannot create channels

Field Mapping

Map these fields between your apps.

FieldAPI Name
Required
Page Title
Page URL
6 optional fields▸ show
Created Time
Created By
Meeting Date (custom property)
Attendees (custom property)
Meeting Type (custom property)
Slack Channel Target (custom property)

Step-by-Step Setup

1

zapier.com > Dashboard > Create Zap

Create a new Zap

Log into zapier.com and click the orange 'Create Zap' button in the top-left sidebar. You'll land on the Zap editor, which shows a two-step canvas: Trigger on the left and Action on the right. The editor walks you through each piece sequentially. Give your Zap a name at the top — something like 'Notion Meeting Notes → Slack' — so it's easy to find later.

  1. 1Log into zapier.com
  2. 2Click the orange 'Create Zap' button in the left sidebar
  3. 3Click the name field at the top and type 'Notion Meeting Notes → Slack'
  4. 4Click the Trigger box to begin configuration
What you should see: You should see the Zap editor open with an empty Trigger step highlighted and a search bar asking you to choose an app.
2

Zap Editor > Trigger > App & Event

Set Notion as the trigger app

In the Trigger search bar, type 'Notion' and select it from the dropdown. Zapier will show you a list of available Notion triggers. Choose 'New Database Item' — this fires every time a new page is added to a specific Notion database. Do not choose 'Updated Database Item' unless you want notifications on every edit, which will generate a lot of noise.

  1. 1Type 'Notion' in the trigger app search bar
  2. 2Select 'Notion' from the results
  3. 3Under 'Event', select 'New Database Item'
  4. 4Click 'Continue'
What you should see: You should see 'Notion — New Database Item' displayed as your trigger event with a 'Continue' button active.
Common mistake — Zapier polls Notion on a schedule — every 15 minutes on free plans, every 2 minutes on paid plans. This is not a webhook. If your team needs instant notifications, that limitation matters.
Zapier
+
click +
search apps
Slack
SL
Slack
Set Notion as the trigger app
Slack
SL
module added
3

Zap Editor > Trigger > Account

Connect your Notion account

Click 'Sign in to Notion' and a popup will open asking you to authorize Zapier. You'll choose which Notion workspaces and pages Zapier can access. Grant access to the specific database that holds your meeting notes — not your entire workspace if you can avoid it. After authorizing, Zapier will return you to the editor with your account listed.

  1. 1Click 'Sign in to Notion'
  2. 2In the Notion authorization popup, click 'Select pages'
  3. 3Check the database where your meeting notes live
  4. 4Click 'Allow access'
  5. 5Confirm the connected account appears in Zapier and click 'Continue'
What you should see: Your Notion account email should appear under 'Account' with a green checkmark, and the 'Continue' button should be active.
Common mistake — If you grant access to the wrong Notion page or database here, the trigger will either find nothing or pull from the wrong source. Double-check you selected the meeting notes database specifically, not a parent page.
Zapier settings
Connection
Choose a connection…Add
click Add
Slack
Log in to authorize
Authorize Zapier
popup window
Connected
green checkmark
4

Zap Editor > Trigger > Configure

Select your meeting notes database

Zapier now asks you to configure the trigger by selecting which Notion database to watch. Click the 'Database ID' dropdown and Zapier will load all databases your connected account has access to. Find and select your meeting notes database. If you have many databases, type part of the name to filter. This is the only filter available at this step — you cannot filter by property value here.

  1. 1Click the 'Database ID' dropdown
  2. 2Wait for Zapier to load your available Notion databases
  3. 3Select the database named for your meeting notes
  4. 4Click 'Continue'
What you should see: The database name should appear in the 'Database ID' field. Clicking 'Continue' will take you to the test step.
5

Zap Editor > Trigger > Test

Test the Notion trigger

Zapier will ask you to run a test to pull in sample data from your database. Click 'Test trigger' and Zapier will fetch the three most recently created pages from your Notion database. Pick the most recent one as your sample record. You'll see all the fields Notion returns — title, URL, created time, properties — and these are what you'll map to Slack in the next steps.

  1. 1Click 'Test trigger'
  2. 2Wait 5-10 seconds for Zapier to fetch Notion records
  3. 3Click on the most recent record to expand its fields
  4. 4Confirm the page title and URL fields are present
  5. 5Click 'Continue with selected record'
What you should see: You should see at least one Notion page listed with fields like 'Name', 'URL', 'Created Time', and any custom properties your database includes.
Common mistake — If the test returns no records, your Notion database is either empty or Zapier doesn't have access to it. Add a test page to the database first, then re-run the test.
Zapier
▶ Turn on & test
executed
Slack
Notion
Notion
🔔 notification
received
6

Zap Editor > Action > App & Event

Add Slack as the action app

Click the '+' button below the trigger to add an action step. Search for 'Slack' and select it. Under 'Event', choose 'Send Channel Message' — this posts a message to a public or private Slack channel. Do not choose 'Send Direct Message' unless you want to notify a single person rather than a whole team channel.

  1. 1Click the '+' icon below the Notion trigger step
  2. 2Type 'Slack' in the action app search bar
  3. 3Select 'Slack' from the results
  4. 4Under 'Event', select 'Send Channel Message'
  5. 5Click 'Continue'
What you should see: You should see 'Slack — Send Channel Message' displayed as your action event.
7

Zap Editor > Action > Account

Connect your Slack account

Click 'Sign in to Slack' and authorize Zapier on the Slack workspace where you want messages posted. Zapier will ask for permission to post messages as itself (or as a custom bot name you can set). You need to be a Slack workspace admin or have permission to add apps. After authorizing, your workspace name will appear in the account field.

  1. 1Click 'Sign in to Slack'
  2. 2Select the correct Slack workspace from the dropdown in the popup
  3. 3Click 'Allow' to grant Zapier posting permissions
  4. 4Confirm your workspace name appears under 'Account'
  5. 5Click 'Continue'
What you should see: Your Slack workspace name should appear under 'Account' with a green checkmark.
Common mistake — Zapier posts as 'Zapier' by default. If your team finds that confusing, you can change the bot name in the action configuration under 'Bot Name' — set it to something like 'Meeting Notes Bot' so it's clear what's posting.
8

Zap Editor > Action > Configure

Configure the Slack message

Now map the Notion fields into a Slack message. Set the 'Channel' field to the Slack channel where notes should be posted — type '#' to browse channels. In the 'Message Text' field, build a message using Notion data. Click into the field and use the dynamic data picker (the '+' icon) to insert fields from your Notion trigger. A good message format is: ':memo: New meeting notes: *[Page Title]* — [URL]'. You can also include the created date or any Notion properties like 'Meeting Date' or 'Attendees' if your database has them.

  1. 1Click the 'Channel' dropdown and select your target Slack channel
  2. 2Click into the 'Message Text' field
  3. 3Type ':memo: New meeting notes: *' then click the '+' icon to insert the Notion page title field
  4. 4Type '*' after the title, then add ' — ' and insert the Notion page URL field
  5. 5Optionally add a second line with 'Created: ' and insert the 'Created Time' field
  6. 6Set 'Send as a Bot' to 'Yes' and optionally set 'Bot Name' to 'Meeting Notes Bot'
What you should see: The Message Text field should show a mix of static text and dynamic orange tokens representing Notion fields, like ':memo: New meeting notes: *[Name]* — [URL]'.
Common mistake — The Notion 'URL' field Zapier returns is the direct page URL. It will always be a notion.so link. If your workspace uses a custom domain, the link will still point to notion.so — users need to be logged in to open it.
Message template
📬 New entry: {{1.name}}
Email: {{1.email}}
Details: {{1.description}}
9

Zap Editor > Action > Test

Test the Slack action

Click 'Test action' to send a real test message to your Slack channel using the sample Notion data from step 5. Go to Slack immediately and check the channel you configured. You should see the message appear within a few seconds. Review the formatting — check that the title is bold, the URL is clickable, and there are no raw field names or blank tokens in the message.

  1. 1Click 'Test action'
  2. 2Open Slack and navigate to the channel you selected
  3. 3Find the test message posted by Zapier
  4. 4Confirm the page title, URL, and any other fields display correctly
  5. 5If formatting looks wrong, go back and edit the Message Text field
What you should see: A message should appear in your Slack channel within 10 seconds that reads something like ':memo: New meeting notes: *Q3 Sprint Review* — https://notion.so/...'
10

Zap Editor > Publish

Turn on the Zap

If the test message looked correct, click 'Publish' in the top-right corner of the Zap editor. Toggle the Zap to 'On'. Zapier will now poll your Notion database on its regular schedule and post to Slack whenever a new page is created. The polling interval depends on your plan — 15 minutes on free, 2 minutes on Starter and above.

  1. 1Click the 'Publish' button in the top-right corner
  2. 2Confirm the Zap status shows 'On' (green toggle)
  3. 3Navigate to zapier.com > Zaps to confirm it appears in your active Zaps list
What you should see: Your Zap should appear in the Zaps list with a green 'On' badge. The 'Last run' column will update after the first poll cycle.

This Code by Zapier step formats the Created Time from ISO 8601 into a readable date-time string and extracts the author's first name for a cleaner Slack message. Paste this into a 'Code by Zapier' action step inserted between the Notion trigger and the Slack action. Map the output variables 'formattedDate' and 'firstName' into your Slack message text field.

JavaScript — Code Step// Input data from the Notion trigger
▸ Show code
// Input data from the Notion trigger
// Set these as Input Data in the Code step:
// createdTime = {{Created Time}}

... expand to see full code

// Input data from the Notion trigger
// Set these as Input Data in the Code step:
// createdTime = {{Created Time}}
// createdByName = {{Created By: Name}}

const createdTime = inputData.createdTime;
const createdByName = inputData.createdByName || 'Unknown';

// Format ISO date to readable string: 'Nov 14, 2024 at 10:32 AM'
const date = new Date(createdTime);
const formattedDate = date.toLocaleString('en-US', {
  month: 'short',
  day: 'numeric',
  year: 'numeric',
  hour: 'numeric',
  minute: '2-digit',
  hour12: true,
  timeZone: 'America/New_York' // Change to your team's timezone
});

// Extract first name only for a cleaner message
const firstName = createdByName.split(' ')[0];

output = [{ formattedDate, firstName }];

Going live

Production Checklist

Before you turn this on for real, confirm each item.

Troubleshooting

Common errors and how to fix them.

Frequently Asked Questions

Common questions about this workflow.

Analysis

VerdictWhy Zapier for this workflow

Use Zapier for this if your team is non-technical, the Notion database structure is stable, and you need a working notification in under 30 minutes. Zapier's guided editor handles the Notion-to-Slack connection without any configuration files or code. The poll-based trigger is fine for most teams — if notes go up and people see them within 15 minutes, that is fast enough for async documentation. The one scenario where you'd skip Zapier: if your team creates meeting notes in real time during calls and people need the Slack link before the meeting ends, go to Make or n8n where you can get closer to 1-minute polling.

Cost

The cost math is straightforward. Each new Notion page = 1 Zapier task. If your team creates 5 meeting notes per week, that is roughly 20 tasks per month — well inside Zapier's free tier of 100 tasks. A team creating 20 notes per week hits 80 tasks/month, still free. Heavy users — say a 50-person company with 5-10 meetings logged daily — hit 150-300 tasks/month and need the Starter plan at $19.99/month. Make handles the same workflow at that volume for free (1,000 operations/month on the free tier), saving you $240/year. If budget matters and your team is comfortable with a slightly more complex UI, Make wins on price.

Tradeoffs

Make's Notion module supports the same 'Watch Database Items' trigger and can send richer Slack Block Kit messages with buttons and structured layouts — Zapier's Slack action only does plain text or basic markdown. n8n lets you self-host and run unlimited operations for free, and its Notion node gives you more control over filtering before the message fires. Power Automate has a Notion connector but it is a premium connector requiring a per-user plan, making it the most expensive option here with no meaningful advantage. Pipedream's free tier is generous and its code-first approach lets you transform Notion's rich text array into clean formatted output — but that is only valuable if your notes use complex formatting. Zapier is still the right pick for most teams because the setup takes 20 minutes, the UI is self-explanatory, and the free tier covers small teams completely.

Three things you'll discover after the Zap goes live. First, Notion returns page titles as a rich text array, not a plain string. If your message shows a raw object or blank title, you need to use the 'Plain Text' sub-field under the title token in Zapier — not the top-level field. Second, if anyone on your team uses Notion database filters or custom sorts, those can affect what Zapier sees as 'new' — a page that bubbles to the top of a sorted view after an edit may re-trigger the Zap. Test this with your actual database configuration before rolling out to the full team. Third, Zapier's task history only keeps 7 days of logs on the free plan. If a Slack notification is missing and you want to debug it, you have a narrow window — check Task History within a day or two of the issue, not a week later.

Ideas for what to build next

  • Route to Different Channels by Meeting TypeAdd a Zapier Paths step (available on Professional plan and above) to send Sprint Review notes to #engineering, design syncs to #design, and all-hands notes to #general — based on the Meeting Type property in your Notion database.
  • Add a Weekly Digest to SlackBuild a second Zap with a Schedule trigger that fires every Friday at 4 PM, queries your Notion database for pages created that week, and posts a summary list to Slack — so your team gets a weekly rollup alongside individual notifications.
  • Create Notion Pages Directly from SlackBuild a reverse Zap triggered by a Slack slash command or a starred message in a designated channel that creates a new Notion page template for an upcoming meeting — so the notes database stays populated without people manually creating pages in Notion.

Related guides

Was this guide helpful?
Slack + Notion overviewZapier profile →