Guides

Bulk WhatsApp number check for Bangladeshi customer lists (+880)

Check a Bangladeshi customer list for WhatsApp: turn 01X, +88 0 and Bengali-digit cells into +880, dedupe, get a free estimate, and follow the 2026 data law.

By Published 13 min readHow we research and fact-check

On this page

To check a list of Bangladeshi numbers for WhatsApp, convert every row to E.164 (+8801…), remove duplicates, upload the file as a bulk job with the whatsapp check, read the free estimate, and download one answer per number: registered, not registered or unknown. Bangladeshi mobiles have a simple shape, 01X plus eight digits at home and 10 digits after +880, but lists from Bangladesh carry three spellings that break naive scripts: +88 01X…, numbers typed in Bengali digits, and long numbers a spreadsheet has turned into 8.80E+12. Check only numbers your customers gave you, with a lawful basis under the Personal Data Protection Act 2026, and never use the answers to find new people to message.

This guide covers what is specific to Bangladesh. The general flow is in our bulk WhatsApp number check guide, and the numbering plan, operator codes and porting rules are in our Bangladesh phone number format guide. Facts are as of 7 November 2026, and every price below carries its date. This is general guidance, not legal advice.

How do you format Bangladeshi numbers for a WhatsApp check?

Use the international form: +880, then the 10-digit number without its leading 0. A Bangladeshi CRM export rarely looks like that. These cells can all be the same customer:

Cell in your fileWhat happenedFix
017XX-XXXXXXNational format, as dialled at homeDrop the 0, add +880
+880 17XX XXXXXXInternational, with spacesRemove the spaces
+88 017XX-XXXXXX+88 in front of the full national numberNothing to fix: +88 + 01… is +8801…
88017XXXXXXXXInternational without the plusAdd +
00880 17XX XXXXXXDialled from abroad with 00Replace 00880 with +880
17XXXXXXXXThe leading 0 was dropped by a spreadsheetAdd +880
০১৭XX…Typed in Bengali digitsConvert to 0–9 first
8.80171E+12A spreadsheet stored the number as a value and shows it in scientific notationCan't be fixed: re-export the column as text

The +88 row is the Bangladeshi habit to know. Many people learned the number as 01X… and the country code as +88, so they write +88 01X…. Joined up, that is exactly +8801X…, the correct form. A script that treats that 0 like the (0) in +92 (0)3… and deletes it produces +8817…, a number with a digit missing.

Bengali digits are the second trap, and they fail silently. In our test on 2026-11-07, libphonenumber-js 1.13.13 returned no number at all for a mobile typed in Bengali digits. It read the same number in Urdu digits without help, so don't assume one script's behaviour from another's. Python's phonenumbers handled Bengali digits when we tested it for our format guide, but the converter below doesn't rely on that.

This converter handles the spellings above and returns null for anything that isn't a valid Bangladeshi 01X mobile:

JavaScript
import { parsePhoneNumberFromString } from "libphonenumber-js/max";

/** One Bangladeshi list cell → E.164 mobile (+8801…), or null. */
export function toE164Bd(raw) {
  let s = String(raw).trim();
  if (/^\d(\.\d+)?E\+\d+$/i.test(s)) return null;                                   // 8.80181E+12: digits already lost
  s = s.replace(/[০-৯]/g, (d) => String(d.charCodeAt(0) - 0x09e6));      // Bengali digits ০–৯
  const p = parsePhoneNumberFromString(s, "BD");   // handles 01…, 8801…, +880 1…, +88 01…, 00880…, 1…
  return p?.isValid() && p.country === "BD" && p.getType() === "MOBILE" && p.number.startsWith("+8801")
    ? p.number : null;
}

We ran it on 2026-11-07 with Node 24 and libphonenumber-js 1.13.13, on libphonenumber's own example number for Bangladesh. Digits are masked with X here:

InputOutput
01812-XXXXXX+88018XXXXXXXX
+880 1812 XXXXXX+88018XXXXXXXX
+88 01812XXXXXX+88018XXXXXXXX
88018XXXXXXXX+88018XXXXXXXX
00880 18XXXXXXXX+88018XXXXXXXX
18XXXXXXXX+88018XXXXXXXX
০১৮১… (Bengali digits)+88018XXXXXXXX
8.80181E+12null
010XXXXXXXX (reserved block)null
018XXXXXXX (one digit short)null
02-XXXXXXXX (Dhaka landline)null
+92 30XXXXXXXX (a Pakistani mobile)null

