Check phone number activity, carrier details, line type and more.
France Phone Numbers: Format, Area Code & Validation Guide
This guide provides a deep dive into the French telephone numbering system, covering formats, area codes, validation, portability, and key market players. It incorporates the latest ARCEP regulations and best practices for developers and telecom professionals.
Country: France
Country Code: +33
International Prefix: 00 (or +)
National Prefix: 0
Emergency: 112
Overview
France utilizes a 10-digit closed numbering plan. This means all calls within France, even local ones, require dialing all ten digits. The system is structured to identify geographic areas, mobile services, and special numbers. Understanding this structure is crucial for developers working with French phone numbers.
Key Regulatory Updates (2025)
Geographic Number Restrictions Lifted: Operators can now assign numbers from any approved range, regardless of geographic location. This change promotes competition and simplifies number allocation.
Enhanced Anti-fraud Measures: ARCEP has implemented stricter regulations to combat phone number fraud, including enhanced verification processes.
New Mobile Number Regulations: Specific regulations govern the allocation and use of mobile numbers, aiming to improve transparency and consumer protection. Consult ARCEP documentation for details.
Expanded SMS Emergency Services: The emergency number 114, designed for the deaf and hard-of-hearing, now supports SMS and video calls, broadening accessibility.
Number Formats
All French phone numbers consist of 10 digits, prefixed with a '0'. The subsequent digits categorize the number type.
Format: 0X XX XX XX XX
Where:
0 = National Prefix
X = Service/Region Identifier (see below)
Number Types
Geographic (01-05): Historically tied to specific regions, these numbers are now assignable nationwide.
Mobile (06-07): Identify mobile phone subscriptions.
Special Services (08): Include toll-free, shared-cost, and premium-rate numbers.
Non-Geographic (09): Used for VoIP and other non-location-based services.
Emergency Services
It is crucial to verify emergency number functionality from your specific phone and network, especially when using VoIP.
Service
Number
Availability
Languages
All Emergencies
112
24/7
Multi-lingual
Medical (SAMU)
15
24/7
French, English
Police
17
24/7
French, English
Fire & Rescue
18
24/7
French
Deaf/Hard-of-Hearing
114
24/7
SMS, Video Call
International Calling
Calling France from Abroad
Format: +33 X XX XX XX XX (Recommended)
Alternative: 0033 X XX XX XX XX
Remove Leading Zero: When dialing from abroad, omit the leading '0' from the French number.
Plus (+) Prefix: Using the '+' prefix is preferred over '00' as it automatically adapts to the local international dialing prefix.
Always consult specific country dialing instructions for any variations.
Number Portability
Number portability allows users to retain their phone number when switching operators. ARCEP regulations ensure a smooth and secure process.
Processing Time: Typically completed within 3 business days.
Service Continuity: Service interruption during the transfer is prohibited.
Cost-Free: Operators cannot charge fees for the porting process.
Consumer Protection: A 14-day cooling-off period and strict data privacy regulations are in place.
Telecom Operators & Market Landscape
The French telecom market is competitive, with several major players:
Operator
Market Position (2025)
Network Coverage (Approx.)
Orange
Leader (40%)
99% 4G/5G
SFR
Major Operator (25%)
98% 4G
Bouygues Telecom
Established (20%)
97% 4G
Free Mobile
Innovator (15%)
95% 4G
ARCEP promotes competition through infrastructure sharing requirements, transparent pricing mandates, and support for virtual operators (MVNOs).
Special Cases & Service Numbers
Golden Numbers (Numéros Dorés)
Golden numbers are premium numbers with easily memorable patterns (e.g., 06 88 88 88 88). ARCEP regulations oversee their allocation and use.
Short Codes and Special Services
Various short codes exist for specific services. Always verify the latest information from ARCEP.
Technical Implementation
Validation
constvalidateFrenchNumber=(number)=>{// Remove whitespace and non-digit charactersconst cleanedNumber = number.replace(/\s/g,'').replace(/\D/g,'');const patterns ={geographic:/^0[1-5]\d{8}$/,mobile:/^0[67]\d{8}$/,tollFree:/^080[0-5]\d{6}$/,// Example toll-free rangepremium:/^08[9]\d{7}$/,// Example premium-rate range. Check ARCEP for full ranges.sharedCost:/^08[12]\d{7}$/,// Example shared-cost range. Check ARCEP for full ranges.voip:/^09\d{8}$/// Example VoIP range. Check ARCEP for full ranges.};returnObject.entries(patterns).find(([type, pattern])=> pattern.test(cleanedNumber));};// Example usage:console.log(validateFrenchNumber("06 12 34 56 78"));// Returns matching pattern (mobile)console.log(validateFrenchNumber("+33612345678"));// Returns undefined (needs cleaning first)// Clean and validate international numberconst internationalNumber ="+33612345678";const cleanedInternational = internationalNumber.replace(/\s/g,'').replace(/\D/g,'').replace(/^330/,'0');console.log(validateFrenchNumber(cleanedInternational));// Returns matching pattern (mobile)