Decline

How Decline decides each call

Decline checks each call from a number not in your contacts against your rules and two modes, on your phone. This page covers the order it checks in, how rules match digits, and what it can't do.

What Decline sees

Decline only sees calls from numbers that aren't in your contacts. Once it is your call screening app, Android hands it each such caller's number, or no number for a hidden caller. Calls from your contacts aren't screened; they ring as normal. Decline doesn't read your contacts, call history or messages, and it doesn't hear the call.

The order it checks

Decline checks your allow rules first. If any allow rule matches, the call rings, whatever your block rules say. If not, it checks your block rules, and a match blocks the call. If nothing matched, the two global modes decide. With both modes off, which is how Decline starts, a call that matches no rule rings normally.

  1. Allow rules

    Any allow rule matches: the call rings.

    Allowed
  2. Block rules

    Any block rule matches: the call is rejected or silenced, whichever you chose.

    Rejected or silenced
  3. Modes

    Block hidden numbers and Block all unknown numbers, if you turned them on.

  4. Nothing matched

    The call rings normally.

    Allowed

Rules you've switched off are skipped as if they didn't exist.

Writing rules

Rules match digits only. Decline ignores spaces, dashes, brackets and the plus sign in both the rule and the caller's number. Choose is exactly, starts with, ends with or contains, or write a pattern: * is any run of digits and ? is exactly one, so 555123? matches 5551234 but not 55512345.

The fewer digits a rule has, the more numbers it catches. Contains 900 also catches a number like +91 98 7690 0123. A pattern of just * would block every caller that shows a number; use Block all unknown numbers for that instead.

Country codes and formatting

Decline doesn't add or remove country codes. It matches the digits Android delivers, and the same caller can show up as +91 98765 43210 or 098765 43210. A rule for exactly 9876543210 matches neither, but ends with 9876543210 matches both. For a prefix, include the digits your phone shows, then check it in the test box.

The same rules against the same callers. Digits checked is what Decline compares after dropping the plus sign and spaces.
RuleCaller showsDigits checkedResult
Starts with 140+91 140 999 0000911409990000No match: rings
Starts with 91140+91 140 999 0000911409990000Match: blocked
Is exactly 9876543210+91 98765 43210919876543210No match: rings
Ends with 9876543210+91 98765 43210919876543210Match: blocked
Ends with 9876543210098765 4321009876543210Match: blocked

Hidden and unknown numbers

Block hidden numbers stops calls that arrive with no number, shown as hidden or private. Block all unknown numbers stops every call that shows a number no allow rule covers, and your contacts still ring. The two are separate: block all unknown doesn't catch hidden callers, so turn on both to stop both kinds.

Reject or silence

Rejected calls are declined before the phone rings, and Android still lists them in your phone's call history. Silenced calls aren't declined: the call comes in, but the phone doesn't ring. You pick one action in Settings, and it applies to every block rule and to both modes. Decline starts set to reject.

The test box

The test box runs the same engine as live screening on any number you type. It lists each rule it tried, in evaluation order, marks it matches or no match, and shows the result with its reason. Paste a number from your call history to see why it was blocked, or try a new rule before relying on it.

The log and notifications

Each screened call is saved with the number, the time, the result and the reason, allowed calls included. Tap an entry to allow or block that number in one tap. Blocked-call notifications are silent by default and carry an Allow button. You can make them louder, hide them, or turn them off; screening and logging continue.

If something goes wrong

If Decline can't load your rules or settings, or the check takes longer than 1.5 seconds, it lets the call ring. It doesn't block a call it couldn't check. One damaged rule entry is skipped on its own, so your other rules keep working. If Decline isn't your call screening app, calls ring normally.

Setup and staying on

During setup you make Decline your call screening app in an Android dialog, and on Android 13 and later you allow notifications. Only one app can hold that role, and reinstalling Decline removes it. Decline checks the role each time you open it, and the Home screen shows when it last screened a call.

Some phones' battery managers can delay or stop call screening. If calls stop appearing in Decline's log, these are the steps reported for these phones. Menus vary by version.

PhoneSteps reported
Xiaomi (MIUI, HyperOS)Turn on Autostart for Decline, and set Battery saver to No restrictions.
Huawei (EMUI)In App launch, set Decline to Manage manually and turn on all three switches.
Samsung (One UI)Keep Decline out of Sleeping apps and Deep sleeping apps.
Other brandsExempt Decline from battery optimization.
Pixel and stock AndroidNothing needed.

Inputs and limits

  • Android 10 or later, on a phone that offers Android's call screening role.
  • No spam database: numbers your rules don't cover ring, unless Block all unknown numbers is on.
  • Calls from your contacts aren't screened, so a block rule can't stop a number saved in your contacts.
  • No country-code logic: rules match the digits Android delivers (see Country codes).
  • Block all unknown numbers doesn't block hidden or withheld callers. Turn on Block hidden numbers for those.
  • Only one app can be the call screening app. Choosing another caller ID or spam app, or reinstalling Decline, removes the role, and calls then ring unscreened until you turn protection back on.
  • On some Xiaomi, Huawei and Samsung phones, battery or background limits can stop calls being screened; see the table above.
  • Within allow rules, or within block rules, order only changes which rule is named as the reason, not the result.
  • The log keeps every screened call and has no delete button. Clearing the app's data in Android settings empties it, along with your rules and settings.
  • Decline screens phone calls only. It doesn't read or block text messages.

Write your first rule, then test it.

Get it on Google Play