Planning Center Groups SQL Queries
Build Stronger Community Through Data-Driven Group Ministry
Your small groups are where life change happens. With Parable’s SQL access to Planning Center Groups data, you can understand participation patterns, identify growth opportunities, and ensure no one falls through the cracks in your community.Quick Start
Ready to explore your groups data? Here’s your first query to see your active groups and their membership:What You Can Do With Groups Queries
👥 Understand Group Participation
- Track membership growth and retention
- Identify groups that need more members
- Find people not yet connected to a group
- Monitor leadership coverage across groups
📊 Measure Engagement
- Analyze attendance patterns and trends
- Identify highly engaged vs occasional participants
- Track event participation rates
- Measure group meeting consistency
🎯 Strategic Planning
- Evaluate group types and their effectiveness
- Plan new groups based on participation gaps
- Optimize group locations and meeting times
- Balance group sizes for better community
📈 Generate Leadership Reports
- Track leader-to-member ratios
- Identify potential new leaders
- Monitor group health metrics
- Create dashboard views for ministry leaders
Available Tables
Your Planning Center Groups data is organized into these main tables:Table | What It Contains | Key Use Cases |
---|---|---|
groups_groups | Group information | Group details, schedules, settings |
groups_memberships | Member-to-group connections | Who’s in which group, roles, join dates |
groups_people | People in the Groups system | Member profiles, permissions |
groups_events | Group meetings and events | Meeting schedules, locations, cancellations |
groups_attendances | Event attendance records | Who attended what, attendance tracking |
groups_group_types | Categories for groups | Small groups, classes, teams, etc. |
groups_locations | Physical meeting locations | Address details, venue information |
groups_tags | Labels for groups | Group characteristics, ministries |
groups_enrollments | Sign-ups and registrations | Future group enrollments, waitlists |
Understanding Relationships
Parable stores Planning Center relationships in separate tables to maintain data integrity. This means connections between entities are stored in dedicated relationship tables:groups_group_relationships
- Links groups to types, locations, tags, etc.groups_membership_relationships
- Links memberships to groups and peoplegroups_event_relationships
- Links events to groups and locationsgroups_attendance_relationships
- Links attendances to events and people
Key Concepts
Groups vs Memberships vs People
- Groups are the small groups, classes, or teams in your church
- Memberships connect people to groups with specific roles (member, leader)
- People are individuals who can be members of multiple groups
Events vs Attendances
- Events are scheduled group meetings or activities
- Attendances track who actually showed up to each event
Roles in Groups
Members can have different roles:member
- Regular participantleader
- Group leader with additional permissions
Next Steps
📚 New to SQL? Start with Basic Queries for simple, powerful queries you can use today. 🚀 Ready for More? Check out Advanced Queries for complex analysis and reporting. 📊 Need Reports? See Reporting Examples for complete, production-ready reports. 🔍 Want Details? Review the Data Model for complete table documentation.Common Questions
Why do some fields show NULL?
NULL values appear when:- A group hasn’t been archived (
archived_at IS NULL
means active) - Optional information wasn’t provided (like
virtual_location_url
) - An event hasn’t happened yet (
canceled_at IS NULL
means not canceled)
How do I filter for active groups only?
What’s the difference between created_at and system_created_at?
created_at
- When the group was created in Planning Centersystem_created_at
- When the data was synced to Parable- Use
created_at
for ministry metrics
How do I find a person’s groups?
You need to join through the memberships table:What does location_type_preference mean?
This indicates where the group typically meets:physical
- In-person at a locationvirtual
- Online meetingshybrid
- Both in-person and online options
Tips for Success
- Start Simple - Begin with basic SELECT queries before adding complexity
- Use Comments - Document what your queries do for future reference
- Test with LIMIT - Add
LIMIT 10
while developing queries - Handle NULLs - Use
IS NULL
orIS NOT NULL
appropriately - Check Relationships - Remember to join through relationship tables
Getting Help
- 🐛 Found an issue? Report it at github.com/getparable/parable-api/issues
- 📖 Need more examples? Check our other query guides in this folder
- 💬 Have questions? Reach out to your Parable support team
Your groups data tells the story of community. Let’s help you understand it better.