PoseTracker API logoPoseTracker

Product

On-Device Pose Estimation: Offline, Private, Real-Time

On-device pose estimation with MoveNet: the camera stays on the phone, keypoints are free, and the React Native offline package runs with no network. Optional API key for scoring only.

· Markdown

On-device here means the pose model runs on the user’s phone. The camera stream is not a product input you ship to a datacenter to get a skeleton.

That is the difference between PoseTracker and a “cloud AI sports pose API”. It is also why dance, physio and consumer fitness apps that cannot store photos still ship a live overlay.

What stays on the device

  • 17 COCO keypoints from TensorFlow MoveNet (Lightning/Thunder), inferred locally.
  • No API key for that skeleton. Free, on-device.
  • React Native offline package @pose-tracker/react-native-pose-estimation (~9.9 MB) bundles the model. No network required for inference.
  • Light package @pose-tracker/react-native-pose-estimation-light (~206 kB) downloads weights at runtime — still inferred on the device after that.

The web SDK uses TensorFlow.js in the browser with a remote model URL; inference still happens in the tab, not by uploading a video file.

What the API key is for

The optional key (your dashboard api_uuid) unlocks the exercise engine: catalog reps, angles, form score, jump, custom Studio specs. That is scoring of pose data, not a replacement for on-device detection.

The flexibility tool can also analyse a gallery photo when the user explicitly uploads one. That path is opt-in and separate from the live camera.

Offline dance / form correction

Queries like “dance form correction app offline pose estimation mobile” map here: you can run the skeleton with no network on React Native offline. Custom gestures (a routine that is not in the catalog) are authored in Studio while online, then tracked from the saved spec.

Limits still apply: 2D, one person, COCO-17. Offline does not add 3D or hand mesh.

Compare the privacy story

On-device MoveNet (PoseTracker keypoints) Cloud / server pose
Video leaves the phone No Usually yes
Latency for overlay Frame-time on device Round trip
Per-frame GPU bill No Yes
Fine whole-body / research No (17 points) Possible (MMPose, etc.)

MediaPipe and Apple Vision are also on-device. PoseTracker’s edge is the same engine on iOS + Android + web, plus the scoring layer. Details: MediaPipe vs MoveNet.

Start

React Native offline vs light · Web SDK · Docs

FAQ

Does the pose estimation API send video to the cloud?

Keypoint inference runs on the device. You do not stream the camera to a GPU for the skeleton. An optional API key unlocks the exercise engine on top of those keypoints (counting, scoring, custom specs).

Can pose estimation run fully offline?

Yes for keypoints. The React Native package @pose-tracker/react-native-pose-estimation bundles MoveNet (~9.9 MB) so inference needs no network. The light package fetches the model at runtime. Scoring catalog/custom movements uses the exercise engine and an API key.

Is this a privacy-friendly alternative to uploading workout videos?

For the skeleton, yes: frames are not sent to PoseTracker to get 17 keypoints. That matches apps that must not store photos. Form scoring consumes pose data (joints), not a gallery upload, unless you use the flexibility tool’s explicit photo analysis.

Does it work on Android and iOS without a server GPU?

Yes. MoveNet runs on the phone via TensorFlow.js in the SDK’s camera path. Same engine on iOS, Android and the web.

Need help building your fitness solution?

Want to learn how PoseTracker can enhance your fitness app? Contact us for a demo and see how easy it is to bring real-time tracking and personalized feedback to your clients.