The first seven rows are one customer, so after conversion they collapse into one number, and the duplicate count is honest. Numbers from other countries return null here on purpose: give them their own file, or keep their + form. Because no spelling is ambiguous once it is converted, you can also upload national numbers with default_country: "BD", as long as you converted the Bengali digits first.

Four input cards marked +88 0, 880, 01X and a crossed-out E+12 arc into a phone showing one +880 number with registered, business and unknown answers, beside a tiny local and tall international rate bar, a 2026 timeline and a law sheet.Four input cards marked +88 0, 880, 01X and a crossed-out E+12 arc into a phone showing one +880 number with registered, business and unknown answers, beside a tiny local and tall international rate bar, a 2026 timeline and a law sheet.
Every spelling of a Bangladeshi number becomes one +880 check; only the spreadsheet-damaged cell is lost.

Which Bangladeshi numbers should you drop before the check?

Every Bangladeshi mobile has 10 digits after +880 and starts with 1, so a length check is safe. The prefix matters too. From BTRC's numbering plan and libphonenumber's metadata, as set out in our format guide:

CodeStatus
013–019Open mobile ranges
011Mobile range in libphonenumber; we found no current BTRC list confirming who uses it
010, 012Reserved, not mobile
037…, 038…, 044…, 064…, 066…Some numbers match libphonenumber's mobile pattern, but they sit among area codes; the converter above drops them

Don't use the 01X code for anything else. It names the operator that holds the range, but mobile number portability has run in Bangladesh since 1 October 2018, so it doesn't show the current network. For a WhatsApp check the operator doesn't matter.

How do you check a list of Bangladeshi numbers on WhatsApp?

Five steps, from export to answers:

  1. Export only customers who gave you their number, with your own ID column (for example crm_id,phone). Format the phone column as text. Leave out bought lists, scraped numbers and number ranges.
  2. Convert and dedupe. Run every cell through a converter like the one above. Keep the rows that return null aside for a manual fix.
  3. Estimate. Upload the file in the dashboard (Bulk jobs › Upload a list), or send the numbers to POST /v1/jobs/estimate. The estimate is free and shows the maximum cost, the duplicates and any country group below the bulk minimum before anything runs.
  4. Run with a cost cap. Start the job with max_cost set to the estimate. Choose whatsapp, or whatsapp.business if you also want to know which customers use a WhatsApp Business account.
  5. Download and join back. The result file keeps your row order (row_no); join it back to your own IDs by row number. Store each answer with its checked_at date.

A job holds up to 50,000 numbers, and a dashboard file can be up to 10 MB. Bigger exports go into several jobs.

What does an answer look like?

Here is a real lookup made with the public sandbox key on 2026-11-07, with the whatsapp.business check. The sandbox accepts only our test values, which are UK drama-range numbers, so this shows the answer format, not Bangladeshi data. A bulk job's result file carries the same fields per row:

Shell
curl https://api.mobilevalidate.com/v1/lookup \
  -H "Authorization: Bearer mv_test_publicSandboxn9ZgneuhR1B9CRfKG3fulym" \
  -H "Content-Type: application/json" \
  -d '{"numbers": ["+447700900001", "+447700900002", "+447700900003", "+447700900006"],
       "checks": ["whatsapp.business"], "wait": 5}'

The four results, reduced to the fields you store:

Test valuestatusregisteredbusinessreasonbilled
+447700900001completedtruefalsenullfalse
+447700900002completedfalsefalsenullfalse
+447700900003unknownnullnullUPSTREAM_TIMEOUTfalse
+447700900006completedtruetruenullfalse

Keep null apart from false. The third row is an unknown: no conclusive answer, never billed, worth a retry later. billed is false on every row because test keys are never billed. With a live key, a conclusive row is billed once and an unknown one never is.

What does it cost?

From our public catalog (GET /v1/services), fetched on 2026-11-07:

CheckBulk job, per 1,000Real time, per 1,000
WhatsApp registration (whatsapp)US$0.25US$4.00
WhatsApp Business account (whatsapp.business)US$0.30US$4.00
Live network status, HLR (number.hlr)US$5.00US$6.00

