The Rise and Fall of Squatbot 🤖
How a spreadsheet, a few no-code data pipelines, and some healthy peer pressure can keep you 💪 doing a pandemic
With gyms shuttered during the pandemic, in July 2020 my friends and I were looking for ways to keep our fitness up while sheltered-in-place. What started as a friendly pushup challenge quickly spun out of control into a 25 day experimental fitness app called Squatbot.
Squatbot coached us to 10k pushups over the course of the month before ultimately ending in disaster. This is Squatbot's story and the lesson we learned along the way.
Problem: "Leg Day is Cancelled Until Vaccine"
It was hard to see the problem at first. Everything seemed fine in March when shelter-in-place went into effect (excluding the global pandemic, widespread unemployment, and continued racial injustice in America, of course). Stay inside for a few weeks, don't see your friends or family, figure out how to work from home.
It was hard to see the problem at first. Everything seemed fine in March when shelter-in-place went into effect (excluding the global pandemic, widespread unemployment, and continued racial injustice in America, of course). Stay inside for a few weeks, don't see your friends or family, figure out how to work from home.
Paired with the boredom was the isolation. Did I still know how to interact with other humans? Zoom calls with friends became indecipherable from work meetings. Another Pechakucha? Felt like I just finished my last presentation on the History of Cole Slaw.
Finally, the slow decay of our bodies started to catch up with us. Going from a fairly active lifestyle to locked down in a small apartment — eating comfort food 24/7 — had not been good for the waistline. Walking down the stairs to pick up our mail started to feel harder and harder. I was melting into my couch — wasting away, physically and mentally.
MVP: Random Fitness Challenge
Our first attempt to solve these problems was via a group text thread. Fire off a random challenge to your friends and see who bites.
Aha! There was some market demand. People were feeling the same way as I.
This reeked of opportunity.
Squatbot v0: Google Forms & Spreadsheet
That initial text exchange laid the groundwork for Squatbot, a way to physically compete with friends while safely sheltered-in-place.
There were a few key design principles for the first version of Squatbot...
There needed to be a consistent challenge that seemed hard but sufficiently doable
That challenge needed to increase in difficulty over time
We needed a way to track daily progress against the challenge
We started with a daily pushup challenge. Every week, we'd add +10 more pushups to the daily amount. Participants could submit their pushups via a Google Form as they were completed throughout the day.
The form then populated a spreadsheet that tracked our progress:
Squatbot v1: Closing the Peer Pressure Loop
There were two problems we ran into with the first iteration. First, it was pretty annoying to fill out the form. Too much friction to find the link and fill out a few fields.
The second was that the challenge was easy to forget about. There were nights where I'd remember right before bed that I hadn't completed the challenge when I really didn't want to get on to the ground and start doing pushups.
The third was that we were getting burnt out from doing all these pushups.
So we made a few changes in v1...
Participants can text Squatbot (easier than the form)
On submission, Squatbot will respond to all participants with the daily tally and the last person who submitted (peer pressure)
Pushups are replaced with Units of Physical Exertion, a new metric which encompasses body squats, pushups, and pull ups
Under the hood, v1 was powered by Twilio, Google Sheets, and two Zapier Zaps...
Data Ingestion Zap: Triggered via incoming text message. Parses the submission, looks up the phone number, and submits the form response on your behalf (that then sends it to a Google Sheet)
Peer Pressure Zap: Triggered on spreadsheet update. Whenever someone submits, this zap pulls the scoreboard and the last submission and sends it to all participants.
It was incredibly motivating. Getting an update that your friends had gotten off the couch to do pushups made us want to do the same. Day after day, set after set.
We were feeling sore. We were feeling healthier.
Squatbot's Fiery Demise 🔥🤖🔥
Over the course of July, Squatbot coached us to 10k cumulative pushups. It temporarily cured some quarantine boredom, and all participants completed the daily challenge for 25 straight days.
However, Squatbot met it's fiery demise on July 23rd, 2020.
After a shall-not-be-named participant (me) failed to complete the daily challenge, the premise of Squatbot soon broke down. Soon the other participants fell off the wagon. Why should we be doing pushups if {Unnamed Participant} is not? Why should I continue now that I've missed a day and our glorious streak has been broken?
The texts stopped rolling in from our fitness robot friend. Squatbot was dead.
Learnings
The challenge of Squatbot was pretty simple. How do you get a group of (remote) people to take an action they all know they should take, but are not doing consistently? How can digital tools create incentive systems to get people to make healthier choices? And maybe have some fun in the process?
There are a few reflections from the rise and fall of Squatbot...
Codeless can take you far: You don't really need a fancy app or UI or even a website to build a "product". Just some time and a problem you want to solve. Codeless tools like Zapier are powerful and allow you to build prototypes quickly.
Social Pressure is a powerful force: When it comes to getting users to do something that they don't immediately want to do (pushups), provide positive feedback for good behavior (completing the daily challenge is texted to the group) and disincentivize bad behavior through transparency (a missed day also texted to the group). Fitness apps like Peloton, Strava, and Apple Watch have all harnessed this friendly social pressure to keep people fit.
Offline-online challenges can work when social trust is high: A question came up pretty early as to how we knew that one of us wasn't cheating. It'd be pretty easy to just text the daily challenge amount to Squatbot without actually doing the Units of Physical Exertion. But the trust among us was high, so it wasn't something we really worried about. I could imagine if this expanded to a group of 5-10+, trust would be lower, suspicions would be higher, and the accountability system would break down faster.
Prisoner's Dilemma is real: The Prisoner's Dilemma is a paradox where two parties acting in their own self-interest will lead to sub-optimal outcomes. In this case, as long as everyone completed the challenge yesterday, everyone would comply the next day. But once one person defected, the social pressure broke down and everyone defected. Social pressure is fragile. ****It only works when everyone plays by the rules. When one person showcases bad behavior (skipping a day), accountability breaks down and suddenly everyone is bailing.
Thanks to Nate and Jason for helping name, design and participate in this social experiment