A number filter takes a big list of phone numbers and keeps only the rows that pass your rules. The rules can be technical (valid format, not a duplicate), channel-based (registered on WhatsApp or Telegram) and policy-based (has valid consent, has not opted out). The output is a smaller, cleaner file that you can actually use.
Most guides cover only one of those layers. Below is the full sequence, in the order that wastes the least money.
The seven-step number filter workflow
1. Export with context
Export the number, country, where it came from, the date the person opted in and the exact channel they agreed to. Without context a clean list is still risky to use.
2. Normalise to international format
Strip spaces, brackets and dashes, convert a leading 00 to +, add the country code and drop the national trunk prefix. Numbers whose country you cannot establish go into a review file instead of being guessed.
3. Deduplicate after normalising
“(415) 555-2671”, “415-555-2671” and “+1 415 555 2671” are one person. If you deduplicate raw text first, you will pay to check, and later message, the same person more than once.
4. Remove impossible numbers
Wrong length, impossible prefixes and test patterns can never receive anything. Removing them is free because no lookup is needed.
5. Filter by channel
This is where a messaging number filter earns its price. If you plan to reach people on WhatsApp, run the survivors through a WhatsApp filter and keep the registered numbers. Use SMS or email for the rest.
6. Apply consent and suppression lists
Valid format and an active account do not mean you may contact the person. Subtract opt-outs, complaints and any do-not-contact list that applies to you as the last step before sending.
7. Export three files, not one
- Send: opted-in, reachable numbers.
- Suppress: invalid, duplicate or opted-out numbers (keep this so they do not return on the next export).
- Review: anything ambiguous that needs a person to decide.
Number filter vs number checker
People use both words for the same job, and the difference is mostly in the output. A checker gives a status per row. A filter turns those statuses into a shorter list. We explain this in more detail in WhatsApp number checker vs filter.
How much does filtering save?
It depends on your list. A list gathered over years from forms, events and old CRM exports usually contains more dead numbers than a list collected last month. Rather than guess, run a small sample, count the share that fails and multiply by what each failed message costs you. If you pay per message or per credit, the filter often pays for itself on the first run. On WaleadGoal a 10,000-number pack starts from $5, so a test on a sample costs little.
Common number filter mistakes
- Filtering before normalising, which leaves duplicates in.
- Treating “unknown” results as bad numbers and deleting them. They are missing data; re-check later.
- Mixing countries in one file without telling the tool which country the numbers belong to.
- Keeping the filtered file forever. Lists age; filter again before a new campaign.
What WaleadGoal does (and does not do)
WaleadGoal is a consent-based number filter and checker. You register for free, add credits (a 10,000-number pack starts from $5; 50K and 100K packs are available inside Add Balance and cost less per number), upload a list you already have permission to contact, and see which numbers are live. Credits are per service, so WhatsApp credits are used for the WhatsApp filter and other checkers have their own balance. It is a checker, not a sender: you do not need the WhatsApp Business API, and you message your opted-in contacts with your own tools afterwards.
It does not sell or supply contacts, it does not scrape, and it does not promise 100% accuracy. Spam and unsolicited messaging are banned and you stay responsible for valid opt-in on every number you upload. See the User Guide for the exact steps, or go back to the homepage for current prices.