Contacts, incoming caller numbers, allowlist entries, settings, and screening history are processed locally on your device. NobodyCalls does not upload or sell them.
Who operates NobodyCalls
NobodyCalls is developed and published by Yanuar Arifin. For privacy questions, email halo@yanuar.id.
What NobodyCalls does
NobodyCalls uses Android's CallScreeningService to decide whether an incoming call should ring. When protection is active, calls from contacts and allowlisted numbers are allowed. Calls from unknown numbers are silenced by default, or rejected if you choose that setting.
If Android does not provide a usable caller number, if the local contact index is not ready, or if screening fails, NobodyCalls lets the call through rather than risk blocking someone you know.
Data handled on your device
- Contacts: read to build a local index for matching incoming calls.
- Contact index: normalized phone numbers, display names, and contact IDs used for fast local matching.
- Incoming caller number: compared locally with the contact index and allowlist.
- Allowlist: numbers and optional labels you add so they can ring even if they are not saved as contacts.
- Screening history: decisions NobodyCalls made, including the number, decision, reason, and time.
- App settings: protection, pause time, unknown-call action, and contact-index status.
NobodyCalls does not read the system call log, SMS, location, microphone, camera, photos, files, or installed-app list.
Permissions and Android roles
Contacts
The READ_CONTACTS permission is required to check whether an incoming number belongs to someone in your contacts. Contacts are read locally and are not uploaded.
Call screening
Android requires you to choose NobodyCalls as the call-screening app before it can screen incoming calls. You can remove this role or revoke contact access at any time through Android settings.
Notifications
On supported Android versions, NobodyCalls asks for notification permission only to deliver the optional weekly recap. Denying it does not affect call screening.
Local storage, backups, and retention
NobodyCalls stores its local database inside the app's private storage. Android cloud backup and device-transfer backup are disabled for NobodyCalls app data.
Data remains until you take a relevant action, such as:
- clearing local screening history;
- removing a number from the allowlist;
- revoking contacts permission and rebuilding the index;
- resetting app storage; or
- uninstalling the app.
Optional support payment
Every functional feature in NobodyCalls is free. You can optionally make a one-time support payment through Google Play Billing. It adds only a cosmetic Supporter badge and never changes call-screening behavior.
Google Play processes the payment and may receive standard billing data such as a purchase token, device information, and IP address. NobodyCalls does not receive your payment details and never sends contacts, phone numbers, allowlist entries, or screening history through the billing path.
Third-party services
NobodyCalls has no app backend, advertising SDK, analytics SDK, crash-reporting SDK, or caller-ID database. Google Play Billing is used only for the optional support payment described above.
Your choices
- Turn off or pause protection inside the app.
- Choose whether unknown calls are silenced or rejected.
- Clear local screening history.
- Remove allowlisted numbers.
- Disable the optional weekly recap.
- Revoke contacts permission or the call-screening role in Android settings.
Children
NobodyCalls is not directed to children and does not knowingly collect personal data from children.
Changes and contact
We may update this policy as the app changes. Material updates will appear here with a new date. Questions can be sent to halo@yanuar.id.