Automatically archive Notion databases weekly in BigQuery
Notion backups are manual and risky. Notis exports your Notion databases every week to BigQuery, giving you a complete archive and historical record without remembering to export.
Trigger
Recurring schedule
Notis starts this workflow on a schedule, such as daily, weekly, or during business hours.
Action
Query
Query tool will run a sql query in bigquery. note: make sure the query being input in a single line format. for example, select * from sample dataset.sample table where column name = 'value'
Why this helps
Notion data loss is a constant fear. Without automated exports, backups are manual, inconsistent, and easy to forget. One deleted page and you've lost the data.
- Automated weekly backups eliminate manual export tasks
- Historical data snapshots let you see how databases evolved
- Data loss protection if Notion ever experiences issues
- Query historical data to spot trends and patterns
Setup
Build it in a few focused steps.
- 1Connect Notion workspace to Notis.
- 2Connect Google BigQuery to Notis.
- 3Tell Notis: 'Every week on Monday at 2 AM, export all Notion database contents (rows and properties) to BigQuery for archival. Include a snapshot_date so I can track versions.'
- 4Select 'Scheduled (cron)' as the trigger and set the day and time.
- 5Choose your reporting channel.
- 6After the first export runs, verify the data in BigQuery and check row counts.
Questions about this workflow
Can I export specific databases or all of them?
You can ask Notis to export all databases or filter to specific ones.
What happens if a database is very large?
Notis will export it all to BigQuery (BigQuery has generous limits). If you want to optimize, Notis can batch or split large exports.
Can I run backups more frequently than weekly?
Yes. You can ask for daily, every-2-hours, or any frequency. Weekly is common for cost and simplicity.
When this happens · Trigger
Do this · Action
Supported Triggers and Actions
Notis builds workflows that link Notion to Google BigQuery. A trigger fires from one place; an action lands in another.
Notion triggers
Google BigQuery actions
All Page Events
Triggers when any Notion page is created or updated across the workspace.
Query
Query tool will run a sql query in bigquery. note: make sure the query being input in a single line format. for example, select * from sample dataset.sample table where column name = 'value'
Comment Created
Triggers when a new comment is created in Notion. Optional `page_id` filter scopes to comments on a specific page. When omitted, fires for any new comment in the workspace the integration has access to. Requires the 'Read comments' capability on the Notion integration. If a connection was authorized before that capability was enabled, the user must re-authorize the connection for comment events to flow.
New Comment
Triggers when a new comment is added to a specified Notion block or page.
Database Created
Triggers when a new Notion database (the container) is created. A database is the post-2025-09-03 container that holds one or more data sources. This trigger fires for the container's creation event (`database.created`), distinct from `NOTION_DATASOURCE_CREATED` which fires when a new data source is added to an existing database. Most customers calling Notion's `POST /v1/databases` (the legacy API) or creating a database via the Notion UI will see this event. Adding a new data source to an existing database fires `data_source.created` instead — use `NOTION_DATASOURCE_CREATED` for that. Notion's payload puts `entity.type: "block"` (the container is a `child_database` block in the content tree) and `entity.id` is the database id.
Data Source Created
Triggers when a new Notion data source is created. Fires workspace-wide. The payload's `data.parent` carries the data source's tree parent (typically the teamspace) for downstream filtering. A single template-based database creation can fire multiple `data_source.created` events at once — one per data source the template instantiates.
Data Source Schema Updated
Triggers when a Notion data source's schema is updated. Fires on column add / remove / rename. Payload includes `data.updated_properties: [{id, name, action}]` so consumers can discriminate the kind of change downstream. Optional `data_source_id` filter scopes to schema changes on a single data source. When omitted, fires for any schema change in the workspace the integration has access to. Note: adding a column also fires `page.properties_updated` once per existing row in the data source. Customers wanting a single structural-change signal should use this trigger.
New Page
Triggers when a new page is added to a Notion database.
Page Added to Page
Fires when a new subpage (a `child_page` type block) is added under a specified parent Notion page.
Connect any two apps with Notis in the middle.
Not just Notion and Google BigQuery. Any combination from 1,000+ 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 Google BigQuery.