The bulk price needs at least 132 numbers from the same country in one job; smaller country groups are checked at the real-time price, and the estimate shows them first. Only conclusive answers are billed. Unknown, invalid, duplicate and unsupported rows are free, and so are repeats served from your account's cache. Prices can change; the pricing page always has the current ones. The details are in the bulk jobs docs.

A worked example with made-up figures: a 40,000-row export of sign-ups converts to 33,800 unique valid Bangladeshi mobiles once +88 0…, 880… and national spellings of the same people collapse. The WhatsApp Business job can cost at most 33,800 × US$0.0003 = US$10.14. An HLR job on 5,000 numbers that came back not registered costs at most 5,000 × US$0.005 = US$25.00.

What share of Bangladeshi numbers are on WhatsApp?

We don't quote one, and you shouldn't plan with one. DataReportal's Digital 2026 report for Bangladesh counts 186 million cellular mobile connections at the end of 2025, equal to 105% of the population, but only 82.8 million internet users (47.0%) and 64.0 million social media user identities (36.3%) (DataReportal, 2025). The report gives no WhatsApp figure.

Two things follow for a list. First, more connections than people means many customers hold more than one SIM. BTRC capped registrations at 10 SIMs per national ID card in October 2025, with extra SIMs to be deactivated after 30 October 2025 (The Business Standard, 2025). The number a customer typed into your form may not be the one their WhatsApp account uses. Second, fewer than half the population was online, so a not-registered answer often belongs to a working number that SMS or a call still reaches. That is why a check of your own list beats any national average.

Is WhatsApp cheaper than SMS for OTP in Bangladesh?

The answer changed on 1 October 2026, when Bangladesh left Meta's "Rest of Asia Pacific" region and got its own rates. From our rate-card dataset, transcribed from Meta's USD rate cards:

WhatsApp category1 July 2026 (Rest of Asia Pacific)1 October 2026 (Bangladesh)
AuthenticationUS$0.0113US$0.0037
Authentication-internationalnoneUS$0.0960
UtilityUS$0.0113US$0.0037
MarketingUS$0.0732US$0.0732

Prices are per delivered message, and Meta charges only for delivered messages, so a code sent to a number without WhatsApp costs nothing but time.

For a business based in Bangladesh, an authentication message got about two-thirds cheaper. A large sender based abroad can face the opposite. Meta announced the Bangladesh authentication-international rate on 27 May 2026, effective 1 October 2026. It applies once a business is eligible and is based in another country than the recipient. Eligibility comes after more than 750,000 messages outside customer service windows in a moving 30-day period to users in markets with such a rate, with 30 days' notice (Meta, 2026). At that point a code to a +880 user costs about 26 times the local rate. If you verify Bangladeshi users from abroad at scale, run your numbers on both rates. Our WhatsApp Business API pricing guide covers the new cards.

We don't quote SMS prices here: they vary by aggregator, sender type and contract. Put the rate on your own invoice next to the table, and use our WhatsApp OTP vs SMS OTP cost guide to compare cost per verified user.

What does Bangladesh's data protection law require before you check or message?

Bangladesh now has a data protection statute. The Personal Data Protection Act, 2026 (Act No. 63 of 2026) was passed by Parliament and received the President's assent on 10 April 2026, according to the Bangladesh Gazette notice republished by BTRC, which we opened on 2026-11-07 (BTRC). It replaced the Personal Data Protection Ordinance, 2025, gazetted in November 2025, and its February 2026 amendment. One press report gives 15 April 2026 as the date it became an Act (The Daily Star, 2026); we use the gazette date.

The gazette text is in Bengali, in a font that we couldn't extract reliably, so the points below come from an English summary of the Act (Securiti, 2026). Check them against the official text with counsel before you rely on them:

  • It reaches beyond Bangladesh. The Act covers processing outside the country that is connected with offering products or services to people in Bangladesh, or with monitoring them.
  • You need a lawful purpose and a legal ground. Processing needs consent or another specified legitimate ground, and must be necessary, proportionate and limited to its purpose.
  • Consent has to be real. It must be free, specific, unambiguous and revocable. Before relying on it, tell people the purpose, how long you keep the data, any transfers to third parties, and how to withdraw. People can withdraw at any time; processing before the withdrawal stays lawful.
  • Processors work under contract. A checking service processes data for you under a contract, and the controller remains liable for what the processor does.
  • Some transfers abroad need notice. Large-scale transfers of sensitive identifiers such as national ID, passport and tax numbers must be notified to the authority. The authority, named in the summary as the National Data Management Authority, can suspend transfers.
  • Fines. Up to Tk 25 lakh (2.5 million taka) for failing to protect data or to honour data subjects' rights, and up to Tk 50 lakh for a designated significant data fiduciary.

