Skip to content

no surprises in your database

What sync updates (and what it doesn't)

Your ChMS is your church's source of truth, so SignUpChurch is deliberately conservative about what it writes there. This page spells out exactly what happens on every sync — and the long list of things that never will.

When sync runs

Sync fires in exactly three situations, for Pro-plan churches with a connected integration:

  • A volunteer signs up on your public form (or an embed of it) — including a yes on an RSVP question. A no never syncs anything: someone who can't come doesn't become a person record in your ChMS. (If they first said yes and change their answer to no, that's treated like a cancellation — see the third point.)
  • An admin adds a person to a slot from the dashboard (“phone-in” sign-ups), or records a yes RSVP there.
  • Only on sheets linked to a Planning Center Services team, a Tithe.ly (Elvanto) group, or a Breeze tag: a sign-up is canceled by the volunteer or removed by an admin — or a yes RSVP is changed to a no — this takes them back off the Services plan, or out of the group or tag if the sign-up is what put them there (and touches nothing else).

It runs in the background a moment after the sign-up is saved (or canceled). If your ChMS is slow or down, the sign-up itself is never blocked or lost — the volunteer still gets their confirmation and their spot.

What sync does, step by step

  • 1. Search by email. We look for an existing person in your ChMS with the volunteer's email address. Because matching keys off the email, a sign-up made without one (possible only on sheets where you've made email optional in the sheet's Sign-up form fields card) is never synced at all — creating an unmatchable person would just pile up duplicates in your ChMS.
  • 2a. Match found → add, never overwrite. If they're already in your ChMS, their record is left as it is — with one addition: a phone number they typed on the form is filled in when their record doesn't have one (per-system details below). Nothing existing is updated, overwritten, or “cleaned up.”
  • 2b. No match → create one person. If they're new, we create a single person record with the name and contact info they entered on the form (details per system below). The name they typed is split on the first space — “Mary Beth Smith” becomes first name “Mary,” last name “Beth Smith.”
  • 3. You hear about anything partial. If your ChMS accepts the person but rejects part of their contact info (some systems refuse certain email domains, for example), your church's admins get a heads-up email naming the record to fix — because a person without an email can't be matched on their next sign-up.
That's the whole footprint: find or create the person, add missing contact info — never overwrite anything. The one exception is the opt-in links below (Services scheduling, Elvanto groups, Breeze tags), which only exist on sheets you explicitly link.

Planning Center Services scheduling (opt-in)

Sign-up sheets and Services plans describe the same thing — people serving on a date — so you can connect them, one sheet at a time. On any sheet, open the Planning Center Services card and pick a service type and team. From then on:

  • Each new sign-up is added to the plan whose date matches the sheet's event date, on the team you picked — as Unconfirmed, so it shows up like any pending scheduling request and your team leaders stay in control.
  • If a volunteer cancels (or you remove them from the slot), they come off that plan again. Deleting a whole sheet or slot does not reach into your plans — clean those up in Planning Center.
  • If no plan exists for the sheet's event date, nothing is scheduled — the person still syncs to People as usual.
  • Planning Center only lets us schedule people who are already part of Services — its API can't add them to Services for us. A brand-new volunteer still syncs to People as usual, but won't appear on the plan until you add them to the team inside Planning Center (people in Services count toward your Services plan size, so that stays your call). Once they're on the team, their future sign-ups schedule automatically.
  • You can see all of this at a glance: on a linked sheet, each sign-up carries a badge on its dashboard page — “On the plan” when they were scheduled, “Not in Services yet” when Planning Center couldn't schedule them, or “No matching plan”. After you've added someone to the team in Planning Center, hit Try again next to their name to schedule them without waiting for their next sign-up.

Nothing happens on sheets you haven't linked. If you connected Planning Center before Services scheduling existed, hit Reconnect in Settings once to grant access to Services.

Tithe.ly / Elvanto group sync (opt-in, coming soon)

Elvanto's API doesn't allow writing service rosters, so the closest link there is a group — the way many Elvanto churches organize their serving teams. On any sheet, open the Tithe.ly / Elvanto group card and pick a group. From then on:

  • Everyone who signs up on that sheet is added to the group (after the usual person sync).
  • If a volunteer cancels (or you remove them from the slot), they're removed from the group — but only if the sign-up is what added them. Someone who was already in the group before signing up is never touched on cancellation.

A sheet can send sign-ups to one place: a Planning Center Services team, an Elvanto group, or a Breeze tag — never more than one.

Breeze tag sync (opt-in, coming soon)

Breeze churches organize their teams with tags, so that's what a sheet links to there. Open the Breeze tag card on any sheet and pick a tag. From then on:

  • Everyone who signs up on that sheet gets the tag (after the usual person sync).
  • If a volunteer cancels (or you remove them from the slot), the tag is removed — but only if the sign-up is what added it. Someone who already had the tag before signing up is never touched on cancellation.

What gets written, per system

Planning Center

Writes to: Planning Center People (and, only when a sheet is linked to a team, Planning Center Services)

Creates a Person with first and last name, then attaches their email (as a primary Home email) and phone (as a Mobile number). If the person already exists, only a new phone number is added — nothing else on their record is changed. When a sheet is linked to a Services team, the volunteer is also added to the matching plan as Unconfirmed — as long as they're already part of Planning Center Services (see below). Groups, Check-Ins, Giving, and every other Planning Center product are never touched.

Breeze ChMS (coming soon)

Writes to: Your Breeze people database (and, only when a sheet is linked to a tag, that one tag)

When live: creates a person with first and last name, and stores their email (so future sign-ups match them) and mobile phone in your account's fields. Existing people aren't edited — Breeze search results don't show whether a phone is already on file, so we never risk overwriting one. When a sheet is linked to a tag, the volunteer also gets that tag (see below). Other tags, events, and giving are never touched.

Tithe.ly / Elvanto (coming soon)

Writes to: Your Tithe.ly (Elvanto) people list (and, only when a sheet is linked to a group, that one group)

When live: creates a person with first name, last name, email, and mobile phone. If the person already exists and their record shows no phone at all, the mobile they typed is filled in — an existing number is never changed. When a sheet is linked to an Elvanto group, the volunteer is also added to that group (see below). Services rosters and giving are never touched — Elvanto's API doesn't allow writing rosters at all.

MinistryPlatform

Writes to: The Contacts table

Creates a Contact with first name, nickname, last name, display name, email address, and mobile phone. If the Contact already exists and its mobile phone is blank, the phone they typed fills it — nothing else on the Contact is changed. No other tables (Participants, Events, Groups, Donations) are written.

Church Community Builder (coming soon)

Writes to: CCB individuals

When live: creates a new family with one member (first name, last name, email). Groups, processes, and events won't be touched.

What sync never does

  • Never overwrites existing data. A returning volunteer's record is never edited — the one thing sync adds is a phone number that wasn't on file yet. Names, emails, and existing numbers are never changed or removed.
  • Never deletes people. Nothing removes a person record from your ChMS. The only removals sync ever performs are taking a volunteer off a Services plan, out of an Elvanto group, or off a Breeze tag that the sign-up itself put them on, when that same sign-up is canceled or removed.
  • Never creates events, groups, teams, or plans. The opt-in links put people onto plans, into groups, and on tags you already built — sync never creates a plan, team, Breeze tag, or Elvanto group, and sheets without a link never touch serving data at all.
  • Never syncs sheet details. Which slot they chose, their note, and their quantity stay in SignUpChurch (export them as CSV any time).
  • Never back-fills. Connecting a ChMS doesn't push sign-ups that happened before you connected.
  • Never imports from your ChMS. Sync is one-way. Beyond the email lookup above — and the service type, team, group, and tag lists you pick from when linking a sheet, plus the membership checks that protect existing group members and tagged people — SignUpChurch doesn't read, store, or display your ChMS data.

About duplicates

The email lookup is what prevents duplicates, so it works best when volunteers use the same email each time. If your ChMS is briefly unreachable during the lookup, we err on the side of not losing the volunteer and create the record — which can occasionally mean a duplicate to merge later. We think a duplicate you can merge beats a volunteer who vanished.

Ready to set it up? See Connect your ChMS.

Next up: Contact support