How to Validate Phone Numbers in GoHighLevel

Learn how to validate phone numbers in GoHighLevel before sending messages through WhatSnap. Improve deliverability, avoid errors, and ensure contacts can receive your messages.

Ensure your contacts can actually receive messages before you hit send. Learn how to automatically validate phone numbers inside GoHighLevel using simple automation and affordable third-party services.


Why Phone Validation Matters

The Problem

GoHighLevel (and WhatSnap) have built-in validation — but only after the first message is sent. This creates problems when:

  • ❌ Importing large contact lists

  • ❌ Running database reactivation campaigns

  • ❌ Starting cold outreach

  • ❌ Cleaning up old contact data

Issues You'll Face:

  • Wasting messages on landlines

  • Failed deliveries to fake/invalid numbers

  • Lower deliverability rates

  • Potential account issues with carriers

  • Poor campaign performance metrics

The Solution

Pre-validate phone numbers before sending any messages using:

  1. Automated workflow validation (US numbers)

  2. Third-party API services (all countries)

  3. Simple conditional logic (basic validation)


Method 1: US Phone Validation Using PhoneValidator

Overview

Best for: US-based contacts, database reactivations, large imports

Service: PhoneValidator.com

Cost: ~$0.004 per contact

  • Validate 1,000 contacts = $4

  • Validate 10,000 contacts = $40

