Leaders, meeting day, and location β
Every group has a who runs it and a when and where it meets. GCM stores those on the group record itself, so leaders and meeting metadata travel with the group everywhere it shows up β the Groups list, exports, reports, and the public group directory if you've enabled it.
This article covers how leaders are assigned today, the meeting day / time / location fields, and how the leader meeting cadence fits with the rest of GCM.
Assigning a leader β
The groups table has a leader_id column that points at a member, plus a denormalized leader_name text column for display in lists and exports where joining isn't worth it.
In practice, leadership in groups is rarely a single seat β a home group has a host couple, a class has a teacher plus a co-teacher, a recovery circle has a facilitator and a sponsor. GCM gives you two ways to handle this honestly:
Option 1: one leader on the group record β
Pick the person who's primarily responsible for the group β the one you'd page first if something went wrong this Tuesday night β and assign them as the leader. They show up wherever the group does.
This is the lightweight path. It works for the 80% of groups where one person is clearly in charge.
Option 2: a "Leaders" sub-group or custom field β
For groups with co-leads, an apprentice leader, or a rotating facilitator, the cleanest path is:
- Create a custom field on the member via Custom fields β e.g. Group leadership role, with options Lead, Co-Lead, Apprentice, Host.
- Tag the relevant members. They're now queryable as "everyone with a leadership role in any group" β useful for leader-meeting invitations and for the Leaders dashboard widget.
- Optionally, also assign one of them as the
leader_idon the group record so it surfaces in lists.
The custom-field approach lets you reach all co-leads via Messaging or Workflows without trying to cram multiple people into one column.
TIP
The leader of a group does not automatically get edit rights on the group. Permissions are controlled by RBAC v2 (the groups.write key), not by the leader_id. If you want your home-group leaders to be able to add and remove members themselves, grant them a role with groups.write via Users & Roles. The groups.write key is global today β there's no per-group restriction at the permission layer.
Meeting day, time, and location β
The group record carries three free-text fields for when and where it meets:
| Field | Stored as | Example |
|---|---|---|
| Meeting day | text | Tuesday, Every other Saturday, 1st and 3rd Monday |
| Meeting time | text | 7:00 PM, 19:00 β 20:30, After service |
| Meeting location | text | Smith family living room, 12 Main St, Room 204, Zoom (link in WhatsApp) |
These are free text, deliberately. Group cadences are inconsistent β some meet weekly, some bi-weekly, some "whenever the leader sends out a WhatsApp" β and forcing a structured datetime would create more friction than it solves. The fields are read by humans (members looking up when does my group meet?) and surfaced on the group card, the public-site group directory page, and the Members β Group filter card.
If your group has a hard recurring schedule and you want it on the Calendar, create a corresponding meeting in Meetings setup and tag the meeting with this group β that's how group attendance gets recorded (see Group attendance).
Recurring leader meetings β
GCM doesn't (yet) have a built-in "leaders meeting" type. The recommended pattern is:
- Create a regular meeting in Meetings setup called Group Leaders Huddle (or whatever name you prefer). Set its cadence β weekly, monthly, whatever fits your church rhythm.
- Don't tag this meeting with any specific group β it's for leaders across all groups, not the membership of one.
- Invite leaders via Messaging β open Messaging, pick the audience by either:
- filtering members where
Group leadership role(custom field) is set, or - filtering members where they appear in any group's
leader_idcolumn (the bulk Members filter supports this).
- filtering members where
- Mark attendance at the leader meeting like any other meeting. The data shows up on each leader's individual attendance history and feeds the same lost-member / engagement signals as any other meeting.
This pattern keeps the leader meeting visible in the same Attendance + Calendar surfaces as Sunday service, without needing a separate "leader meeting" concept.
A workflow that helps β
A useful pairing is a Workflow with the trigger "Member added to group" set on any group whose member also has the Group leadership role custom field. The action: enroll the member in the leader-meeting reminder workflow so they start getting the recurring nudge automatically. New leaders get on the cadence the moment they're recognised β no manual maintenance.
Editing leader and meeting fields β
The fields live on the group record. To change them:
- Open the group's detail page from Groups.
- Click Edit in the header.
- Update the leader, meeting day, time, or location. (Org unit, name, and description can also be edited from the same dialog β see Create a group.)
- Save.
The change propagates immediately: the group card refreshes, the public directory entry (if enabled) updates on next page load, and any exports run after the save reflect the new values.
WARNING
Changing the leader does not retroactively change historical exports or reports. If you exported a list of "groups with leaders" last quarter and the leader has since changed, the export still shows the leader who was assigned at the time the export ran. To re-pull, re-export.
Communicating with group leaders β
Once you've identified who runs each group, leader communication runs through the same surfaces as everything else:
- Messaging β filter the audience picker to members with a leadership role custom field set, or to members listed as
leader_idon any group. Blast WhatsApp, SMS, or email to all leaders at once. - Conversations β pin a 1:1 conversation with each group leader so the back-and-forth ("can you cover next Tuesday?", "we had a visitor β can you follow up?") lives in one place.
- Workflows β trigger an automatic notification to a group's leader when something happens on their roster β e.g. a member is added, a member is marked lost, an attendance threshold is missed.
Permissions β
| Action | Required permission |
|---|---|
| Set / change leader on a group | groups.write |
| Set meeting day / time / location | groups.write |
| See the leader on the group card / list | groups.view |
There's no separate "edit-leaders-only" permission. Anyone with groups.write can change leader and meeting fields. If you need to lock leader assignment to admins only while still letting pastors edit other group details, that's a future capability β open a feature request with the use case.
Next steps β
- Group attendance β record who shows up to each meeting.
- Group reporting β roster trends, member counts, and exports.
- Add members β populate the roster before assigning a leader.
- Compare with Ministries β Leaders and permissions β the analogous discussion on the ministries side.