Privacy
Last updated August 2026
The short version
PushPact doesn't have accounts, doesn't run analytics, and doesn't show ads. Everything you log — reps, level, target, streak — is stored only in a local database on your phone. Nothing is sent anywhere unless you turn on the optional Pact feature, and even then, only a small, specific set of numbers is shared with the one person you paired with.
What's stored on your device
Your rep counts, level, daily target, and streak history live in a local SQLite database inside the app. This data never leaves your phone unless Pact is enabled. Uninstalling the app deletes it. There's an in-app "Reset History" option that deletes it immediately, without uninstalling.
What the optional Pact feature shares
Pact is off by default. If you turn it on to pair with a partner, the app sends the following to a small Cloudflare Worker that relays data between the two paired devices:
- The display name you type in (not a real identity — any name you choose)
- Today's date and rep count, and your current streak
- Your rolling 7-day and 30-day totals, broken down by pushup level
That's the entire set. No location, no contacts, no photos, no device identifiers beyond a randomly generated pairing token. Your partner sees the same set of numbers about you, and you see theirs — nothing more.
What we don't do
- No account or sign-up, ever
- No analytics SDKs or crash-reporting third parties
- No advertising, no ad networks, no ad identifiers
- No selling or sharing data with anyone beyond the one Pact partner you explicitly choose
Leaving a Pact
Tapping "Leave Pact" deletes your snapshot from the relay immediately. If your partner also leaves or you're the only member left, the pairing record itself is deleted.
Questions
If anything here is unclear, or you've found a way this doesn't hold up, email shankscodes12@gmail.com.