By downloading or using StepLog (the "App"), you agree to these Terms of Service. If you do not agree, do not use the App. The App is published by an independent iOS developer (Apple Developer Team ID ZM8LF8494F); references to "we," "us," and "our" mean that developer.
StepLog is a personal records organizer for patients facing step therapy — the insurance policy that requires you to fail traditional medications before being approved for newer ones. You enter information about your chronic conditions, medication trials, failure reasons, step-therapy cycles, insurance plans, and provider documents; the App helps you organize that information and (in the Pro tier) generate PDF reports for your own use, including a Step Therapy Defense Pack that compiles a multi-year evidence pack for prior-authorization appeals.
The App is free to download and use. The free tier includes 1 chronic condition, up to 20 medication trial entries with all 14 failure-reason categories, the full Step Therapy Cycle Tracker, a basic chronological timeline view, and Face ID / Touch ID app lock. Records are stored on your device only. Apple’s standard device backup (iCloud Backup or iTunes / Finder) may support recovery if a usable backup completes.
Device-backup contents and recovery depend on your system settings, a successfully completed usable backup and Apple’s restoration process; enabling backup alone does not guarantee recovery of every record or original file. We cannot retrieve or restore your device backups.
For StepLog, new purchases currently use these Pro options:
Before you confirm payment, Apple displays the product, current localized price, billing period and any eligible introductory offer. Apple's confirmation controls the purchase terms. Older installed versions may show earlier purchase options; payment is processed by Apple.
Existing Monthly subscriptions. Monthly is no longer offered to new purchasers. StepLog continues to recognize verified, active historical Monthly entitlements. Changing the available purchase options does not cancel or convert an existing subscription; manage it in your Apple Account settings.
A Lifetime purchase grants StepLog Pro access without a scheduled subscription expiry. A refunded or revoked purchase no longer provides access. Use Restore Purchases with the Apple Account used for purchase to recheck a restorable Lifetime entitlement.
The subscription renews automatically unless canceled. Apple may charge for renewal within 24 hours before the current period ends. To prevent the next charge, cancel at least 24 hours before the period or trial ends. Manage or cancel in iPhone Settings > [your name] > Subscriptions; Apple provides cancellation instructions. Deleting StepLog does not cancel a subscription.
Use Restore Purchases while signed into the purchasing Apple Account to check verified eligible access. Pending or unverified transactions do not establish paid access. Refund requests are handled through Apple under its policies and applicable law. Nothing here limits non-waivable consumer rights.
An introductory free trial is available only when Apple confirms eligibility for the subscription group and an applicable offer exists. The updated paywall checks eligibility before presenting trial benefits; unknown or ineligible accounts use ordinary subscription language. Apple’s purchase sheet confirms the actual duration, localized price and billing period before payment. Unless canceled at least 24 hours before the trial ends, the subscription converts to the displayed paid plan. Trial access may end when canceled and follows Apple’s verified expiry or revocation. Older installed app versions may display earlier offer wording until updated.
StepLog stores all records on your device only. The App does not provide iCloud sync, a CloudKit archive, or developer-operated record storage. User-chosen export destinations and Apple device backups are separate services. Apple’s standard device backup (iCloud Backup or iTunes / Finder) may support recovery if a usable backup completes, which may include local App data depending on settings and successful completion — that backup is operated by Apple under your Apple ID, not by us. Pro users can additionally export the supported structured records as a JSON file from Settings > Data > Export full archive for portable offline backup.
Pro provides the following features. The behavior described here is binding on us — if a future App update materially changes any of these descriptions, we will revise this section.
The following capabilities are universal Free (never gated):
The App is provided "AS IS" and "AS AVAILABLE" without warranties of any kind, express or implied, including merchantability, fitness for a particular purpose, accuracy, or non-infringement. Nothing in these Terms excludes or limits liability, statutory guarantees, refund rights or other consumer protections that cannot legally be waived. To the maximum extent permitted by law, our aggregate liability arising out of or relating to the App is limited to the amount you paid us, through Apple, for the App in the twelve months preceding the claim. We are not liable for indirect, incidental, special, consequential, or punitive damages, including lost data, denied prior authorizations, denied insurance claims, lost biologic or specialty-drug coverage, disease progression, or any clinical or financial outcome. Reports generated by the App are tools for your use; we do not guarantee that any clinician, insurer, attorney, patient advocate, pharmacy benefits manager, or government agency will accept them.
Your use of the App is also governed by Apple's standard End User License Agreement (EULA) for licensed applications, available at https://www.apple.com/legal/internet-services/itunes/dev/stdeula/. In the event of a conflict between these Terms and the Apple EULA, these Terms govern as between you and us; the Apple EULA governs as between you and Apple.
We may update these Terms from time to time. Material changes will be surfaced in the App on next launch. Continued use of the App after a change constitutes acceptance.
These Terms are governed by the laws of the United States and the State of California, without regard to conflict-of-law principles. Subject to mandatory local consumer rights and available forums, disputes may be brought in courts located in California; either party may seek injunctive relief in any court of competent jurisdiction to protect intellectual property rights.
Archive JSON includes structured records and document-path metadata, but not the original file binaries. Keep original files separately; a metadata restore cannot recreate them from paths alone. A pre-import local copy protects only what that saved archive contains, and is separate from copies you already exported.
Deleting a condition cascades to its medication trials and step-therapy cycles after a successful save. Independent insurance-plan and document-vault records remain; separately stored original files are not guaranteed to be removed by that cascade. There is no Recently Deleted. Full-archive import validates the selected file. Merge updates supported fields for matching identifiers, adds missing records and can skip content-equivalent records with different identifiers; it does not simply skip every matching identifier. Replace removes the supported destination records first. For a nonempty destination, a successful local JSON safety copy is required before import proceeds. A failed import restores its affected records while retaining unrelated pending edits. Undo replaces the supported record collections using the saved metadata copy, including replacing later edits and newly added records after import; it cannot reconstruct missing original files. Export current records separately before Undo if needed. Safety copies and exports can retain data after active records are deleted.
Support and legal inquiries: captainlongevity@gmail.com
The updated App pauses the normal record interface if its persistent database cannot be opened. New recording and editing through that interface are blocked. The App keeps the existing database and attachment files without opening a replacement archive. Database-dependent startup work in that interface is paused; previously scheduled reminders, widget snapshots or independent copies may remain.
Check available device storage, close and reopen the App, and contact support before deleting or reinstalling it. This recovery screen is not a backup, a repair guarantee or an automatic restoration of missing records. Older installed versions may behave differently until updated.
The updated App checks saving before completing a new condition, trial, cycle, plan, onboarding record or document record. Detached creation forms are inserted as a checked operation, and canceling a new form does not roll back other pending edits. Existing bound editors keep their ordinary live editing and autosave behavior; Cancel is not a guaranteed undo of saved or pending edits. If saving current edits fails, a visible notice provides retry. Unsaved form text, scan images and pending edits can remain only in memory and can be lost if the App closes before saving; they are not a backup.
A scan is a generated local PDF copy, without a guarantee of original image metadata or original-quality recovery. If the PDF file is written but its document record cannot be saved, the updated editor keeps that known file and scan available for Retry or an explicit Discard rather than creating a new copy on each retry. A successfully saved scan is independent of later Cancel in the trial editor. Discard can leave a queued local file when cleanup fails.
Deleting a document first records its known vault filename in a local cleanup queue and then checks the database deletion. A failed queue preparation or database save blocks completion. Only after the database change is committed does cleanup check all current saved document references before removing an unreferenced, app-created vault file. A shared file is kept. Cleanup does not scan or recursively delete unknown files and does not follow symlinks. Failed known-file cleanup retains the file or queued filename for retry on App launch, foreground or the visible retry control. A saved database deletion is not proof that its original file, an export, a pre-import safety copy or a device backup was erased. Original system media is separate.
Deleting a condition still cascades to its trials and cycles; independent insurance plans and document-vault records and files remain, including a document whose old trial link no longer resolves. Archive Replace, metadata Undo and exact-duplicate cleanup do not purge original vault files, prior exports, preferences or older backups. A document-path reference does not recreate missing original bytes.
Amount fields keep existing Decimal precision. Incomplete or invalid temporary numeric text remains in the field without replacing the last valid amount with zero or a numeric prefix; finish or clear it before Save. This is input validation, not a medical, billing or insurance determination.
Full-archive import validates supported versions, identifiers and relationships. Merge updates supported fields on matching IDs, adds missing records and can skip equivalent content under other IDs. Replace changes the supported condition, trial, cycle, plan and document collections. A nonempty destination requires a readable local JSON safety copy first; that copy and the in-memory Undo snapshot contain supported structured records and file paths, not original scan binaries or every setting. Failed import or Undo retains the affected original graph and pending edits. Existing scans can remain even when no active document row references them.
The separate treatment-file exchange exports selected failure records and imports the compatible legacy JSON format. Import matches a condition by normalized name or creates one, then adds the incoming failure records. It does not deduplicate repeated imports, import an appeal outcome or connect accounts automatically. The file format remains compatible; user-directed sharing can send sensitive treatment information to the selected destination. Review its contents and the recipient before sharing. Neither JSON format is a password-encrypted archive or a guarantee of recovery after reinstalling the App.