
How I Built a WhatsApp Competition Bot (And What 100 Bread Lovers Taught Me About Low-Friction UX)
When JD Creations reached out to me, they had a client with a tight deadline and no technical solution. Motherland Omni had approached them about an upcoming Albany radio competition, and they needed someone who could move fast on the tech side.
That's where I came in.
The challenge: build a system where people could submit their competition entries — personal details and proof of purchase photos of Albany bread — in a way that was simple, accessible, and didn't require a massive tech budget.
Oh, and the competition was starting in about a week or 2.
This is the story of how i built the Albany Ntofo Ntofo chatbot in collaboration with JD Creations, what worked, what didn't, and the surprising user behaviour that taught me a valuable lesson about friction in user experience.
The Problem: A Competition Without a Front Door
Radio competitions are a staple of South African marketing. They're engaging, they drive product sales, and they create buzz. But there's always been a challenge: how do you actually collect entries?
The traditional approaches — web forms, email submissions, dedicated apps — all have friction. You're asking people to leave what they're doing, open a browser, navigate to a site, fill out forms, figure out how to upload images... by the time they've done all that, the moment has passed.
Motherland Omni was exploring different alternatives, but with the competition launch date fast approaching, they needed a decision — and fast. JD Creations knew they needed technical expertise to pull this off quickly, so they brought me on board.
Why WhatsApp? Meet Your Users Where They Already Are
Here's a simple truth: almost everyone has WhatsApp. It's not just a messaging app here — it's infrastructure. It's how people communicate with family, conduct business, and stay connected.
By building on WhatsApp, we weren't asking users to download anything new, create any accounts, or learn any new interfaces. They could enter the competition the same way they would message a friend.
The accessibility factor was crucial. This was a local radio competition, not a tech-savvy urban audience. We needed something that a grandmother in the township could use just as easily as a student in the city.
Building the Bot: Speed Over Perfection
With only one to two weeks until launch, I had to make pragmatic technology choices. A custom-coded solution would have been elegant, but there simply wasn't time. I needed a stack that prioritised speed and flexibility.
Here's what I landed on:
- **WhatsApp Business API** as the interface
- **Make.com** for the automation backbone — handling data processing and integrations
- **Google Sheets** for storing entrant information
- **Google Drive** for storing the proof-of-purchase images
The beauty of this stack? No servers to manage, no deployment pipelines to configure. the Motherland Omni team could view entries in real-time through tools they already knew — Google Sheets and Drive.
The User Journey: Five Steps to Entry
We kept the flow deliberately simple:
- **Consent** — First, we ask if users are comfortable with their details being captured (POPI compliance matters)
- **First name** — Just their first name, nothing complicated
- **Surname** — Keeping the data clean and organised
- **Photo upload** — The proof of purchase: a picture of their Albany bread loaves
- **Discovery source** — How did they hear about the competition?
That's it. Five interactions. No account creation, no email verification, no password requirements. Just a conversation.
The Tricky Bit: Making Images Work
The conversational flow itself was straightforward to build. The real technical challenge? Handling the images.
When users send images via WhatsApp, they come through as base64 encoded strings. That's not particularly useful for competition organisers who need to visually verify that someone actually bought Albany bread.
The solution: Make.com handled the conversion from base64 to proper JPEG format, then automatically uploaded each image to a dedicated Google Drive folder. The organisers could simply open Drive, scroll through the images, and verify entries — no technical knowledge required.
It's not glamorous work, but it's the kind of behind-the-scenes data plumbing that makes or breaks a project like this.
The Results: 17 Entrants and One Very Enthusiastic Bread Fan
Over the period the competition ran, we captured 117 entries. For a local competition this was a solid result — though it could have been significantly higher.
Here's what happened: the radio station accidentally broadcast the wrong WhatsApp number during some of their promotions. We'll never know exactly how many potential entrants messaged a random number instead of our bot, but it's a reminder that the best technology in the world can't fix human error in other parts of the chain.
**Some interesting patterns emerged:**
- **One dedicated user entered over 10 times in a single day.** They really wanted to win (or really loved Albany bread).
- **Peak entry times clustered around midday (12-1pm) and late afternoon (4-6pm)** — lunch breaks and the end of the workday, when people had a moment to engage.
The feedback from the Motherland Omni team was exactly what we'd hoped for: they found the chatbot easy to interact with, straightforward to manage, and loved having all the data accessible in familiar tools. No training required, no new systems to learn.
What I Learned: Friction is the Enemy
The biggest lesson from this project? **If you make the friction between intent and action low enough, people will engage.**
Think about it: someone hears about the competition on the radio. They've just bought bread. The barrier to entry is sending a WhatsApp message — something they do dozens of times a day anyway. There's no cognitive load, no new behaviours to learn.
That one user who entered 10+ times in a day? They weren't gaming the system — they were responding to how easy we made it. Every time they bought bread, entering took less than a minute.
What I'd Do Differently
If I could rebuild this project, I'd push for expanded functionality:
- **Opt-in notifications**: Ask users if they want to receive announcements or alerts about future competitions or promotions
- **Business discovery**: Add options for users to learn more about Albany's products
- **Analytics integration**: Build in better tracking from the start to understand drop-off points
The chatbot worked brilliantly for its single purpose, but there was an opportunity to create ongoing value beyond the competition window. A captured audience of engaged users is valuable — we could have done more with it.
Why This Project Matters
This wasn't the most technically complex project I've worked on. There's no machine learning, no blockchain, no buzzwords.
But it demonstrates something I think is more valuable: **the ability to take a client's need and bring it to life quickly, pragmatically, and without requiring major setup costs.**
When JD Creations brought me this project, they needed someone who could translate a business requirement into a working solution — fast. That's the value I bring to collaborations like this: the technical expertise to make things happen when timelines are tight and budgets are real.
A WhatsApp bot, some clever automations, and a Google Sheet. 117 competition entries captured, organised, and accessible. Client happy. Users engaged.
Sometimes, that's exactly what success looks like.
---
Technical Summary
**Timeline**: 1-2 weeks development, 1 months live
**Results**: 100 competition entries captured
**Collaboration**: Built in partnership with JD Creations & Motherland Omni
---
*Want to discuss how a chatbot solution could work for your next campaign? [Get in touch]*
Tags
Want similar results for your business?
Let's discuss how I can help translate your ideas into solutions that deliver real value.
Get notified of new case studies
Subscribe to receive updates when I publish new project deep-dives and tech insights.