Active vs lost members β
Every member in GCM is either active or lost. The distinction matters because:
- Lost members don't count against your plan's member limit.
- They're excluded from default attendance and messaging lists.
- They still appear in the search and reports β they're not deleted.
This is different from soft-delete: a deleted member is hidden from almost everywhere, awaiting permanent purge. A lost member is visible but acknowledged-as-disengaged.
What "lost" means β
A member is marked lost when you set their lost_at timestamp β the date you concluded they're no longer attending. This can happen:
- Manually β open the profile, click the mark-as-lost action.
- Automatically β a workflow with the no attendance for N weeks trigger.
- In bulk β from the bulk-actions module, filter by last attendance date and mark the result.

WARNING
Marking lost is not a punishment β it's pastoral data hygiene. Lots of healthy churches mark around 15 percent of their roll as lost. The goal is to keep your active roster accurate so messages and reports reflect reality.
The lost-members widget β
Your dashboard has a Lost members tile showing the current count. Clicking through lands you on a filtered list β the same members you'd see by filtering the main list with Status = Lost.
From the list you can:
- Open profiles to review history.
- Send a "we miss you" message.
- Recover anyone who shows back up.
- Hand off a batch to a pastor for personal follow-up.
Recovering a member β
When someone returns after being marked lost, open their profile and click the recover action. This:
- Clears the
lost_attimestamp. - Adds them back to active counts immediately.
- Triggers the
member.recoveredworkflow event (so you can auto-send a welcome-back message, assign a new shepherd, etc.).
The lost period stays on the activity log β you can always see "lost on March 4, recovered on May 21" later.
How "lost" differs from "deleted" β
| Behavior | Lost | Soft-deleted |
|---|---|---|
| Counts against plan limit | no | no |
| Visible in main members list | with filter | no |
| Visible on profile if you have the link | yes | no |
| Attendance + giving history preserved | yes | yes (hidden) |
| Reversible | yes β anytime | yes β within 30 days |
| Appears in search | yes | no |
| Triggered by | manual or workflow | manual delete action |
Use lost for people who have stopped attending. Use delete when a record was created in error or is a true duplicate.
Workflows around lost status β
The events that fire on status change:
member.marked_lostβ fires whenlost_atis set.member.recoveredβ fires whenlost_atis cleared.
A common recipe is to chain these:
- No attendance for 6 weeks β mark as lost + notify shepherd.
- Marked lost β send a "thinking of you" message after 2 days.
- Recovered β notify the shepherd and add them to a re-onboarding group.
See Newcomer follow-up workflow for the mechanics β the same pattern reversed gives you re-engagement.
Permissions β
| Action | Admin | Shepherd | Member |
|---|---|---|---|
| View lost list | yes | scoped | no |
| Mark a member lost | yes | scoped | no |
| Recover a member | yes | scoped | no |
Common questions β
Does marking lost remove giving history? No. The donations stay attached, year-end statements still go out, and the donor's profile still shows the gifts. We're just acknowledging they're no longer attending β their financial relationship is separate.
What date should I use for lost_at? The date you concluded they're not coming back, not the date you discovered it. So if a member stopped attending in January but you only marked them in April, set the date to January.
Can a member be both lost and deleted? Technically yes, but it's pointless. If you're soft-deleting, the lost flag is moot.
Next steps β
- Workflow triggers β automate marking-lost based on attendance.
- Member profile β see where the lost banner appears.
- Merging duplicates β if "lost" actually means "we have two records".