The volunteer rota swap we got wrong
Three months after launch, a pastor from a church in Bristol sent us a message that stopped me mid-coffee: 'The swap feature is actually making things harder. People are scared to ask.' That sentence sat with me for days. We'd built it to reduce friction. Instead, we'd built a feature that made people feel exposed.
Why we built it in the first place
Running a volunteer rota is boring work. Someone has to track who's leading worship next Sunday, who's on the prayer team, who's managing the children's group. In most churches, that landed on a spreadsheet, or worse, a WhatsApp group chat where someone would ask 'Can anyone cover next week?' and the thread would spiral into chaos.
We thought Komuniti could fix that. A dedicated rota section, built properly. When someone needed coverage, they could request a swap instead of just texting into the void. Simple logic. Efficient. The feature shipped in version 1.3, and we felt good about it.
For about six weeks, no one complained. Then the emails started coming in. Not angry emails. Uncomfortable ones. The kind where someone is politely telling you that you've misunderstood something fundamental about how their community actually works.
The invisible hierarchy we didn't see
Here's what we missed. Asking for a rota swap isn't just about logistics. It's social. In a church, asking someone to cover your shift carries weight. You're asking for a favour. You're putting yourself in someone else's debt. The pastor in Bristol explained it like this: 'People see the swap button and think they're asking in public. They don't want everyone to know they need help.'
We'd built the swap flow to be visible to the whole rota group. Makes sense from a software perspective, right? Transparency. But in a real community, that visibility created shame. One person wrote to us that they kept cancelling their own shifts rather than ask for a swap, because they didn't want to look unreliable. Another said the feature felt like broadcasting a weakness.
The technical problem was solved. The human problem was just beginning.
What we changed, and why it mattered
We rebuilt it. The swap request now goes directly to the person you're asking, not to the group. If they say yes, it gets confirmed. If they say no, only the two of you know. The rota updates, but the social friction disappears.
It sounds like a tiny shift. In code terms, it basically meant moving one API call and changing the visibility permissions on the notification. But in practice, it changed whether people would actually use the feature or just keep texting the rota coordinator by phone instead.
We also added a second option: a general 'help needed' request that goes to the rota coordinator only, not to the group. For people who wanted to flag that they couldn't make a shift, but weren't comfortable naming a specific person to ask. Small. Quiet. But it gave people a path that didn't feel exposing.
The bigger lesson we're still learning
Building software for churches isn't like building software for startups or schools. The social rules are different. Trust is deeper. Expectations around vulnerability and asking for help are shaped by theology, not just by what feels efficient. We learned that the hard way.
I spent years building consumer apps. You ship a feature, you look at the usage metrics, you iterate. But in Komuniti, sometimes low usage doesn't mean the feature is bad. It means it's asking people to do something their community culture doesn't support. That's not a metric problem. That's a design problem.
Since the rota redesign, we've been asking ourselves a different question before we ship anything. Not 'Does this solve the problem efficiently?' but 'Does this respect how this community actually behaves?' Those aren't always the same question. Sometimes the second one means building something that looks less elegant, but works better in real life.
Listening to the people who actually use it
The Bristol pastor who sent that first email became one of our best sources of feedback. Not because he told us what to build, but because he explained how things felt from inside the community. When you're designing for volunteer-led churches, you can't rely purely on behaviour data. You need to ask people what they didn't do, and why.
One of the things we've started doing is bringing together groups of users every month, church leaders and volunteers from different congregations, to talk through how Komuniti is landing in their actual lives. Not a focus group. Just conversation. Some of it leads to code changes. Some of it just helps us understand what matters.
The rota swap was a small feature. But it taught us something that matters more: software works best when it fits the real world, not when the real world has to bend to fit the software. For churches especially, that's the difference between a tool that sits there unused and one that people actually rely on.
When you're building for communities with their own culture and rules, do you listen to what people say they need, or do you watch what they actually do instead? Sometimes they're telling different stories.