Working with volunteers

Managing applications, tracking hours and shifts, and collecting important information with Beacon forms

Updated over a week ago

Important causes can always use a little help from volunteers, and Beacon helps to manage volunteers easily from outreach and application to onboarding and ongoing coordination.

As with many things in Beacon, there's several ways to store and work with data, and how you do it depends a little on your complexity and requirements. We'll cover the main use-cases below, but do feel free to reach out to us if you'd like a little personal advice too.

Note: Lots of the options below use custom record types. These are available on the Standard and Premium plans.


Storing volunteer information

We would class 'volunteer information' as the main details that are relevant to someone's current volunteering. Some common information would be:

  • Date joined

  • Current status (Pending / Active / Paused / Resigned)

  • Roles covered (Office / Fundraising / Race marshal / etc)

  • Availability

  • Emergency contacts

  • Notes relevant to their volunteering

  • Equal opportunities monitoring (Race / Ethnicity / Disabilities / etc)*

Warning: *Sensitive information should be stored privately to ensure only the relevant people have access to that information. Use the roles and permissions feature to manage the visibility and access to fields or record types.

There's two main options for where to store your volunteer information

  1. Option 1: Store on People records (recommended)

Option 1: Store on People

For most volunteering, we recommend that this is stored on the People records. We've already set up a few fields to get you started (try setting someone's 'Volunteer status' to 'Active' to see all the fields!), but feel free to create new fields for any additional volunteer information you need to store.

Option 2: Store in a new record type

If you want to track different information about different aspects of someone's volunteering, you'll need to store the details in separate record type. For example:

  • Giulia volunteers for both gardening and front of house. You want to store different start dates and different availability for each role that she does, or she has different emergency contacts for each role.

  • Moritz volunteered for a few months 2 years ago, and is starting again this year. You want to keep each 'set' of volunteering separate, so you can see what he is volunteering for this year and 2 years ago, and you want to easily report on how many hours he has worked in each set.

Let's get the record type set up...

  1. Create a new 'Volunteering' custom record type

  2. Add a blank record, and create a new field to point to the Person record of the volunteering

    New volunteer field
  3. Create new fields for the information you want to store (such as those listed above)

Now let's make it more useful!

  • So you know at a glance what this record is, we recommend creating a 'Summary' smart field that can show the person and the role...

    Summary smart field

    ...and setting it as this record type's primary field in Settings > Record types (you could then delete the default 'Name' field).

  • You can create an 'All volunteering' related record card on this Volunteering record to show you what other volunteering records this person has. Click here to see how.

  • You could also create the same card on the Person record, and set it to only be visible when the person is a volunteer. Click here to see how.

Storing volunteer applications

We've got you covered here! You should find a Volunteer applications record type in your sidebar, all ready to go. Of course, like elsewhere in Beacon, you can customise this to include any other fields that you need.

Application forms

Rather than painstakingly entering the information from paper or other online forms, using a Beacon form will mean the data flows straight into your Volunteer applications records and saves you lots of time!

To receive an application, we're going to use a signup form. Follow the steps in our main signup form guide to set up your form.