The practical baseline doesn't change: check numbers of customers who gave them to you, for a purpose they would expect, such as choosing the channel that reaches them. Checking numbers to build an audience you have no relationship with fails the purpose test. Our consent and law guide covers the same reasoning in other regions.

BTRC's A2P aggregator rules

Bangladesh regulates the SMS side through enlistment. BTRC's list of A2P SMS aggregators, dated 17 September 2026, names 152 companies enlisted under the Bangladesh Telecommunication Act, 2001. They may provide one-way, machine-generated SMS: promotional, transactional and notification messages (BTRC). On 5 August 2026, BTRC cancelled seven enlistments, said any later operation under them is illegal, and asked mobile operators to disconnect those companies' SMS connections (BTRC notice, 2026). Before you move not-registered numbers to SMS, find your provider on the current list.

WhatsApp's own opt-in rule

WhatsApp's Business Messaging Policy (last updated 23 September 2026) says you may only contact people on WhatsApp if they have given you their mobile number and you have received opt-in permission confirming that they want to receive messages or calls from you (WhatsApp, 2026). A registered: true answer is a fact about the number, not permission to message it.

On our side, requests with 20 or more consecutive numbers are refused as suspected enumeration, each account has a daily cap, and our acceptable use policy forbids unsolicited bulk messaging and checking ranges to find out who uses an app. Anyone can object through the opt-out form.

What do you do with numbers that are not on WhatsApp?

Route them to a channel that reaches them, and keep the answer:

AnswerWhat it meansWhat to do
registered: true, business: trueA WhatsApp Business accountTreat it as a business contact, not a personal one
registered: true, customer opted inAccount existsSend what they asked for on WhatsApp; keep SMS as the fallback
registered: true, no opt-inAccount existsNothing changes; ask for opt-in at the next contact they expect
registered: falseNo account on this numberUse SMS through an enlisted aggregator, or a call
UnknownNo conclusive answerKeep the current channel, re-check later; free
null from your converterNot a valid Bangladeshi mobileFix the record by hand, or ask the customer

For the not-registered group, an HLR check answers the next question: is the number reachable on its network at all? Because customers often hold several SIMs, an unreachable number may simply be a SIM they no longer use; confirm the number with the customer before you pay for SMS to it. Treat unknown as missing data, never as a dead number, and don't overwrite a stored conclusive answer with an unknown one. Our list cleaning guide shows how to combine the checks, and our WhatsApp Business check guide explains what the business flag does and doesn't tell you.

Re-check before each campaign to opted-in customers, starting with the oldest answers. Numbers do change hands, and the 2025 SIM cap deactivated extra SIMs, so a list from two years ago has drifted.

How do you start with MobileValidate?

The checks for this guide are WhatsApp number check, WhatsApp Business check and live network status (HLR). All three take Bangladeshi numbers in real time and in bulk jobs. You don't need a WhatsApp account, a phone or a QR pairing.

  • Free, today. Get a free test key to build against fixed test answers, and use the free estimate on any file before you pay. To look at one number without an account, the free carrier lookup answers three numbers a day.
  • Real checks free. Every live account can check 20 phone numbers and 10 e-mail addresses for real, free, on the dashboard's Try it page. Request access to open one.
  • Then prepay. Top-ups of US$100 or more get a 5% bonus, US$500 or more 8%, and US$2,000 or more 10%.

Results are kept for your account's retention setting, 30 days by default, and you can delete a job's results at any time. A check returns registration facts only, never a name, national ID or address. WhatsApp is named descriptively; MobileValidate is not affiliated with WhatsApp, Meta or BTRC.

What are the key takeaways?

  • Convert every row to +8801… before upload. 01X…, +88 01X…, 880…, 00880… and 1X… are the same customer.
  • Convert Bengali digits before parsing in JavaScript, and format the phone column as text: a cell shown as 8.80E+12 has lost digits for good.
  • Bangladeshi mobiles have 10 digits after +880; 013–019 are open, 010 and 012 are reserved.
  • Bulk WhatsApp checks cost US$0.25 per 1,000, and WhatsApp Business checks US$0.30 (catalog, 2026-11-07), with a minimum of 132 numbers per country group in one job for the bulk price. Unknowns and duplicates are free.
  • Since 1 October 2026, a WhatsApp authentication message to Bangladesh lists at US$0.0037; foreign senders above Meta's threshold pay US$0.0960.
  • The Personal Data Protection Act 2026 is in force and can reach senders abroad. Check your own customers' numbers with a lawful basis, never bought or scraped lists, and send SMS only through a BTRC-enlisted aggregator.