What It Detects:

  • ✅ Landlines (can't receive SMS)

  • ✅ VOIP numbers (may have issues)

  • ✅ Fake/disconnected numbers

  • ✅ Whether number can receive SMS

  • ✅ Carrier information


Video Tutorial

Watch this step-by-step guide on implementing phone validation in GoHighLevel:

How to Validate Phone Numbers in HighLevel Using PhoneValidator

Real-World Example

Scenario: A contact books an appointment and enters a landline number. GoHighLevel doesn't flag it until after you send a message, resulting in:

  • Failed SMS delivery

  • Contact misses appointment reminders

  • Lower show-up rate

With Validation:

  1. Contact is created with landline number

  2. Workflow validates number automatically

  3. Detects it's a landline (not textable)

  4. System sends email instead asking for mobile number

  5. Contact updates to mobile number

  6. Appointment reminders now successfully delivered via SMS


How It Works

Workflow Overview:


Setup Instructions

1

Sign Up for PhoneValidator

  1. Create an account

  2. Deposit $10 to get started (lasts for ~2,500 validations)

  3. Navigate to API Keys section

  4. Copy your API key

Keep your API key handy - you'll need it in the next steps.

2

Download Free Snapshot

Get the pre-built workflow automation:

Download Link: PhoneValidator Snapshot

What's Included:

  • ✅ Pre-configured workflow automation

  • ✅ Custom value setup for API key

  • ✅ Webhook configuration

  • ✅ Decision tree logic

  • ✅ Tag automation

  • ✅ DND management

Alternative: You can build the workflow manually following the steps in this guide, but the snapshot saves significant setup time.

3

Import Snapshot to GoHighLevel

  1. Log in to your GoHighLevel account

  2. Navigate to SettingsSnapshots

  3. Click "Import Snapshot"

  4. Upload the PhoneValidator snapshot file

  5. Select the sub-account to import into

  6. Click "Import"

Wait for import to complete (usually 30-60 seconds).

4

Configure API Key

  1. Go to SettingsCustom Values

  2. Find "PhoneValidator_API_Key" custom value

  3. Paste your PhoneValidator API key

  4. Click "Save"

This stores your API key securely and makes it available to the workflow.

5

Review Workflow

Navigate to AutomationsWorkflows and open the PhoneValidator workflow.

Key Components:

1. Trigger: Contact Created

  • Runs whenever a new contact is added

  • Can also manually add existing contacts to workflow

2. Drip Scheduling

  • Processes 25 contacts every 2 seconds

  • Prevents API rate-limit errors

  • Ensures smooth bulk processing

3. Webhook Action

  • Sends phone number to PhoneValidator API

  • Includes your API key

  • Receives validation response

4. Decision Tree

  • Checks if number is textable

  • Routes to appropriate actions

  • Handles errors gracefully

5. Tag Actions

  • Textable: Yes - Can receive SMS

  • Textable: No - Cannot receive SMS (landline, VOIP, invalid)

6. DND Management

  • Automatically enables DND for SMS on non-textable numbers

  • Prevents wasted messages

7. Email Notification (Optional)

  • Sends email requesting mobile number update

  • Only for non-textable numbers

6

Test the Workflow

Create test contacts:

Test #1: Valid Mobile Number

  1. Create new contact with your mobile number

  2. Watch workflow execute

  3. Check that tag Textable: Yes is added

  4. Verify contact can receive SMS workflows

Test #2: Landline Number

  1. Create contact with a known landline (e.g., local business)

  2. Watch workflow execute

  3. Check that tag Textable: No is added

  4. Verify DND for SMS is enabled

  5. Check if email was sent (if configured)

Test #3: Invalid Number

  1. Create contact with fake number (e.g., 555-0100)

  2. Watch workflow execute

  3. Check tagging and DND


Using Validated Data

Create Smart Lists

Textable Contacts:

  1. Go to ContactsSmart Lists

  2. Create new smart list: "Textable Contacts"

  3. Add filter: Has tag Textable: Yes

  4. Use this list for SMS campaigns

Non-Textable Contacts:

  1. Create smart list: "Non-Textable Contacts"

  2. Add filter: Has tag Textable: No

  3. Use this list for:

    • Email campaigns

    • Data cleanup

    • Manual outreach

    • Deletion (if desired)

Exclude Non-Textable from Campaigns

When creating SMS campaigns in WhatSnap:

  1. Select your contact list

  2. Add exclusion filter: Does NOT have tag Textable: No

  3. Or: Use "Textable Contacts" smart list directly

Result: Only valid, textable numbers receive your SMS campaigns.


Bulk Validate Existing Contacts

For contacts already in your system:

  1. Navigate to the PhoneValidator workflow

  2. Click "Add Contacts" or "Bulk Enroll"

  3. Select contact list or smart list to validate

  4. Confirm enrollment

Processing:

  • Workflow processes 25 contacts every 2 seconds

  • 1,000 contacts = ~80 seconds

  • 10,000 contacts = ~13 minutes

Monitor Progress:

  • Check workflow execution logs

  • Watch tags being applied

  • Review any errors


Advanced: Email Request for Updated Number

If contact has non-textable number:

Setup Email Automation:

  1. Add "Send Email" action after Textable: No tag

  2. Create email template:

Subject: Update Your Contact Information

Body:

Hi {{contact.first_name}},

We noticed the phone number we have on file ({{contact.phone}}) may not 
be able to receive text messages.

To ensure you receive important updates and reminders via SMS, please 
reply to this email with your mobile number.

Thank you!

[Your Business Name]
  1. Add "Wait for Email Reply" action (optional)

  2. Parse reply to extract new number

  3. Update contact phone field

  4. Re-trigger validation workflow


Method 2: International Phone Validation Using Workflows

Overview

Best for: Contacts outside the US, countries with specific mobile prefixes

Cost: $0 (uses built-in workflow logic)

What It Does:

  • Validates based on country code and mobile prefix patterns

  • Simple, free alternative for specific countries

  • No third-party service required

Supported Countries:

  • 🇦🇺 Australia

  • 🇬🇧 United Kingdom

  • 🇨🇦 Canada

  • Others (if you know mobile prefixes)


How It Works

Country-Specific Mobile Prefixes:

Australia 🇦🇺:

  • All mobile numbers start with 04

  • International format: +614 (e.g., +614XXXXXXXX)

United Kingdom 🇬🇧:

  • Common mobile prefixes: 75, 77, 79

  • International format: +4475, +4477, +4479

Canada 🇨🇦:

  • Mobile numbers not easily distinguished from landlines

  • Use same approach as US (PhoneValidator API)


Setup Instructions

1

Create Validation Workflow

  1. Go to AutomationsWorkflows

  2. Click "Create Workflow"

  3. Name: "Phone Validation - [Country]"

  4. Trigger: "Contact Created" or "Tag Added"

2

Add If/Else Condition

  1. Add "If/Else" action

  2. Configure condition for your country:

For Australia:

If phone number contains: +614
Then: Textable (mobile)
Else: Not textable (landline or invalid)

For UK:

If phone number contains: +4475
OR phone number contains: +4477
OR phone number contains: +4479
Then: Textable (mobile)
Else: Not textable (landline or invalid)

For Other Countries: Research mobile prefixes and add similar logic.

3

Add Actions

If Textable (Yes Branch):

  1. Add "Add Tag" action: Textable: Yes

  2. (Optional) Add to SMS campaign list

If Not Textable (No Branch):

  1. Add "Add Tag" action: Textable: No

  2. Add "Do Not Disturb" action: Enable for SMS

  3. (Optional) Send email requesting mobile number

4

Test & Activate

  1. Create test contacts with mobile and landline numbers

  2. Verify tags are applied correctly

  3. Activate workflow

  4. Enroll existing contacts if needed


Example: Australia Mobile Validation

Workflow Logic:

Trigger: Contact Created

Wait: 1 second

If/Else: Does phone contain "+614"?

YES → Add Tag "Textable: Yes" → Continue to SMS workflows

NO → Add Tag "Textable: No" → Enable DND (SMS) → Send email

Prefixes to Check:

  • +614 - Australian mobile

  • +61 (without 4) - Australian landline


Limitations

⚠️ This Method:

  • Only validates format, not if number is active

  • Cannot detect disconnected numbers

  • Cannot detect VOIP numbers

  • Requires consistent international formatting

  • Less accurate than API validation

✅ Best For:

  • Basic validation when budget is limited

  • Countries with clear mobile prefix patterns

  • Supplementing API validation

  • Initial contact import cleanup


Method 3: Basic Format Validation

Simplest Option (Free)

Use GoHighLevel's built-in validation:

When Contact is Created:

  1. Check if phone number is present

  2. Check if properly formatted

  3. Check minimum/maximum length

  4. Tag accordingly

Workflow Logic:

If phone number is empty
    → Add tag "No Phone"
    → Stop SMS workflows

If phone number length < 10
    → Add tag "Invalid Phone"
    → Request phone update

If phone number is valid format
    → Add tag "Phone Validated"
    → Continue workflows

Limitations:

  • Doesn't detect landlines

  • Doesn't verify if number is active

  • Basic validation only


Best Practices

1. Validate at Point of Entry

Ideal Validation Points:

  • ✅ When contact is created

  • ✅ After form submission

  • ✅ When importing contacts

  • ✅ Before starting campaigns

Workflow Trigger Options:

  • Contact created

  • Tag added: "New Import"

  • Contact updated (phone field)

  • Manual enrollment


2. Use Smart Lists for Segmentation

Create Targeted Lists:

List 1: "SMS Ready"

  • Has tag Textable: Yes

  • Does NOT have DND for SMS

  • Has valid mobile number

List 2: "Email Only"

  • Has tag Textable: No

  • OR: Does not have phone number

  • Use for email campaigns

List 3: "Needs Phone Update"

  • Has tag Textable: No

  • Has email address

  • Sent "request number" email


3. Regular List Cleaning

Monthly or Quarterly:

  1. Run validation on all contacts

  2. Identify and remove invalid numbers

  3. Request updates from non-textable contacts

  4. Archive contacts with no valid contact method

Database Hygiene:

  • ✅ Improves deliverability

  • ✅ Reduces wasted messages

  • ✅ Lowers costs

  • ✅ Better campaign metrics


4. Combine with WhatSnap Features

For WhatSnap Users:

Validate Before Campaign:

  1. Import contact list to GHL

  2. Run validation workflow

  3. Create smart list: "Textable Contacts"

  4. Create WhatSnap campaign using smart list

  5. Higher deliverability, fewer failures

Multi-Platform Routing:

  • Use WhatsApp for international contacts (less validation needed)

  • Use SMS for validated US mobile numbers

  • Use email for non-textable contacts


Cost Comparison

Method
Cost
Accuracy
Speed
Best For

PhoneValidator API

$0.004/contact

Very High

Fast

US numbers, large lists

Workflow Logic

$0

Medium

Fast

International, budget-conscious

Basic Format

$0

Low

Very Fast

Initial cleanup

Recommendation:

  • US contacts: PhoneValidator API (most accurate)

  • International: Workflow logic (free, reasonable accuracy)

  • Budget projects: Basic format validation (better than nothing)


ROI of Phone Validation

Example: 10,000 Contact Database Reactivation

Without Validation:

  • 10,000 contacts × $0.004 (avg SMS cost via WhatSnap SIM) = ~$40

  • ~15% are landlines/invalid = 1,500 wasted messages = ~$6 wasted

  • Plus: Poor deliverability metrics, potential carrier issues

With Validation ($40 cost):

  • Validate 10,000 contacts = $40

  • Identify 1,500 non-textable

  • Send SMS to only 8,500 valid mobiles = $34

  • Avoid $6 in wasted messages

  • Improve deliverability (85% → 95%+)

  • Better campaign metrics

  • Prevent carrier issues

Net Cost: $40 validation - $6 saved = $34 net cost Benefit: Much higher deliverability, cleaner data, better results


Troubleshooting

PhoneValidator API Issues

Issue: Webhook returns error

  • ✅ Check API key is correct

  • ✅ Verify you have credits in PhoneValidator account

  • ✅ Check phone number formatting (international format)

  • ✅ Review PhoneValidator API documentation

Issue: Workflow not executing

  • ✅ Check workflow is activated

  • ✅ Verify trigger conditions are met

  • ✅ Review workflow logs for errors

  • ✅ Test with single contact first

Issue: Rate limit errors

  • ✅ Increase drip delay (e.g., 25 every 5 seconds)

  • ✅ Process smaller batches

  • ✅ Contact PhoneValidator support for rate limit increase


Workflow Logic Issues

Issue: Not detecting mobile numbers

  • ✅ Ensure phone numbers are in international format (+CountryCode)

  • ✅ Check mobile prefix patterns are correct

  • ✅ Test with known mobile and landline numbers

  • ✅ Review condition logic (case-sensitive)

Issue: Tags not applying

  • ✅ Check tag names match exactly

  • ✅ Verify tag actions are in correct workflow branches

  • ✅ Review workflow execution logs

  • ✅ Test with single contact manually


Summary

Phone validation is essential for:

  • ✅ Database reactivation campaigns

  • ✅ Large contact imports

  • ✅ Improving deliverability

  • ✅ Avoiding wasted messages

  • ✅ Better campaign metrics

Methods:

  1. PhoneValidator API - Most accurate, paid ($0.004/contact)

  2. Workflow Logic - Free, country-specific validation

  3. Basic Format - Simplest, least accurate

Best Practice:

  • Validate at point of entry

  • Use smart lists for segmentation

  • Clean database regularly

  • Combine with WhatSnap multi-platform routing



Questions about phone validation? Contact support@whatsnap.ai or join our community for help setting up validation workflows.

Last updated