Skip to content
Notis

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.

TriggerPolling

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'

ActionInstant

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.

TriggerInstant

New Comment

Triggers when a new comment is added to a specified Notion block or page.

TriggerPolling

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.

TriggerInstant

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.

TriggerInstant

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.

TriggerInstant

New Page

Triggers when a new page is added to a Notion database.

TriggerPolling

Page Added to Page

Fires when a new subpage (a `child_page` type block) is added under a specified parent Notion page.

TriggerPolling

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.