Notion2GoogleTasks is a bidirectional synchronization engine that keeps your Notion databases and Google Tasks perfectly in sync. Maintain task parity across platforms while leveraging Notion's rich content features and Google Tasks' mobile-friendly interface.
✨ Core Functionality
- Bidirectional Sync
- Automatic updates in both directions (Notion ↔ Google Tasks)
- Status change propagation (mark complete/incomplete)
- Smart conflict resolution (last-modified wins)
- Intelligent Matching
- Title-based duplicate prevention
- Cross-platform ID tracking
- Automatic task list creation from Notion tags
- Advanced Configuration
- Customizable Notion query filters (status, dates, properties)
- JSON-based filter configuration
- Environment-based deployment settings
⚙️ Technical Capabilities
- OAuth2 token management for Google API
- Notion API pagination handling
- Config validation with error logging
- Automatic token refresh handling
🚀 Planned Improvements
- Webhook integration for real-time updates
- Custom property mapping configuration
- Manual/scheduled sync required (no instant updates)
- Google Tasks API restrictions:
- Only supports date-based due dates with note datetime values (no time-specific).
- Notion API limitations:
- Requires specific database schema
- Rate limits (3-5 requests per second)
Notion Setup
- Integration token with
read
andupdate
permissions - Database with required properties:
Title
(Text)Tags
(Multi-select)Due
(Date)Status
(Select)
Google Setup
- OAuth 2.0 Client ID with Tasks API access
- Authorized
https://www.googleapis.com/auth/tasks
scope
For detailed steps, refer to the Quickstart Guide.
- Notion:
- Notion database ID
- Query filter
- API KEY
- Google API:
- OAuth2 client configuration
- Access token retrieval
Contributions are welcome! Please open an issue or submit a pull request.