Monitor Query Results and Notify Notion Automatically
If you use SQL-style queries in Google Sheets to slice your data (e.g., 'top 10 leads this month'), Notis watches those results for changes and posts alerts to Notion so your team is always aware of shifts in the data.
Trigger
Table Query Result Changed
Triggers when the result set of a saved table query changes in Google Sheets. Detects rows added, removed, or updated in the query output. This trigger monitors the result of a SQL query against a Google Sheets table and fires when changes are detected.
Action
Add multiple content blocks (bulk, user-friendly)
Efficiently adds multiple standard content blocks to a notion page in a single api call with automatic markdown parsing. the 'content' field in notionrichtext blocks now automatically detects and parses markdown formatting including headers (# ## ###), bold (**text**), italic (*text*), strikethrough (~~text~~), inline code (`code`), links ([text](url)), and more. ideal for bulk content creation, ai agents, and replacing multiple individual add page content calls. supports automatic text formatting, content splitting, and up to 100 blocks per request.
Why this helps
Founders rely on saved queries to pull relevant subsets of data, but the results change over time. Without passive monitoring, important changes go unnoticed until someone remembers to check the query output.
- Detect when query results change without manual checking
- Instant alerts in Notion keep the team informed
- Reduce the cognitive load of tracking dynamic datasets
- Never miss an important shift in filtered data
Setup
Build it in a few focused steps.
- 1Connect Google Sheets and Notion to Notis.
- 2Set up a saved query in Google Sheets that filters your data (e.g., 'SELECT * WHERE status = active').
- 3Create an automation: 'When the results of my [query name] query change in Google Sheets, post an alert to my Notion page.'
- 4Select the Google Sheets table-query trigger and identify your saved query.
- 5Choose the Notion page for alerts and your notification channel, then test by modifying data that would affect the query result.
Questions about this workflow
What counts as a 'change' in the query results?
Any row added, removed, or updated within the query result set. Notis uses snapshot-based diffing to detect these changes.
Do I need to be an advanced Google Sheets user to set this up?
No, Notis handles the query monitoring. You just need to identify which saved query to watch.
Can I get details about which rows changed?
Yes, include that in your prompt: 'Show me which rows were added or updated' and Notis will include that in the Notion alert.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link Google Sheets to Notion. A trigger fires from one place; an action lands in another.
Google Sheets triggers
Notion actions
Aggregate Metric Changed
Triggers when an aggregate metric (SUM/COUNT/AVG/MIN/MAX) changes in a Google Sheets spreadsheet. This trigger monitors an aggregate calculation on a target column (optionally filtered by a search column/value) and fires when the calculated result changes.
Add multiple content blocks (bulk, user-friendly)
Efficiently adds multiple standard content blocks to a notion page in a single api call with automatic markdown parsing. the 'content' field in notionrichtext blocks now automatically detects and parses markdown formatting including headers (# ## ###), bold (**text**), italic (*text*), strikethrough (~~text~~), inline code (`code`), links ([text](url)), and more. ideal for bulk content creation, ai agents, and replacing multiple individual add page content calls. supports automatic text formatting, content splitting, and up to 100 blocks per request.
Cell Range Values Changed
Triggers when values in a specified A1 range change in Google Sheets. This trigger monitors a specific cell or range of cells and fires when any values change.
Add content to Notion page
Deprecated: appends a single content block to a notion page or a parent block (must be page, toggle, to-do, bulleted/numbered list, callout, or quote); invoke repeatedly to add multiple blocks.
Conditional Format Rule Changed
Triggers when conditional formatting rules change in a Google Spreadsheet. Detects when rules are added, updated, or removed. Uses snapshot-based diffing to detect changes between polls.
Append complex blocks (advanced, full control)
Appends complex blocks with full notion block structure to a parent block or page. use for advanced scenarios requiring precise control: code blocks, tables, embeds, nested children within blocks, or when working with pre-built notion block objects. requires full notion api block schema - use add multiple page content for simpler content creation.
Data Validation Rule Changed
Triggers when data validation rules change (added/updated/removed) in a Google Spreadsheet. Uses snapshot-based diffing to detect changes between polls.
Archive Notion Page
Archives (moves to trash) or unarchives (restores from trash) a specified notion page.
Developer Metadata Changed
Triggers when developer metadata entries change (new/updated/removed) in a Google Spreadsheet. Uses snapshot-based diffing to detect changes between polls.
Create comment
Adds a comment to a notion page (via `parent page id`) or to an existing discussion thread (via `discussion id`); cannot create new discussion threads on specific blocks (inline comments).
Filtered Range Values Changed
Polling trigger that monitors Google Sheets filtered ranges for value changes. Uses snapshot-based diffing to detect when values matching a data filter change. Emits the matched values when changes are detected.
Create Notion Database
Creates a new notion database as a subpage under a specified parent page with a defined properties schema; use this action exclusively for creating new databases.
New Rows in Google Sheet
Simple polling trigger that monitors Google Sheets for new rows. Detects when new rows are added and returns the complete row data. Perfect for triggering any workflow based on new sheet entries.
Create Notion page
Creates a new empty page in a notion workspace.
New Sheet Added in Google Spreadsheet
Polling trigger that detects when a new sheet is added to a Google Spreadsheet.
Delete a block
Archives a notion block, page, or database using its id, which sets its 'archived' property to true (like moving to "trash" in the ui) and allows it to be restored later.
Connect any two apps with Notis in the middle.
Not just Google Sheets and Notion. Any combination from 985+ integrations.
When this happens · Trigger
Do this · Action
Save your first hour today.
7 days free trial with 20$ free usage included.
No card. Works with personal or business Notion.