When adding sections and fields/questions, some will reference fields that might be on your People record (such as availability, emergency contacts, equal opportunities info) and some will reference fields from your Volunteer applications record (roles they're interested in, references, why they applied).

To collect any information for fields that exist on your Volunteer applications record, you can create a new section with that as the record type.

Some suggested fixed data for your form might be:

  • People > Type is 'Volunteer'

  • People > Volunteer status is 'Pending'

  • Volunteer applications > Stage/Status is 'New'

Want to see a finished example? Check out this volunteer application form from our friends at Gunnersbury Park & Museum.

Tracking hours or shifts

Beacon is a super flexible CRM - you can store all sorts of information in your account! In this particular case you can log the hours that your volunteers are working, enabling you to report on monthly hours, see who your most dedicated volunteers are, and keep a ledger of all the work completed.

Different organisations will track their volunteers' work in different ways. The two most common are either logging an individual's hours (Ekon volunteered 4 hours on Saturday), or logging a shift and who worked it(the Saturday front of house shift was completed by Maha and Kofi).

For example:

Logging an individual's hours

  • Ekon volunteered on Saturday for 4 hours. He was volunteering as a race marshal.

Tip: Logging a volunteer's hours are great if they self-submit hours, or if you have a small volunteering team.

Logging a shift

  • The Saturday front of house shift started at 10am and finished at 2pm, and was worked by Maha and Kofi.

Tip: Logging a shift is better if you personally track their hours, or have a large volunteering team.

Much like applications, volunteer logs are most useful as a new record type that we point to the People who are completing the work. This means that people can complete many shifts over time, in different roles, and we can keep a full history of their contributions.

Let's get the record type set up...

  1. Create a new 'Volunteer hours' or 'Volunteer shifts' custom record type

  2. Add a blank record, and create a new field to point to the Person record of the volunteer. If creating 'Volunteer shifts', set this to 'Allow multiple records to be selected'

  3. Create new fields for the information you want to log for the volunteering work:

If logging 'Volunteer hours':

  • Role/Position (drop-down list)

  • Date (date field)

  • Hours worked (number field, 2 decimal places; store 2hrs 45mins as 2.75)

If logging 'Volunteer shifts'

  • Role/Position (drop-down list)

  • Shift start (date AND time field)

  • Shift end (date AND time field)

  • Shift hours (number field, 2 decimal places, set as a smart field)

'Shift hours' formula: Let's calculate the number of hours in this shift!

This formula will calculate the number of hours between the shift's start and end times, whilst also accounting for different days (e.g. it starts at 10PM on Friday but ends 7AM on Saturday). Be sure to use your own field references, as they may be slightly different:


Now let's make it more useful!

  • So you know at a glance what this record is, we recommend creating a 'Summary' smart field that can show the important info...

    • Either a Volunteer hours summary:

      Volunteer shift summary

    • Or a Volunteer shift summary:

      Shift summary field

The formula we've used for the Volunteer shift summary is:

=CONCATENATE(#{{{c_role}}},", ",TEXTJOIN("-",TRUE,DAY(#{{{c_shift_start}}}),MONTH(#{{{c_shift_start}}}),YEAR(#{{{c_shift_start}}}))," ",HOUR(#{{{c_shift_start}}}),":",RIGHT("0"&MINUTE(#{{{c_shift_start}}}),2))

...and setting it as this record type's primary field in Settings > Record types (you could then delete the default 'Name' field).

  • It's also useful to add a 'Volunteer hours' related record card to People so that you can see the times that someone has volunteered, and easily create a new entry for them. For Volunteer hours, click here to see how. For Volunteer shifts, click here to see how.

  • Lastly, a 'Hours volunteered' summary metric card can show you a total of all the hours volunteered by this person. Sum up your 'Hours worked' or 'Shift hours' field.

Self-submit volunteer hours

If you're using the 'Logging an individual's hours' method, you can also set up a form to have volunteers self-submit their hours (or volunteer leaders can use it to submit hours on their behalf without needing access to Beacon!).

  1. We'll create a new 'Signup' form.

    New volunteer hour form
  2. Let's keep the form nice and simple, with just the 'Personal details' section, and a new section for our Volunteer hours fields.

You likely only need a few fields here:

  • Date

  • Role

  • Hours worked

  1. Set the 'After success' option to 'Show submit again button'. This makes it easy for volunteers to log several days one after the other.

Using a volunteer portal

Note: Portal forms are a Premium tier feature

Beacon's portal forms are an incredibly powerful tool to help you manage many aspects of your volunteering!

They allow volunteers or applicants to log in and do things such as:

  • See and update their current availability or roles they're interested in

  • See and edit hours they've previously logged, and easily add new ones

  • See applications they've made, and the current status

  • Have their referees log in and give their reference for an applicant

  • And many more possibilities!

Read more about the portal here.

Running a recruitment campaign

Campaigns aren't just for fundraising, they can also be useful for tracking your success with recruiting new volunteers!

  1. Create a new Campaign called something like 'Volunteer recruitment Jan 2021'

  2. Add a field to your Volunteer applications to be able to indicate the campaign they applied through.

    Campaign field on volunteer applications
  3. Copy your application form, and add Campaign = 'Volunteer recruitment Jan 2021' to the Volunteer application fixed data of this new application form.

  4. Use the link to this form in your recruitment emails/marketing, and anyone's application that comes via that link will have the campaign set.

Filtering examples using this campaign

  • Volunteer applications from the campaign:
    Campaign = 'Volunteer recruitment Jan 2021'

  • People who have applications from the campaign:
    Related Volunteer application > 0, where the Campaign = 'Volunteer recruitment Jan 2021'

  • Volunteer hours/shifts completed by people who have an application from the campaign:
    Volunteer(s) meets criteria, Related Volunteer application > 0, where the Campaign = 'Volunteer recruitment Jan 2021'

Charts examples using this campaign

  • Number of applications from this campaign over time:

  • Record type = Volunteer applications

  • Metric = Number of Volunteer applications

  • Grouping = Created date

  • Filters: Campaign = Volunteer recruitment Jan 2021'

Frequently Asked Questions

My volunteering requirements are a bit different, or more complex. Can I still use Beacon?

Absolutely! We've listed the most common approaches but if you have a different process for volunteer management, need greater visibility or detail in any area, or even want to import information from volunteer scheduling software, do get in touch. We can give you some advice, or even set it all up for you.

Did this answer your question?