A counter you can't argue with
In Pushgard your reps hit monsters, and in the arena they decide a duel against another person. That changes what a counter has to be. A counter you can fool with a nod or a half bend is fine for a private tally. In a duel it decides who wins, and then the two people have to trust it.
So we set one rule before any threshold: a push-up counts only when the body actually went down and came back up. The pose model runs on the phone and turns each frame into 33 body points. Everything below is how we turned those points into a yes or a no.
The obvious signal was the wrong one
The first idea is the elbow angle: straight arm at the top, bent at the bottom. It breaks on narrow push-ups. With your hands under your chest, the forearm points almost straight at the camera and shrinks to a short line. In narrow push-ups the measured angle jumped between 8 and 143 degrees on neighbouring frames. The elbow is also the least visible of the three arm points.
So depth comes from how far your arm folds: the distance from wrist to shoulder, measured in shoulder widths. Two far-apart points don’t jump like that. On a narrow-grip recording the angle said you barely moved (23%), while the fold showed 73%.
The elbow angle still has one job. Before the set it checks that your arms are straight.
First, the counter learns your top
Before the first rep, you hold a plank for a moment. The counter takes 1.2 seconds of that stillness to learn where your top is. From then on, depth is measured against your own body, not against a standard person.
It checks three things first. Your elbows are open past 140 degrees. You are lying, not standing: your torso is at most 1.4 shoulder widths long in the frame, while a standing body measures 1.3 to 3.4. And you are holding still. If you start moving straight away, it gives up waiting after 8 seconds and learns your top on the move.
The top keeps updating during the set, because people shift.
- Arms straight
- You’re in a plank
- Hold still
Two signals have to agree
Signal one is the arm fold: how much shorter the wrist-to-shoulder distance gets compared with your top. Signal two is scale: as your chest comes down toward the phone, your shoulders get wider in the frame.
Each one alone is easy to fake. Bend your arms without lowering your body and the fold moves, but the shoulders stay the same size. Rock your torso toward the camera without bending your arms and the shoulders grow, but nothing folds. To fake both at once, you have to actually do the push-up.
Try it: drag the arm down and watch both signals. The rep counts only when the fold passes the depth line, the shoulders grow along with it, and you come back up.
Drag down and back up. The counter judges the rep when you return to the top.
Where we drew the depth line
We didn’t pick the line from a textbook. We recorded sets and measured them:
- real push-ups folded the arm 51 to 66 percent;
- deliberate half reps folded it 26 to 33;
- rocking the torso without bending the arms moved it 2 to 4.
Then a fourth group turned up: incomplete reps at 35 to 47 percent. The person doing them called them incomplete, so the line had to sit above them, not between the half reps and the real ones.
The line sits at 44 percent of arm fold. That leaves a gap of only a few points below the shallowest real push-up, and there is no room to widen it: a stricter line started losing real reps.
Moves that looked like push-ups
Two signals stopped most tricks, but not all. Testers tried to break the counter on purpose, and some attempts passed both checks. In one, you lie on your stomach with your hips on the floor and push only your chest up. The arms fold and the shoulders move, just like a real rep.
The difference is the hips. In a real push-up the whole body lowers as one piece, and the hips follow the shoulders about halfway. In that trick they stay on the floor. So the counter now checks that the hips moved with the shoulders. On the recording of that trick the count dropped from 50 to 0, and every honest recording in the set kept its count.
Timing catches the rest. A rep shorter than 0.55 seconds isn’t a rep, and one longer than 5 seconds is a rest in the middle of one.
Every recorded set became a test
Each time the counter got something wrong, we kept the recording. Every one carries a note about what happened and how many reps there really were. There are more than twenty push-up recordings now, along with others for squats, crunches and plank. Some have a correct answer of zero:
- someone lying down, holding a plank and getting up;
- five deliberate half reps;
- eight incomplete push-ups.
Before any change to a threshold ships, the counter replays the recordings and has to land on the right number for every one it is meant to pass. When a fix for one recording breaks another, the fix doesn’t ship.
- Five half reps Expected0 Counted0
- Lying down and getting up Expected0 Counted0
- Eight incomplete push-ups Expected0 Counted0
- Narrow grip, close to the phone Expected5 Counted5