A camera squat counter works by reading your body's joint positions from the video feed and watching one angle in particular: the angle at your knee, formed by your hip, knee and ankle. When that angle closes past a threshold and then opens again, that is a rep. Everything else — the setup, the failure modes, the reps it refuses — follows from that one measurement.
Disclosure, up front: pushup.quest is published by the makers of Pushup RPG, a free camera counter for push-ups and squats on iPhone and Android. The specific numbers below are our own detector's, because they are the ones we can state exactly rather than guess at. Other camera apps use the same general technique with different thresholds, and almost none of them publish theirs.
What the camera actually measures
On-device pose detection returns an estimated position for each major joint, several times a second. A squat counter does not "see" a squat; it watches the hip-knee-ankle angle rise and fall and applies rules to decide which of those movements was a rep.
In our detector, the gates are these:
| Gate | Threshold | What it rejects |
|---|---|---|
| Depth | Knee angle must reach 105° or less — roughly parallel or deeper | Quarter squats. A shallow bob that stops around 115–119° does not count. |
| Coming back up | The knee must return to 145° after a valid bottom | Sinking down and staying there. The rep completes on the way up, not at the bottom. |
| Time under | A rep may last at most 5 seconds | Resting in the bottom position, or crouching to pick something up. |
| Spacing | At least 0.6 seconds between counted reps | Bouncing fast enough that the pose estimate cannot resolve separate reps. |
| Hips move | The hips must actually drop during the rep, independently of the knee | Bending one leg while the torso stays still. See below — this one has a story. |
| Feet planted | Ankles may drift at most 0.45 shoulder-widths during a rep | Walking. Specifically: propping the phone, walking back to your spot, and collecting a free rep. |
Why the hips are measured separately
Reading the knee angle alone turns out not to be enough, and we know that because a player found the hole by accident while stretching in August 2026: bending one leg up and down, heel toward the backside, counted as squats.
The reason is unglamorous. The detector takes the more-bent of your two knees as the depth signal, so a single-leg curl clears the depth gate on its own — and the feet-planted rule measures the midpoint between your ankles, which one lifted leg moves only half as far. Neither gate caught it.
The fix is a floor on hip movement rather than a check that both knees move together. That distinction matters: a symmetry rule would refuse honest reps from anyone whose second leg drifts out of frame, and on a camera detector, wrongly refusing a real rep is the worse failure. The floor only asks whether your hips moved at all — bending a knee that far while standing on it must lower you, so zero hip travel means the leg is not carrying your weight. A real squat clears it several times over.
The depth number is the one people argue with, so it is worth being plain about it: 105° was chosen because a looser threshold let shallow stationary bobs through. If your reps are being refused, the overwhelmingly likely cause is depth, not the camera.
Squats are not judged the way push-ups are
This surprises people who used a camera counter for push-ups first. Two things that can never reject a push-up can reject a squat:
- Timing. For push-ups, tempo is measured but only ever as a bonus — a rushed push-up still counts. For squats, reps closer together than 0.6 seconds are not counted at all. Timing is a hard gate on one movement and not the other.
- Foot movement. A push-up has no equivalent rule. A squat does, because standing up and walking is the exact shape of a phantom rep.
If you have been counting push-ups happily and your squats start getting refused, that difference is usually why.
Setting up so the camera can actually see you
Camera counting has one real cost compared with a watch or a tap counter: you have to place the phone. What it buys you is a rep that was checked rather than asserted.
- Get your legs in frame. The knee angle is the measurement, so the camera needs to see hip, knee and ankle. Standing the phone against a wall a couple of metres away, roughly at knee-to-hip height, is usually enough.
- Face the camera or stand side-on. Either works, as long as the leg joints are not hidden behind each other for the whole rep.
- Stay in one place. The foot-movement rule means drifting across the room mid-set will cost you reps.
- Light in front, not behind. Backlighting a phone camera is the fastest way to make pose estimation unreliable, in any app.
If the legs are never visible during a rep — a common failure when the phone is too close or too low — our detector falls back to tracking how far your hips drop instead. It is a fallback, not a preference; getting the legs in frame is better.
What we cannot tell you
Whether specific squat variations register is untested. The detector reads knee angle, so it is reasonable to expect that any variation reaching 105° with planted feet would count — a goblet squat, a wide stance, an air squat. But we have not measured that, and a plausible inference is not a result. Jump squats in particular combine a fast cadence with feet leaving the ground, which is the shape of two different rejection rules, and we have not tested them.
We would rather say that than publish a compatibility table we made up.
Camera counting versus the alternatives
Camera pose detection is not automatically the right answer. It is the only method that can check your depth, and it is the wrong choice if you cannot place a phone where it can see you. A wearable counts from wrist or head motion and needs no setup at all, but cannot know how deep you went. A tap counter is perfectly accurate about what you tell it, and tells you nothing you did not already know.
We compare the actual apps in each category, including the ones we would send you to instead of ours, in best apps that count squats.
If you are training both movements
Squats and push-ups load almost nothing in common, which is the reason to bother with both. Our own app keeps their records entirely separate — squat totals, XP and leaderboards never pool with push-up numbers — because a combined number would let leg volume flatter an upper-body figure and make both meaningless. Whether two movements are enough on their own is a fair question, and we take it seriously in are pushups and squats enough.
Squats are generally well tolerated, but knee or hip pain that is sharp rather than effortful is a reason to stop the set and see a clinician, not something to train through.