In a Spaw phone lookup, the digits after a UK number's leading 0 decide its line type: 01 and 02 answer fixed_line, 071 to 075 and 077 to 079 answer mobile, 070 personal_number, 076 pager, 03 and 055 uan, 056 voip, 080 toll_free, 084 and 087 shared_cost, and 090, 091 and 098 premium_rate. Three exceptions matter to code that reads the answer: 07624 is an Isle of Man mobile range, some 01 and 07 blocks belong to Guernsey, Jersey and the Isle of Man and answer those countries, and Ofcom's drama ranges, such as 07700 900xxx, answer is_fictional: true. This guide sets out each range as Ofcom's numbering plan designates it, what the API returns for it, what the default SMS policy does with it, and how much of each range Ofcom's own table lists as allocated.
The designations come from Ofcom's National Telephone Numbering Plan, the version with effect from 22 April 2025 (https://www.ofcom.org.uk/siteassets/resources/documents/phones-telecoms-and-internet/information-for-industry/numbering/other/national-numbering-plan.pdf, accessed 27 September 2026). The block counts come from Ofcom's telephone number files S1, S3, S5, S7, S8 and S9, published on 23 September 2026 (https://www.ofcom.org.uk/phones-and-broadband/phone-numbers/numbering-data, accessed 27 September 2026). Both documents are Ofcom copyright. Every answer quoted was produced by running the lookup against those files on 27 September 2026.
What each range answers
| Range | Ofcom's designation | line_type |
Risk weight | Default SMS policy |
|---|---|---|---|---|
| 01, 02 | Geographic numbers | fixed_line |
none | sends |
| 030, 033, 034, 037 | Non-geographic numbers charged at up to the geographic rate | uan |
none | sends |
| 055 | Corporate numbers | uan |
none | sends |
| 056 | Location-independent electronic communications services | voip |
voip +30 |
sends |
| 070 | Personal numbers | personal_number |
none | sends |
| 071 to 075, 077 to 079 | Mobile services | mobile |
none | sends |
| 076, except 07624 | Radiopaging | pager |
pager +30 |
sends |
| 07624 | Radiopaging and mobile services on the Isle of Man, closed to new allocation | mobile, country IM |
none | sends |
| 080 | Free to caller | toll_free |
none | sends |
| 0843 to 0845, 0870 to 0873 | Non-geographic numbers with a capped service charge | shared_cost |
shared_cost +20 |
sends |
| 090, 091, 098 | Non-geographic numbers with a service charge capped at 300p a minute or 500p a call (098 for sexual entertainment services; 0908 and 0909 closed to new allocation) | premium_rate |
premium_rate +60 |
blocks, blocked_by: premium_rate |
line_type_source is numbering_plan for every UK answer that has a line type. A block holder settles the line type only in North America, where mobiles and landlines share blocks, as why US numbers cannot be split into mobile and landline explains; in the UK the plan already separates them. uan is libphonenumber's type for universal access or company numbers, one number a business routes to whichever office it chooses, and personal_number its type for a number tied to a person and forwarded to a mobile or a fixed line. The weights are the published ones behind risk_score. Until an account sets its own SMS policy, the defaults block the fictional, disposable, reported_abuse, reported_abuse_widely and premium_rate signals and any score over 60, and allow every line type.
The block, not the range, decides two signals. A valid number in a block Ofcom has designated rather than allocated scores reserved_block +40, and a number in a block held by a VoIP wholesaler scores virtual +40, which the section on wholesalers below counts.
How much of each range Ofcom lists as allocated
Ofcom's files list number blocks, and a block is not a fixed size. Most 01 rows are blocks of 1,000 numbers, the 07 mobile rows are blocks of 100,000, the 084, 087 and 09 rows are blocks of 10,000, and most 0800 rows are blocks of 1,000 or 100, so a count of rows compares unlike things. The table below counts numbers: each row covers 10 to the power of the number length minus the digits of its prefix, with the number length taken from the file's own column (most UK numbers have ten digits after the 0; a few 01 areas and the closed 0800 plus six digits range have nine). Ofcom's table does not list every number in every range (0843's rows cover 6.1 million of its 10 million numbers), so the share divides the numbers in allocated blocks by the numbers in all of the range's rows, whatever their status, not by the whole range.
| Range | Blocks in Ofcom's table | Usual block size | Allocated blocks | Numbers in allocated blocks | Share of the numbers the table lists |
|---|---|---|---|---|---|
| 01 | 269,646 | 1,000 | 91,464 | 317.2 million | 36.6% |
| 02 | 29,438 | 10,000 or 1,000 | 7,389 | 62.1 million | 8.5% |
| 030 | 3,178 | 10,000 | 305 | 3.0 million | 3.0% |
| 033 | 2,305 | 10,000 | 613 | 6.1 million | 6.1% |
| 034 | 3,871 | 10,000 | 1,370 | 13.2 million | 13.2% |
| 037 | 3,772 | 10,000 | 1,166 | 11.6 million | 11.6% |
| 055 | 400 | 10,000 | 26 | 0.26 million | 6.5% |
| 056 | 595 | 10,000 | 130 | 1.3 million | 1.3% |
| 070 | 3,061 | 10,000 or 100,000 | 733 | 43.1 million | 43.1% |
| 071 to 075, 077 to 079 | 6,029 | 100,000 | 5,515 | 551.5 million | 68.9% |
| 076, except 07624 | 800 | 100,000 | 117 | 11.7 million | 14.6% |
| 07624 | 19 | 100,000 or 10,000 | 10 | 0.82 million | 82.0% |
| 0800 | 7,505 | 1,000 or 100 | 3,909 | 2.5 million | 40.6% |
| 0808 | 410 | 10,000 | 403 | 3.9 million | 98.2% |
| 084 | 2,117 | 10,000 | 2,055 | 20.1 million | 97.0% |
| 087 | 1,957 | 10,000 | 1,825 | 18.1 million | 93.2% |
| 090 | 5,283 | 10,000 | 5,089 | 50.9 million | 96.3% |
| 091 | 1,115 | 10,000 | 997 | 10.0 million | 89.4% |
| 098 | 1,580 | 10,000 | 1,424 | 14.2 million | 90.1% |
Most of what is not allocated is not free either. Of the 269,646 rows under 01, 171,587 are Protected, withheld from allocation, and only 5,357 are Free; under 070, 2,268 of 3,061 rows are Protected. Ofcom's six status words (Allocated, Free, Protected, Quarantined, Reserved and Designated, with closed ranges marked as such) fold into Spaw's three values of block_status as what an unassigned block means describes. A number the metadata accepts in a Free, Protected, Quarantined or Reserved block answers valid: false with the reason unassigned_block, free of charge, unless it sits in a drama range. The United Kingdom page splits the allocated mobile numbers by range and by brand from the copy of these files Spaw has installed, and lists the area codes and non-geographic ranges one by one; the phone data sources page names the files, their publisher and the date of the installed copy.
Read every figure in this section with these limits. Allocated means allocated to a communications provider, not in service: a provider may hold a block of 100,000 numbers and have issued a fraction of them. The shares are shares of Ofcom's table, not of subscribers or of traffic. And the table records the original allocation: a number ported to another provider keeps its block, so the holder Spaw reports as carrier is the provider Ofcom allocated the block to, not the one serving the number today.
Where the plan and the metadata disagree
Spaw starts from libphonenumber, the numbering metadata behind Android (9.0.37 and 9.0.40 carry the same UK ranges on 27 September 2026; the release in use is on the status page, under phone numbering metadata), and reads the plan where the two part ways.
- 084 and 087. The metadata types both ranges as premium rate. The plan designates 0843 to 0845 and 0870 to 0873 as non-geographic numbers whose service charge may not exceed 5.833p and 10.83p a minute or a call before VAT, and caps the service charge on 090, 091 and 098 at 300p a minute or 500p a call. Spaw answers
shared_costwith a weight of +20, applied only while the metadata still says premium rate, so a later metadata change cannot turn into a wrong answer. Ofcom's premium-rate-services rules still cover 0871 to 0873, as the line type entry notes, and Ofcom's quick guide to premium rate services says premium rate numbers "generally begin with 09, 118, 087 and some 084" (https://www.ofcom.org.uk/make-a-complaint/complain-about-premium-rate-services/quick-guide-to-premium-rate-services-prs, last updated 23 June 2025, accessed 27 September 2026). A sender that treats those numbers as premium rate blocksshared_costtoo. - Drama ranges. Ofcom sets aside twenty ranges of a thousand numbers for television and radio, among them 020 7946 0xxx, 07700 900xxx and 03069 990xxx, and says they will not be allocated to providers in the foreseeable future (https://www.ofcom.org.uk/phones-and-broadband/phone-numbers/numbers-for-drama, accessed 27 September 2026). The metadata rejects some of them, 07700 900xxx among them. Spaw answers each one valid, with the type Ofcom gives the range,
is_fictional: trueand thefictionalsignal at +80, which the default policy blocks. - Network codes inside 08 and 07. The 179 rows under 08979 and 08998 to 08999 are codes the plan lists for calling line identification and inbound routing, not numbers anyone dials, and the lookup answers
invalid_number. The 391 Designated rows under 07 are, all but one, the blocks under 07603 to 07622, 07682 to 07692 and 07991 to 07998, which the plan lists among its mobile number portability codes: the metadata rejects the first two groups (invalid_number), and accepts the third, which answersmobilewithblock_status: reservedandreserved_block+40.
070 looks like a mobile and is not
The plan defines a personal numbering service as one that enables an end-user "to be called or otherwise contacted at a single Personal Number, and to receive those calls or other communications at almost any Telephone Number, including a Mobile Number". A person reading 070 sees a mobile prefix; the network sees a forwarding service. In the 23 September files, 733 blocks under 070 were allocated to 78 providers, 43.1 million numbers. The plan does not mention text messages, so whether a one-time code reaches a handset depends on the service behind the number.
Spaw answers personal_number with no risk weight, and the default policy lets it through. An account that sends codes only to handsets can say so once, on the server, through PUT /api/v1/phone/policy (reference):
{ "blocked_line_types": ["premium_rate", "shared_cost", "pager", "personal_number"] }
With that policy a 070, 076, 084, 087 or 09 number answers ok_to_send: false with blocked_by: line_type, while 07 mobiles, 03 numbers and 056 numbers still pass on their scores. ok_to_send is a fraud and deliverability decision computed from the answer and the account's rules. It is not consent to message anyone and not a do-not-call scrub.
Guernsey, Jersey and the Isle of Man
The three Crown dependencies' numbers sit in the UK +44 plan and appear in Ofcom's files, and libphonenumber assigns them their own region codes, so the lookup answers country as GG, JE or IM rather than GB. In the 23 September files, 93 allocated geographic blocks sit under 01481 (Guernsey), 01534 (Jersey) and 01624 (Isle of Man), and 54 allocated 07 blocks, 5.22 million numbers, resolve to the islands: 07781 and 07839 in Guernsey, 07509, 07797, 07829 and 07937 in Jersey, and 07624 on the Isle of Man, plus three of the allocated blocks under 07700 (Jersey), two under 07911 (Guernsey) and one under 07457 (Isle of Man). The United Kingdom page's island rows count only the whole stems, 4.62 million numbers. A country allow-list of GB alone refuses all of them. The pages for Guernsey, Jersey and the Isle of Man name the regions that share +44 and the table each is read from.
Blocks held by VoIP wholesalers
A number's range says what the plan designated; the block holder says who the numbers went to. When the holder Ofcom lists for a block is on Spaw's classification list of VoIP wholesalers, the answer keeps the range's line type and adds is_virtual: true with virtual +40. In the 23 September files, 3,586 allocated blocks had such a holder: 3,229 under 01, 258 under 02 and 99 across 03, 056, 070, 07 and 08. That is a lower bound, since only holders on the list are counted. The weights add up: a 01 number in such a block scores 40 and is sent to under the default policy, while a 056 number in one scores 70 (virtual +40 and voip +30) and is refused with blocked_by: risk_score.
What a call to each range costs, and who may share the revenue
For a service that places calls to numbers people type in, the plan's tariff column caps the service charge, the part of the price the organisation being called sets; the caller's own provider adds an access charge on top (Ofcom, UK Calling, https://www.ofcom.org.uk/phones-and-broadband/phone-numbers/uk-calling, published 31 March 2022, accessed 27 September 2026). Calls to 03 numbers are charged at up to the rate of a call to a geographic number and count towards a caller's inclusive minutes; 080 is free to the caller; the service charge on 0843 to 0845 is capped at 5.833p, on 0870 to 0873 at 10.83p, and on 090, 091 and 098 at 300p a minute or 500p a call, all before VAT.
Part B3 of the plan says where those who use a number may not share, directly or indirectly, the revenue from providing a service on it: geographic numbers, 03, corporate numbers (055), 056, personal numbers (070) and radiopaging (076, except 07624) with an end-user or a calling party, and 084 and 087 with the calling party. Ofcom's list of amendments dates the geographic, corporate and radiopaging prohibitions and the 084 and 087 calling-party prohibition to 11 April 2025, notified in its statement on revenue sharing of 11 October 2024 (https://www.ofcom.org.uk/phones-and-broadband/phone-numbers/numbering, accessed 27 September 2026). Part B3 places no such restriction on 09.
What Spaw does not claim
- The range and the table describe the allocation. Neither says who uses a number today, and Spaw does no reverse lookup: it names no owner and no caller.
carrieris the provider Ofcom allocated the block to. Neither it norline_typeis port-aware. The live carrier-network check (hlr: true) is not enabled on the service:hlr_checkedanswers false and nothing extra is charged.- A number outside every row of the table answers
block_status: null: the table says nothing about it, and nothing is inferred. Numbers in the freephone and premium-rate drama ranges, 0808 157 0xxx and 0909 879 0xxx, are among them.
What to do next
- See the 07 table, the area codes and the regions sharing +44 on the United Kingdom page, and other countries under phone facts by country.
- Read every field and where it comes from in the phone intelligence guide.
- Turn the line types into a sending rule with gate SMS verification codes with the SMS policy.
- See how the regulators' statuses map to
block_statusin what an unassigned block means.