{
  "slug": "phone-numbers-that-break-software",
  "runDate": "2026-10-01",
  "generator": {
    "fakerVersion": "9.9.0",
    "seed": "phone-numbers-that-break-software#<row>",
    "perCountry": 400,
    "countries": 38
  },
  "coverage": {
    "numbers": 15200,
    "withE164": 14217,
    "sharePct": 93.5,
    "countriesAt100": 32,
    "over15Digits": 0,
    "duplicatedCountryCode": 0,
    "outsidePlanRange": 0,
    "shortfalls": [
      {
        "iso2": "MX",
        "name": "Mexico",
        "sharePct": 23.5,
        "withE164": 94,
        "sample": 400,
        "omittedReasons": {
          "national form, 9 digits, no reading fits plan 10-10": 306
        },
        "omittedExamples": [
          "576 499 864",
          "555 712 137",
          "571 638 004"
        ]
      },
      {
        "iso2": "FI",
        "name": "Finland",
        "sharePct": 23.5,
        "withE164": 94,
        "sample": 400,
        "omittedReasons": {
          "national form, 13 digits, no reading fits plan 5-12": 82,
          "national form, 14 digits, no reading fits plan 5-12": 102,
          "national form, 15 digits, no reading fits plan 5-12": 101,
          "national form, 16 digits, no reading fits plan 5-12": 21
        },
        "omittedExamples": [
          "(776) 599-8641 x214",
          "507-505-0772 x656",
          "657.321.3778 x3098"
        ]
      },
      {
        "iso2": "IT",
        "name": "Italy",
        "sharePct": 38.5,
        "withE164": 154,
        "sample": 400,
        "omittedReasons": {
          "international form carrying another country's code": 246
        },
        "omittedExamples": [
          "+77 649 98641214",
          "+40 740 5077265",
          "+67 163 80047308"
        ]
      },
      {
        "iso2": "BE",
        "name": "Belgium",
        "sharePct": 77.3,
        "withE164": 309,
        "sample": 400,
        "omittedReasons": {
          "national form, 10 digits, no reading fits plan 8-9": 41,
          "international form, NSN 7 digits (plan 8-9)": 50
        },
        "omittedExamples": [
          "2213893506",
          "4815184593",
          "9860513325"
        ]
      },
      {
        "iso2": "SE",
        "name": "Sweden",
        "sharePct": 91.8,
        "withE164": 367,
        "sample": 400,
        "omittedReasons": {
          "international form, NSN 6 digits (plan 7-13)": 33
        },
        "omittedExamples": [
          "+46555712",
          "+46122138",
          "+46169825"
        ]
      },
      {
        "iso2": "KR",
        "name": "South Korea",
        "sharePct": 99.8,
        "withE164": 399,
        "sample": 400,
        "omittedReasons": {
          "international form, NSN 6 digits (plan 8-11)": 1
        },
        "omittedExamples": [
          "008-217-2237"
        ]
      }
    ]
  },
  "retiredConverters": {
    "nonNanpNumbers": 14400,
    "stripAndPrepend": {
      "wrongOrUnverifiable": 11069,
      "over15Digits": 501,
      "keepsTrunkPrefix": 6566,
      "duplicatesCountryCode": 3627
    },
    "firstPlanBased": {
      "emitsFromAnInternationalInputThatFitsNoPlan": {
        "IT": 28,
        "KR": 1,
        "SE": 33,
        "BE": 50
      }
    }
  },
  "trunkPrefixSplit": {
    "zeroDropped": {
      "count": 24,
      "countries": [
        "Australia",
        "Austria",
        "Belgium",
        "China",
        "Finland",
        "France",
        "Germany",
        "India",
        "Indonesia",
        "Ireland",
        "Israel",
        "Japan",
        "Netherlands",
        "Nigeria",
        "Romania",
        "South Korea",
        "Sweden",
        "Switzerland",
        "Taiwan",
        "Thailand",
        "Turkey",
        "Ukraine",
        "United Kingdom",
        "Vietnam"
      ]
    },
    "noneSignificant": {
      "count": 9,
      "countries": [
        "Denmark",
        "Greece",
        "Hong Kong",
        "Italy",
        "Mexico",
        "Norway",
        "Poland",
        "Portugal",
        "Spain"
      ]
    },
    "nanp": {
      "count": 2,
      "countries": [
        "Canada",
        "United States"
      ]
    },
    "eight": {
      "count": 1,
      "countries": [
        "Russia"
      ]
    },
    "zeroSix": {
      "count": 1,
      "countries": [
        "Hungary"
      ]
    },
    "brazilCarrier": {
      "count": 1,
      "countries": [
        "Brazil"
      ]
    }
  },
  "workedExamples": {
    "total": 23,
    "supportedCountries": 22,
    "allRoundTrip": true,
    "rows": [
      {
        "iso2": "BD",
        "supported": false,
        "national": "01712 345678",
        "expected": "+8801712345678",
        "actual": "+8801712345678",
        "ok": true
      },
      {
        "iso2": "HK",
        "supported": true,
        "national": "2123 4567",
        "expected": "+85221234567",
        "actual": "+85221234567",
        "ok": true
      },
      {
        "iso2": "NG",
        "supported": true,
        "national": "0803 123 4567",
        "expected": "+2348031234567",
        "actual": "+2348031234567",
        "ok": true
      },
      {
        "iso2": "CA",
        "supported": true,
        "national": "416-555-0142",
        "expected": "+14165550142",
        "actual": "+14165550142",
        "ok": true
      },
      {
        "iso2": "DE",
        "supported": true,
        "national": "030 12345678",
        "expected": "+493012345678",
        "actual": "+493012345678",
        "ok": true
      },
      {
        "iso2": "DK",
        "supported": true,
        "national": "32 12 34 56",
        "expected": "+4532123456",
        "actual": "+4532123456",
        "ok": true
      },
      {
        "iso2": "ES",
        "supported": true,
        "national": "912 345 678",
        "expected": "+34912345678",
        "actual": "+34912345678",
        "ok": true
      },
      {
        "iso2": "FR",
        "supported": true,
        "national": "06 12 34 56 78",
        "expected": "+33612345678",
        "actual": "+33612345678",
        "ok": true
      },
      {
        "iso2": "GB",
        "supported": true,
        "national": "020 7946 0958",
        "expected": "+442079460958",
        "actual": "+442079460958",
        "ok": true
      },
      {
        "iso2": "GR",
        "supported": true,
        "national": "210 123 4567",
        "expected": "+302101234567",
        "actual": "+302101234567",
        "ok": true
      },
      {
        "iso2": "HU",
        "supported": true,
        "national": "06 1 234 5678",
        "expected": "+3612345678",
        "actual": "+3612345678",
        "ok": true
      },
      {
        "iso2": "IN",
        "supported": true,
        "national": "011 2345 6789",
        "expected": "+911123456789",
        "actual": "+911123456789",
        "ok": true
      },
      {
        "iso2": "IT",
        "supported": true,
        "national": "06 6982 1234",
        "expected": "+390669821234",
        "actual": "+390669821234",
        "ok": true
      },
      {
        "iso2": "JP",
        "supported": true,
        "national": "03-1234-5678",
        "expected": "+81312345678",
        "actual": "+81312345678",
        "ok": true
      },
      {
        "iso2": "MX",
        "supported": true,
        "national": "55 1234 5678",
        "expected": "+525512345678",
        "actual": "+525512345678",
        "ok": true
      },
      {
        "iso2": "NL",
        "supported": true,
        "national": "020 123 4567",
        "expected": "+31201234567",
        "actual": "+31201234567",
        "ok": true
      },
      {
        "iso2": "NO",
        "supported": true,
        "national": "21 23 45 67",
        "expected": "+4721234567",
        "actual": "+4721234567",
        "ok": true
      },
      {
        "iso2": "PL",
        "supported": true,
        "national": "12 345 67 89",
        "expected": "+48123456789",
        "actual": "+48123456789",
        "ok": true
      },
      {
        "iso2": "PT",
        "supported": true,
        "national": "212 345 678",
        "expected": "+351212345678",
        "actual": "+351212345678",
        "ok": true
      },
      {
        "iso2": "RU",
        "supported": true,
        "national": "8 495 123 45 67",
        "expected": "+74951234567",
        "actual": "+74951234567",
        "ok": true
      },
      {
        "iso2": "TR",
        "supported": true,
        "national": "0212 345 67 89",
        "expected": "+902123456789",
        "actual": "+902123456789",
        "ok": true
      },
      {
        "iso2": "UA",
        "supported": true,
        "national": "044 123 4567",
        "expected": "+380441234567",
        "actual": "+380441234567",
        "ok": true
      },
      {
        "iso2": "US",
        "supported": true,
        "national": "415-555-0142",
        "expected": "+14155550142",
        "actual": "+14155550142",
        "ok": true
      }
    ]
  },
  "postFixtureTable": [
    {
      "input": "+14155550142",
      "iso2": "US",
      "expected": "+14155550142",
      "toE164": "+14155550142"
    },
    {
      "input": "(415) 555-0142",
      "iso2": "US",
      "expected": "+14155550142",
      "toE164": "+14155550142"
    },
    {
      "input": "415-555-0142 x204",
      "iso2": "US",
      "expected": "extension in its own field",
      "toE164": null
    },
    {
      "input": "1-800-FLOWERS",
      "iso2": "US",
      "expected": "+18003569377 or explicit rejection",
      "toE164": null
    },
    {
      "input": "06 6982 1234",
      "iso2": "IT",
      "expected": "+390669821234",
      "toE164": "+390669821234"
    },
    {
      "input": "06 1 234 5678",
      "iso2": "HU",
      "expected": "+3612345678",
      "toE164": "+3612345678"
    },
    {
      "input": "8 495 123 45 67",
      "iso2": "RU",
      "expected": "+74951234567",
      "toE164": "+74951234567"
    },
    {
      "input": "01 55 1234 5678",
      "iso2": "MX",
      "expected": "rejected, or +525512345678 deliberately",
      "toE164": null
    },
    {
      "input": "030 12345678",
      "iso2": "DE",
      "expected": "+493012345678",
      "toE164": "+493012345678"
    },
    {
      "input": "0201 123456",
      "iso2": "DE",
      "expected": "+49201123456",
      "toE164": "+49201123456"
    },
    {
      "input": "2123 4567",
      "iso2": "HK",
      "expected": "+85221234567",
      "toE164": "+85221234567"
    },
    {
      "input": "+44 (0) 20 7946 0958",
      "iso2": "GB",
      "expected": "+442079460958",
      "toE164": null
    },
    {
      "input": "00442079460958",
      "iso2": "GB",
      "expected": "+442079460958",
      "toE164": "+442079460958"
    },
    {
      "input": "+4420794609581234",
      "iso2": "GB",
      "expected": "rejected",
      "toE164": null
    },
    {
      "input": "911",
      "iso2": "US",
      "expected": "rejected",
      "toE164": null
    },
    {
      "input": "112",
      "iso2": "GB",
      "expected": "rejected",
      "toE164": null
    },
    {
      "input": "＋８１３１２３４５６７８",
      "iso2": "JP",
      "expected": "+81312345678 or explicit rejection",
      "toE164": null
    },
    {
      "input": "07700 900123",
      "iso2": "GB",
      "expected": "+447700900123",
      "toE164": "+447700900123"
    },
    {
      "input": "+15005550001",
      "iso2": "US",
      "expected": "format-valid; the sandbox answers 'invalid'",
      "toE164": "+15005550001"
    }
  ],
  "downloadFixture": {
    "file": "/blog/fixtures/phone-validation-v1.json",
    "cases": 13,
    "agreeWithToE164": 12,
    "rows": [
      {
        "caseId": "phone-us-national",
        "input": "(415) 555-0142",
        "context": "US",
        "expected": "normalize",
        "expectedValue": "+14155550142",
        "toE164": "+14155550142",
        "agrees": true
      },
      {
        "caseId": "phone-us-country",
        "input": "1-415-555-0142",
        "context": "US",
        "expected": "normalize",
        "expectedValue": "+14155550142",
        "toE164": "+14155550142",
        "agrees": true
      },
      {
        "caseId": "phone-us-e164",
        "input": "+14155550142",
        "context": "US",
        "expected": "accept",
        "expectedValue": "+14155550142",
        "toE164": "+14155550142",
        "agrees": true
      },
      {
        "caseId": "phone-gb-national",
        "input": "020 7946 0958",
        "context": "GB",
        "expected": "normalize",
        "expectedValue": "+442079460958",
        "toE164": "+442079460958",
        "agrees": true
      },
      {
        "caseId": "phone-gb-mobile",
        "input": "07700 900123",
        "context": "GB",
        "expected": "normalize",
        "expectedValue": "+447700900123",
        "toE164": "+447700900123",
        "agrees": true
      },
      {
        "caseId": "phone-gb-idd",
        "input": "00442079460958",
        "context": "GB",
        "expected": "normalize",
        "expectedValue": "+442079460958",
        "toE164": "+442079460958",
        "agrees": true
      },
      {
        "caseId": "phone-us-00",
        "input": "00442079460958",
        "context": "US",
        "expected": "reject",
        "expectedValue": "",
        "toE164": null,
        "agrees": true
      },
      {
        "caseId": "phone-fullwidth",
        "input": "＋１４１５５５５０１４２",
        "context": "US",
        "expected": "normalize",
        "expectedValue": "+14155550142",
        "toE164": null,
        "agrees": false
      },
      {
        "caseId": "phone-too-long",
        "input": "+4420794609581234",
        "context": "GB",
        "expected": "reject",
        "expectedValue": "",
        "toE164": null,
        "agrees": true
      },
      {
        "caseId": "phone-extension",
        "input": "(415) 555-0142 ext 9",
        "context": "US",
        "expected": "reject",
        "expectedValue": "",
        "toE164": null,
        "agrees": true
      },
      {
        "caseId": "phone-letters",
        "input": "CALL-ME",
        "context": "US",
        "expected": "reject",
        "expectedValue": "",
        "toE164": null,
        "agrees": true
      },
      {
        "caseId": "phone-emergency",
        "input": "911",
        "context": "US",
        "expected": "reject",
        "expectedValue": "",
        "toE164": null,
        "agrees": true
      },
      {
        "caseId": "phone-empty",
        "input": "",
        "context": "GB",
        "expected": "reject",
        "expectedValue": "",
        "toE164": null,
        "agrees": true
      }
    ]
  }
}
