Getting Started with Census
This guide will walk you through setting up Census, creating your first sync, and syncing data from your warehouse to a business tool.
Prerequisites
Before starting, ensure you have:
- Access to a data warehouse (Snowflake, BigQuery, Redshift, Databricks, or PostgreSQL)
- Read access to at least one table/view in that warehouse
- Admin access to a destination tool (e.g., Salesforce, HubSpot, Google Sheets)
- Census account (sign up for free trial at https://www.getcensus.com/)
Step 1: Sign Up & Connect Your Warehouse
Create Census Account
- Visit https://app.getcensus.com/signup
- Sign up with work email
- Complete onboarding questionnaire
- Select your data warehouse type
Connect Snowflake (Example)
Create Census User in Snowflake:
Connect in Census:
Alternative: BigQuery
Step 2: Connect Your First Destination
We'll use Google Sheets as a simple first destination (no setup required).
Connect Google Sheets:
Alternative: Salesforce
Step 3: Prepare Your Source Data
For your first sync, use a simple table/view. If you have dbt models, use those. Otherwise, create a simple view.
Example: Customer Summary View
Key Points:
- Include unique identifier (customer_id)
- Include any fields you want to sync
- Filter out test/invalid data
- Ensure data types are consistent
Step 4: Create Your First Sync
Configure Sync
-
Census → Syncs → Create Sync
-
Select Source:
-
Select Destination:
-
Configure Sync Behavior:
-
Map Fields:
-
Schedule:
-
Click "Create Sync"
Run Your First Sync
-
Click "Run Sync" button
-
Watch live progress:
-
Review Results:
-
Open Google Sheet to verify data appeared!
Step 5: Monitor Your Sync
Check Sync History
View Logs
Set Up Alerts
Step 6: Advanced Sync Features
Conditional Syncing
Only sync specific rows:
Field Transformations
Basic transformations (prefer doing in warehouse):
Lookups
Map to existing records in destination:
Step 7: Schedule Automatic Syncs
Edit Sync → Schedule:
Enable Schedule:
Common First-Sync Issues
Issue: "No rows returned from source"
Cause: Query filters too restrictive or table empty
Fix:
Issue: "Sync key not unique"
Cause: Multiple rows with same sync key value
Fix:
Issue: "Rate limit exceeded"
Cause: Destination API limits
Fix: Census automatically handles this with exponential backoff. Reduce sync frequency if persistent.
Issue: "Permission denied on destination"
Cause: Census doesn't have write access to destination object
Fix:
- Salesforce: Ensure Census user has Edit permission on Account object
- Google Sheets: Ensure sheet is shared with Census (edit access)
- HubSpot: Verify OAuth scopes include write permissions
Next Steps
Expand to More Destinations
Common next destinations:
- Salesforce: Sync account health scores, lead scores
- HubSpot: Sync contacts with product usage data
- Braze/Iterable: Sync customer segments for marketing
- Slack: Send notifications based on data thresholds
Create Segments (Audiences)
Integrate with dbt
Trigger Census after dbt:
- dbt Cloud webhook → Census sync trigger
- Ensures fresh data in business tools
Monitor Performance
Best Practices
1. Start Small
- Begin with one sync to a low-risk destination (Google Sheets)
- Validate data looks correct
- Then expand to critical systems (Salesforce, HubSpot)
2. Transform in Warehouse
- Don't use Census transformations for complex logic
- Create dbt models or views with clean, ready-to-sync data
- Census should be "last mile" delivery, not transformation layer
3. Use Descriptive Sync Names
4. Monitor Regularly
- Set up Slack alerts for failures
- Review sync logs weekly
- Check for failed records
5. Document Dependencies
- Use dbt exposures to track which models feed Census
- Document sync purpose and stakeholder
- Note any special considerations
Troubleshooting Checklist
Before contacting support:
Getting Help
- Documentation: https://docs.getcensus.com/
- In-App Chat: Click "?" icon in Census dashboard
- Community Slack: https://www.getcensus.com/community
- Email Support: support@getcensus.com
- Office Hours: Weekly (Enterprise customers)
You've completed your first Census sync! 🎉
Next steps:
- Use Cases - Real-world sync examples
- Best Practices - Production patterns
- Tutorials - Advanced sync scenarios