WhatsApp Number Checker — Live Registration Check
Pricing
from $4.30 / 1,000 number checkeds
WhatsApp Number Checker — Live Registration Check
Check if phone numbers are registered on WhatsApp. Bulk input, E.164 validation, timestamped results. First 3 checks free.
Pricing
from $4.30 / 1,000 number checkeds
Rating
0.0
(0)
Developer
Enrich-CRM
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
2 days ago
Last modified
Categories
Share
Find out in real time whether a phone number is registered on WhatsApp. One clear true/false answer per number, in bulk.
Powered by Enrich-CRM · Every result timestamped (checked_at) · EU servers (Paris) · GDPR-minded
What does this Actor do?
Give it a list of phone numbers and it tells you, for each one, whether the number currently has a WhatsApp account. Numbers are normalised to international format before the check, duplicates are removed, and every number produces exactly one row in the dataset.
The check is made live at the time of your run, so the answer reflects the number's current state rather than an old database snapshot.
Use cases
- Clean a contact list before a WhatsApp outreach: keep only the numbers that can actually be reached
- Verify the phone numbers your own customers typed in a sign-up or checkout form
- Route leads: WhatsApp follow-up for registered numbers, a call or SMS for the others
- Add a "reachable on WhatsApp" flag to CRM records
Input parameters
| Parameter | Description | Example |
|---|---|---|
phones | List of phone numbers to check. Required unless phone is given. | ["+33612345678", "+14155552671"] |
phone | A single phone number (alternative to phones). | +33612345678 |
apiId | (Optional) Your Enrich-CRM API key, for existing Enrich-CRM customers. Leave empty to use the built-in key (Apify charges apply). | YOUR_KEY |
Phone number format (E.164)
Numbers must be in international E.164 format: a +, the country code, then the national number without the leading zero, for example +33612345678 (France) or +14155552671 (USA). Between 7 and 15 digits in total.
The Actor tidies your input before checking: spaces, dots, dashes and parentheses are removed, and a leading 00 is read as +. So 00 33 6 12 34 56 78 and +33 6.12.34.56.78 both become +33612345678. Anything that still does not look like a phone number is reported as an error row and is never charged.
Identical numbers (after tidying) are checked once per run.
Input example
{"phones": ["+33612345678", "+14155552671"]}
Output example
One row per unique number, saved to the default dataset:
[{"phone": "+33612345678","exists": true,"checked_at": "2026-10-27T10:00:00Z","correlationId": "5b1f0c2e-0000-0000-0000-000000000000","_success": true,"_input": "+33612345678"},{"phone": "+14155552671","exists": false,"checked_at": "2026-10-27T10:00:01Z","correlationId": "5b1f0c2e-0000-0000-0000-000000000001","_success": true,"_input": "+14155552671"}]
A number that cannot be processed produces an error row instead:
{"_success": false,"_input": "12ab","phone": "12ab","_error": "Invalid phone number: expected international E.164 format, for example +33612345678."}
Response fields
| Field | Type | Description |
|---|---|---|
phone | string | The number as checked, normalised |
exists | boolean | true if the number is registered on WhatsApp, false if not |
checked_at | string | Time of the live check (RFC 3339, UTC) |
correlationId | string | Reference of the check, useful for support requests |
_success | boolean | true when the check was answered, false for an error row |
_input | string | The value exactly as you provided it |
_error | string | Only on error rows: what went wrong |
Pricing
| Model | Cost |
|---|---|
| Free trial | First 3 results free on this Actor, per Apify account |
| Number checked | $0.0072 per number on the Apify Free plan, down to $0.0029 on higher Apify plans — charged for every answered check, whether the number is on WhatsApp or not |
| Run start | $0.00005 per run |
| Existing Enrich-CRM customers | Enter your apiId: checks use your Enrich-CRM credits and are not charged through Apify |
A check is charged once it returns a definitive answer (
existsistrueorfalse). Invalid numbers, duplicates and technical errors are never charged.
Use with Clay, Zapier, Make, n8n or the API
Every run is a standard Apify run, so it plugs into the usual tools through the Apify integrations:
- Clay, Zapier, Make, n8n — use the Apify integration of your tool, run this Actor with a
phoneslist, then read the dataset rows (phone,exists). - API and webhooks — start a run with the Apify API, wait for it to finish (or use a webhook), then fetch the dataset items as JSON, CSV or Excel.
- Schedules — re-check a list periodically with an Apify schedule.
Good to know
- The answer says whether a WhatsApp account exists for the number. It tells you nothing else about the person.
- Large lists are processed one number at a time. If a run is about to hit its time limit, the Actor stops cleanly, keeps the rows already produced and tells you how many numbers were left, so you can run those separately.
- Temporary capacity errors are retried automatically.
Responsible use
A phone number is personal data under the GDPR and similar laws. Use this Actor only where you have a lawful basis, for example verifying the contact details your own customers gave you. Respect opt-outs and do not use the results for unsolicited or abusive messaging. You are responsible for complying with the laws and the terms of service that apply to you.
Not affiliated with WhatsApp or Meta.