What is a Data Feed?
A data feed is a snap shot of your data that is generated from the Planning Center API and reformatted so you can have raw data to build your own reports, analytics, and dashboards. It is meant to be the ultimate tool for accessing your raw data in a format that is build for data nerds.
What type of Data Feeds can I use?
Check-ins People Activity
Each row of data represents a single person's check-in. This data is useful for tracking individual engagement. For instance you can see how often a given person has checked-in, or which times they check-in.
included Fields
id - A unique identifier for the check-in
kind - Regular, Volunteer, Guest
name - Name of the person that checked-in
pco_id - planning center id of the person who checked in
https://people.planningcenteronline.com/people/pco_id
event_id - planning center id of the check-in event
https://check-ins.planningcenteronline.com/events/event_id
location - The location name they checked into
location_id - The location id they checked into
event_name - the name of the event they checked into
week_number - the week number for the year. Each year has 52 weeks. This allows you to compare weeks year over year.
event_ends_at - A date time in the format Month-Day-Year 24hour time
event_starts_at - A date time in the format Month-Day-Year 24hour time
Check-ins Events
Each row of data represents a single event with check-ins and headcounts
Included Fields
id - A unique identifier for the check-in event
location_id - unique id for the event location
location_name - name of the location
folder_id - A numerical identifier for the folder this location belongs to
folder_name - the name of the folder this location belongs to
date - data of the event
frequency - Daily, Weekly, etc
starts_at - 12 hour time event begins
event_name - name of the event
day_of_week - 0 Sunday, 1 Monday, etc
regular_count - number of regular check-ins
guest_checkins - number of guest check-ins
volunteer_checkins - number of volunteer check-ins
event_time_name - name of event time
For each event that has headcounts there will be a column
Headcount Name - headcount number
Giving Donor Totals
Each row of data represents a single donor. The row is a total of their donations for the range of data.
Included Fields
pco_id - planning center id of the person who donated
joint_donor_id - planning center id of the joint donation person
joint_giving_id -unique id representing the joint givers
first_donated - date they first donated
donation_count - number of donations in this datafeed range
donated refund_count - number of donations refunded in this datafeed range
refunded_amount - amount refunded in this datafeed range
failed_count - number of failed donations in this datafeed range
failed_amount - total amount of donations that failed in this datafeed range
fees - amount of fees that were charged for this person's donations in this datafeed range
received - total amount donated in this datafeed range
net - total donated minus fees & refunds in this datafeed range
Giving Activity
Each row represents a single donation. This can be a very large dataset. I recommend doing no more than one year at a time and combining the data in your analytics platform. This will allow you to only refresh the latest feed which is much faster.
Included Fields
pco_id - planning center id of the person who donated
joint_donor_id - planning center id of the joint donation person
joint_giving_id -unique id representing the joint givers
fund - name of the fund
donation_id - unique id for this donation
amount - amount of donation in dollars and cents.
amount_currency - name of currency
batch_group_id - the id for the batch group if there is one
batch_group_status - the status for the batch group if there is one
batch_id - unique id for this batch
campus - name of campus
completed_at - date time when donation completed
created_at - date time when donation was created
fee - fee in dollars and cents
fee_currency - currency of the fee
labels - comma separated list of labels
payment_brand - bank name, credit card brand
payment_check_dated_at - the date on the check if any
payment_check_number - the check number if any
payment_method - ach, card, check cash, etc
payment_method_sub - credit, debit, etc
payment_source - planning_center, push_pay, etc
payment_status - succeeded, failed, etc
received_at - date time payment was received
recurring_donation - TRUE/FALSE
refundable - TRUE/FALSE
refunded - TRUE/FALSE
refund_amount - dollars and cents of refund
updated_at - date time donation was updated
net_amount - donation total minus refund, minus failed, minus fees
failed - TRUE/FALSE
failed_amount - amount that failed
People Data
Each row is a single person in planning center. It includes all the data from the normal Planning Center data export plus some other fields.
Included Fields
pco_id - planning center id of the person
given_name
first_name
nickname
middle_name
last_name
birthdate
anniversary
gender
grade
medical_notes
child
status
membership
home_address_street_line_1
home_address_street_line_2
home_address_city
home_address_state
home_address_country_code
work_address_street_line_1
work_address_street_line_2
work_address_city
work_address_state
work_address_country_code
other_address_street_line_1
other_address_street_line_2
other_address_city
other_address_state
other_address_country_code
created_at updated_at
accounting_administrator
avatar
can_create_forms
can_email_lists
demographic_avatar_url
directory_status
graduation_year
home_address_country_name
home_address_zip
home_email_address
home_phone
inactivated_at
mobile_phone
name other_address_country_name
other_address_zip
other_email_address
other_phone
passed_background_check
people_permissions
remote_id
school_type
site_administrator
work_address_country_name
work_address_zip
work_email_address
work_phone
For each custom tab there will be a column
Tab_<TabName>_<tab_field_name> value
Groups People Activity
Each row represents a single person's activity in groups attendance.
Included Fields
id - unique id for this activity record
zip - zipcode for the event
city - city name for the event
name - name of person who attended
role - member, leader, visitor, etc
pco_id - unique planning center id for the person
attended - TRUE/FALSE whether they attended
canceled - TRUE/FALSE whether the event was canceled
event_id - unique id for the event
group_id - unique id for the group
event_name - name of the event
group_name - name of the group
week_number - 1-52 identifies the week of the year
event_ends_at - date time when event ends
group_type_id - unique id for the type of group
tag_regularity - "Weekly, Monthly, etc"
event_starts_at - date time when the event starts
group_type_name - Name of the group type
attendance_taken - TRUE/FALSE
For each tag there is a column
tag_<tag name> - value
If the tag has multiple values then there will be a comma separated list
tag_<tag name> - value,value,value
Groups Events
Each row represents a group event. It will have attendance totals for each event.
Included Fields
group_id - unique id for the group
group_name - name of the group
group_type_id - unique id for the type of group
group_type_name - Name of the group type
applicants - number of applicants at this event
attendance_taken - TRUE/FALSE
canceled - TRUE/FALSE
starts_at - date time when the event starts
ends_at - date time when the event ends
event_id - unique id for the event
event_name - name of the event
total_attendance - total number of attendees recorded
leaders - total number of leaders recorded
leaders_possible - total number of people with leader roll in the group
members - total number of members recorded
members_possible - total number of people with member roll in the group
visitors - total number of visitors recorded
non_named_guests - total number of non-named guests recorded
total_events - the total number of group events in this period
report_start - the start date of this datafeed
report_end - the end date of this datafeed
url - url to the event/attendance in planning center groups
week_number - 1 to 52
For each tag there is a column
tag_<tag name> - value
If the tag has multiple values then there will be a comma separated list
tag_<tag name> - value,value,value
Registrations Payments
Each row represents a payment for a registration.
Included Fields
created_at - Date payment was made
payer_id - pco_id of the payer
payer_name - name of the payer
event_id - unique id of registration event
event_name - name of registration event
instrument - Card, Check, Cash etc
amount - amount in dollars
stripe_fee - fee in dollars
net - amount minus stripe fee
How Do I get Started?
First go to https://pcochef.com/plus/datafeeds/ and click "Add New Data Feed".

- Select the Type of Data feed you want to setup.
- Give it a descriptive name like Groups Activity 2022
- Select a start and end range.
- Click Submit
- Your data feed will be queued and will run when the next background runner is available. Depending on how much data you have it can be quite fast or very slow.
- Once the feed is complete then you can download the data in csv, excel, or json.
- You can access your data via an api key to use in your analytics platform of choice.