Knurled

Gym & lift log for iPhone. Your training stays on your phone.

Support

Knurled is a workout tracker built around the thing most trackers get wrong: knowing what is actually on the bar. It runs entirely on your phone. No account, no subscription to keep your history alive, no server holding your training.

If something is broken, confusing, or missing, write to me. Knurled is made by one person, so you are emailing the person who wrote the code, not a ticket queue.

Get help

knurledapp@gmail.com

I read every message and usually reply within a few days. If you are reporting a bug, it helps enormously to include your iPhone model, your iOS version, and what you were doing just before it went wrong.

Common questions

Where is my workout data stored?

In a database file inside the app on your iPhone. It is not uploaded anywhere. That means it is private by default, and it also means the data lives and dies with the app on that device — see the backup question below.

How do I back up or move my history to a new phone?

Export it. In Settings, use the export option to produce a CSV of your training history, then send it to yourself, drop it in Files, or keep it anywhere you like. The file is yours and it is plain text you can open in any spreadsheet.

If your iPhone backs up to iCloud or to a computer, the app's data is included in that device backup and will restore onto a new phone along with everything else. Exporting is the belt-and-braces version, and it is worth doing before you delete the app for any reason.

I deleted the app and my history is gone. Can you recover it?

No, and I want to be straight about why. Nothing is stored on a server, so there is no copy of your data anywhere except your device. Deleting the app deletes the database with it. Restoring from an iPhone backup made before the deletion is the only route back.

This is the trade for not having an account: nobody can read your training, and nobody can retrieve it for you either.

Does Knurled need an internet connection?

No. Every feature works in a basement gym with no signal. The only time the app touches the network is to send a crash report if it crashes, and to check for an app update.

Does it sync between my devices?

Not today. Sync needs a server, and a server needs your data on it. If sync arrives later it will be opt-in and clearly described, and this page will be updated before it ships.

The weight on screen doesn't match what I put on the bar.

Check the bar first. Tap the bar name above the loader to confirm you are on the right one — an Olympic bar is 45 lb, but a training bar, a safety squat bar or a trap bar are all different, and the total is bar plus collars plus plates.

Then check whether the movement loads one sleeve or two. A plate-loaded machine with a single horn takes the plates you add and that is the whole load; a barbell takes the same plates on both ends. If a specific exercise is still reading wrong, email me with the exercise name and what you loaded and I will fix it.

Why do the small plates have odd colours?

Because grey on grey on grey is unreadable at arm's length on a gym floor. The 10, 5 and 2.5 are deliberately given distinct colours rather than three shades of the same one, so you can tell the stack apart at a glance and while sweating. It is a legibility decision, not a decorative one.

How do I delete everything?

Delete the app from your iPhone. That removes the database and every workout in it. There is no separate "delete my account" step because there is no account and there is nothing of yours held anywhere else.

Privacy policy

Effective 15 September 2026

The short version

Knurled keeps your training data on your phone. There is no account, no login, and no server that stores your workouts. There is no advertising, no analytics, and no tracking of any kind.

The one thing that leaves your device is an anonymous crash report, and only when the app actually crashes. It contains technical information about the failure. It does not contain your workouts, and it is not tied to you.

What is stored on your device

Everything you enter: exercises, sessions, sets, weights, reps, bodyweight entries, personal records, your equipment and plate settings, and your app preferences. This lives in a database inside the app on your iPhone. It is not transmitted to me or to anyone else.

What leaves your device

WhatWhenWhere it goes
Crash report Only if the app crashes Sentry, a crash-reporting service
Your CSV export Only when you tap export Wherever you send it
Workouts Never —
Identifiers Never —
Usage analytics Never —
Location Never —

Crash reports, in detail

Knurled uses Sentry to report crashes. This is the only third-party service in the app, and it is there for one reason: without it, the first I hear about a bug that only happens on your phone is a one-star review, by which point you have already given up on it.

A crash report contains the technical shape of the failure — where in the code it broke, your iPhone model, and your iOS version. Before anything is sent, the app actively strips it:

  • Your IP address is replaced with a null value rather than recorded, and IP storage is additionally switched off on the service side. Two independent controls, because IP would count as an identifier.
  • Workout content is scrubbed out of the report.
  • Device identifiers are redacted.
  • No user profile, email, or contact information is attached, because the app never has any to attach.

In App Store terms this is declared as Diagnostics → Crash Data, not linked to you, and nothing else. Sentry processes this data on my behalf and does not use it for its own advertising or profiling. Reports are retained for a limited period and then deleted.

What Knurled does not do

  • No advertising, and no ad networks or ad identifiers in the app.
  • No analytics or behavioural tracking. I do not know which screens you open, which exercises you log, or how often you train.
  • No selling or sharing of data, because there is nothing collected to sell.
  • No accounts, no email capture, no newsletter.
  • No social logins or third-party SDKs beyond the crash reporter named above.

If Knurled asks you to rate the app, that is Apple's own rating dialog. Your rating goes to the App Store, not to me, and I never see who left it.

This page

The page you are reading is a single static file. It sets no cookies, loads nothing from any third party, and runs no scripts. Whoever hosts it may keep ordinary web server logs.

Your control over your data

Because your data never leaves your phone unless you send it somewhere, you already hold every control that matters:

  • Access and portability — export your full history to CSV from Settings at any time.
  • Correction — edit or delete any session, set, or exercise directly in the app.
  • Erasure — delete the app. That removes the database and everything in it.
  • Crash reports — if you would like the crash reports associated with your device removed, email me and I will delete what can be identified, though by design they are not linked to you.

If you are in a region with statutory data rights, such as the UK, EU, or California, those rights apply and the routes above are how they are exercised. You may also contact me directly and I will help.

Children

Knurled is a general-audience fitness log and is not directed at children under 13. It does not knowingly collect personal information from anyone, of any age.

Changes to this policy

If what the app does with data changes, this page changes first, and the effective date above is updated. Material changes will also be described in the App Store release notes for the version that introduces them.

Contact

Support, bug reports, privacy questions, and data requests all go to the same place:

knurledapp@gmail.com