Sources

  1. Personal Data Protection Act, 2026 (Act No. 63 of 2026, Bangladesh Gazette Extraordinary, 10 April 2026; Bengali text) — Bangladesh Telecommunication Regulatory Commission (republished), 2026
  2. Bangladesh Personal Data Protection Act overview — Securiti, 2026
  3. Why Bangladesh's new data protection law may fail to protect your data (7 July 2026) — The Daily Star, 2026
  4. SMS service providers: list of enlisted A2P SMS aggregators (list dated 17 September 2026) — Bangladesh Telecommunication Regulatory Commission, 2026
  5. Notice on cancelling existing A2P SMS aggregator enlistment certificates (5 August 2026) — Bangladesh Telecommunication Regulatory Commission, 2026
  6. BTRC sets 30 October deadline to limit SIMs to 10 per NID (13 October 2025) — The Business Standard, 2025
  7. WhatsApp Business Messaging Policy (last updated 23 September 2026) — WhatsApp, 2026
  8. Authentication-international rates — Meta for Developers, 2026
  9. Digital 2026: Bangladesh — DataReportal (Kepios), 2025

Frequently asked questions

How do I convert 01X numbers to +880 for a WhatsApp check?

Drop the leading 0 and add +880: 017XX-XXXXXX becomes +88017XXXXXXXX. Every Bangladeshi mobile has 10 digits after +880 and starts with 1. A cell that starts with 880 only needs a plus, and a cell written +88 017… is the same number, because the 0 of 017 completes the code 880.

Why does my Bangladeshi list contain +88 numbers?

Because many people write the country code as +88 followed by the full national number, 01X…. Put together, +88 and 01X give +8801X, which is the correct +880 1X form. A numbering-plan library reads it correctly; a script that deletes the 0 after the country code, as it would in +92 (0)3…, breaks it.

Do Bengali digits break a WhatsApp number check?

They can. In our test on 2026-11-07, libphonenumber-js 1.13.13 returned nothing for a number typed in Bengali digits (০১৭…) until we converted them to 0–9, while it read Urdu digits on its own. Convert Bengali digits before parsing, or the customer is silently dropped.

How much does a bulk WhatsApp check of Bangladeshi numbers cost?

On 2026-11-07 our public catalog listed the WhatsApp registration check at US$0.25 per 1,000 numbers in bulk jobs and US$4.00 per 1,000 in real time. The bulk price needs at least 132 numbers from the same country in one job. Unknown, invalid and duplicate rows are never billed. Current prices are on the pricing page.

What does Bangladesh's Personal Data Protection Act 2026 mean for checking numbers?

Parliament passed the Personal Data Protection Act, 2026 (Act No. 63 of 2026), which received the President's assent on 10 April 2026 and replaced the 2025 Ordinance. As summarised in English sources, processing needs a lawful purpose and consent or another legal ground, and it can apply to processing outside Bangladesh. Ask local counsel how it applies to you.

Is WhatsApp cheaper than SMS for OTP in Bangladesh?

WhatsApp got cheaper on 1 October 2026, when Bangladesh became its own market on Meta's rate card: authentication fell from US$0.0113 to US$0.0037 per delivered message. Businesses based abroad that cross Meta's volume threshold pay a new authentication-international rate of US$0.0960. Compare both with the SMS rate on your own invoice.

What should I do with Bangladeshi numbers that are not on WhatsApp?

Keep them on SMS or calls, sent through a BTRC-enlisted A2P aggregator, and don't offer WhatsApp to them. If you aren't sure a number still works, a live network status (HLR) check tells you whether it is reachable. Unknown answers are free and are not proof that a number is dead.

All articles

Know before you send.

Create a free account: approved automatically, usually within 10–15 minutes.

Free to start: check 20 phone numbers and 10 e-mail addresses for real on your account, plus an unlimited test mode. You pay only for conclusive answers, from $20.