Altru lets you attach staffing resources to program events: the docent for a guided tour, two educators for a school program, a keeper talk presenter. That’s useful when you’re setting up a single event. The trouble starts when someone asks a question that spans many events, like “Who is scheduled to lead tours next week?” or “How many educator hours did we book in October?” That’s a query question, and staffing is one of the areas where Altru’s query tools are hard to rely on.
Below is what to check before you assume the data is out of reach, and the workarounds that hold up when it is.
First, confirm what your query views actually expose
Altru’s ad-hoc queries are built from source views, and each view only shows the fields Blackbaud has exposed for it. Staffing assignments live alongside program events, so start with an event-based query and look carefully through the field list for anything related to staffing, resources, or assigned jobs.
Be honest with yourself about what you find:
- If a staffing node is there, test it against a handful of events you know well. Check that every assigned person or role shows up, and that events with two staff members return two rows (or one row with both, depending on how the view is shaped).
- If you only see general resources (rooms, equipment, quantities) and not the staffing assignments themselves, don’t try to stretch those fields to cover staffing. They’re answering a different question.
- If you can’t tell, build the query in a test environment if you have one, or ask Blackbaud support directly which query source exposes event staffing resources in your version. That answer can change between releases, so a quick confirmation beats guessing from an old forum post.
What you can reliably query today
Even when the staffing assignments themselves are hard to reach, a lot of the surrounding data is easy to pull, and it often answers the real question behind the ask.
- Event schedule: program name, event date, start and end time, location. This is the backbone of any staffing plan.
- Capacity and sales: capacity, tickets sold through daily sales and advance sales, and group sales bookings tied to the event. Staffing needs usually scale with attendance, so this tells you where coverage matters most.
- Group details: group size and contact information for scheduled groups, which is often what an education coordinator needs to assign a guide.
Put those fields in one event query, filter it to a date range, and save it. You now have a reusable “events needing coverage” list, even if the names of the assigned staff aren’t on it yet.
Workarounds that hold up
1. Keep staffing in a shared sheet keyed to the event
Many organizations end up here. Export the event query, add columns for assigned staff, and keep it in a shared spreadsheet. The key detail is to carry the event date, time, and program name into the sheet exactly as Altru has them, so you can match rows when the schedule changes. The weak spot is staleness: if events are added or canceled in Altru and nobody re-exports, the sheet drifts.
2. Use the event screens for one-off checks
For a single day or a single program, looking at the event records directly is still the fastest way to see who is assigned. It just doesn’t scale to a monthly report.
3. Record staffing in a field you can query
If staffing reports matter more to you than the built-in resource feature, consider capturing the lead staff member in a place your queries already reach, such as an event-level note or attribute, if your setup allows it. Test this on a few events first, agree on a consistent format (full names, not initials), and make sure whoever schedules events actually fills it in. A field that’s populated half the time is worse than no field.
4. Decide what “staffing report” really means
Before building anything, ask the person requesting it what decision they’re making. A volunteer manager counting hours, an education lead assigning guides, and a finance team estimating labor cost need very different outputs. Often a schedule-plus-attendance query covers two of the three.
Keeping the schedule current outside Altru
The shared-sheet approach works best when the event list refreshes on its own instead of depending on someone to export it. Social Good’s Data Bridge syncs Altru query results to Google Sheets, so a saved event query (dates, times, capacity, tickets sold) can land in the same spreadsheet your team uses to assign staff. It moves whatever your query returns; it won’t expose staffing fields that Altru’s query views don’t.
Quick answers
Can I see staffing assignments in an Altru query?
It depends on which fields your query source views expose. Check the event-based views first, and confirm with Blackbaud support if you can’t find a staffing node.
What’s the simplest staffing report I can build right now?
An event query filtered by date with program, time, location, capacity, and tickets sold. Add staff names alongside it in a shared sheet.



