The short version: CaseSignal has no accounts. Your USCIS sign-in and your case data stay on your device. Two optional features talk to small servers of ours: Track by receipt sends a receipt number you type so we can ask USCIS for its status, and Share my timeline, if you turn it on, sends an anonymized copy of your case's steps to improve wait-time estimates. Neither one sends your name, your USCIS login, or anything that identifies you.
What stays on your device
Your USCIS session. When you sign in to my.uscis.gov inside the app, the resulting session cookie is stored in the iOS Keychain on your device.
Your USCIS email and password, only if you choose to save them for sign-in autofill. They are stored in the Keychain and used solely to prefill the USCIS sign-in form. You can clear them in Settings.
Your case data — receipt numbers, statuses, event history, appointment notices, and the names USCIS returns. Cached on your device so the app works offline and can show the widget.
Notifications are generated on your device by comparing the case data it already has. No push service is involved and no notification content leaves your phone.
Where the app connects
The app makes network requests to these places, and no others:
my.uscis.gov — your own USCIS account, using your session, to read your cases. This is a direct connection between your device and USCIS. Your use of that site is governed by USCIS's own policies.
mycase-data.pages.dev — a static file host (Cloudflare) from which the app downloads public reference files: community wait-time statistics, the monthly visa bulletin dates, and USCIS's published per-office workload counts. These are plain downloads. The app sends no case data, no identifiers, and no account information with them. As with any web request, the host receives technical details such as your IP address and the time of the request; we do not use these to identify anyone and we do not build profiles from them.
casesignal-api.biialab.workers.dev — only when you use Track by receipt. The app sends the receipt number you entered; our server asks USCIS's official Case Status API for that receipt and passes the answer back. The answer is cached for up to 15 minutes so repeated checks don't each hit USCIS, and is not otherwise stored. The receipts you track this way are kept on your device.
casesignal-timelines.biialab.workers.dev — only if you turn on Share my timeline. See below.
Optional: Share my timeline
Off unless you turn it on in Settings. When it's on, the app sends an anonymized record of each case you track, so we can work out real processing times — including per USCIS office, which no public source provides.
What a record contains: the form type (for example I-485); the month you filed (not the day); whether it's premium processing; the employment category and country you selected in the app, if any; the three-letter code of the USCIS office handling the case; your receipt's block — its first 8 characters, such as IOE09345, which about 100,000 other cases share; and each step USCIS recorded — its code and how many days after filing it happened.
What it never contains: your full receipt number, your name or your attorney's name, your USCIS login, the text of your case status, your priority date, or any exact date.
Each case is filed under a random code created on your phone. It is not derived from your receipt number, so neither we nor anyone with access to the data can tell whose case a record is. Our server rejects any record that doesn't match this exact shape, and it does not store your IP address; the only date it keeps is the day a record was last updated. Records are never shown to other users; only aggregated statistics (such as "median days to approval") are published back into the app.
You can see the exact record before anything is sent: Settings → Share my timeline → See exactly what's sent.
What we do not do
We do not sell your data. No user information is sold, traded, or exchanged for profit or any other monetary transaction, to anyone, ever.
No third-party disclosure without your active consent. Third-party use or disclosure of user information is prohibited for any reason without your active, informed consent.
No analytics, no advertising, no third-party tracking SDKs. The app contains none.
No CaseSignal account or login, and no database of users — the only thing we store is anonymized timelines, from people who chose to share them.
No tracking across other apps or websites.
Permanently deleting your data
You can permanently delete everything CaseSignal holds about you, at any time, without asking us:
Delete the app from your device (touch and hold the icon, then Remove App → Delete App). This permanently removes all cached case data, any stored USCIS session, and any saved credentials.
Or, to clear individual items while keeping the app: open Settings and use Log Out to remove the stored session, Clear in the sign-in autofill card to erase saved credentials, and remove a tracked case to delete it and its cached history.
Deletion is immediate and permanent on your device.
Shared timelines: turning Share my timeline off deletes every record your phone shared from our server, and removing a tracked case deletes that case's record. If your phone is offline at the time, it keeps retrying until the deletion goes through. If you delete the app before turning sharing off, your phone loses the random codes it needs to ask for deletion — and since the records carry nothing that identifies you, we can't find them for you either. So turn sharing off first.
Children
CaseSignal is not directed at children and does not knowingly collect information from anyone under 13.
Changes
If this policy changes, the updated version will be posted on this page with a new date.