Modify the format of a Phone field

Hello everyone,

I’m facing a persistent issue in Make when trying to transform a French phone number pulled from Google Sheets — formatted like 0X XX XX XX XX — into the format required by HubSpot: +337XXXXXXXX

HubSpot keeps returning the following error:

[400] INVALID_PHONE_NUMBER — must match format '+18884827768'

Despite multiple formula attempts and help from ChatGPT (completely useless), none of the expressions are interpreted correctly by Make when submitted in the Create a Contact module.

Tests already tried:

  1. “+33” & substring(replace([Téléphone]; “[^0-9]”; “”); 1)
  2. replace([Téléphone]; “[^0-9]”; “”)
  3. Tried splitting the process across 1 to 3 Set variable modules to clean the number step by step (remove spaces, drop the initial 0, add +33, etc.)


What I’m looking for:

  • A 100% reliable method in Make to produce a string exactly like +33XXXXXXXXX, without quotes, without visible concatenation, and without Make misinterpreting the expression when passed to HubSpot.
  • Bonus: handle cases where the phone number might not be French and dynamically adapt the country code based on the number format.

Thanks in advance for any help!

I just noticed that my Google Sheet contains various phone numbers starting with 01, 02, 03, 04… and 07, so ideally it should automatically format them based on different country codes, not just +33

Hey Theo,

there is a module called Parse a Phone Number. It accepts phone numbers in pretty much any format and returns them reformatted in several different standards (also checks if they are valid or not).