Understanding when and how Klaviyo sets a profile's location
You will learn
Learn where to find location information for a profile, how it is used and updated, and more. Klaviyo uses address information synced from an integration or supplied through an import or the Profiles API to determine a profile's location and timezone. When no address information is available, phone-derived location takes priority over IP geolocation.
Find location information in a profile
You can find the location for a profile by navigating to their profile page in Klaviyo, where the location is displayed in the header along with any contact information.

How locations are used and updated in Klaviyo
A profile's location and timezone are used when sending based on recipients' timezones, creating location-based segments, or adding location- or timezone-specific filters to flows.
Here is an example outline of how a profile's location and timezone information are set and updated:
- A known profile visits your website or submits an email-only sign-up form. The request includes their IP address. If the profile has no address or phone-derived location, Klaviyo estimates their location and timezone from the IP.
- The profile provides their phone number and SMS consent to get a coupon code. Klaviyo uses the number's country or area code to estimate location and timezone, giving this estimate priority over an IP-based estimate.
- The profile places an order through Shopify. Klaviyo's Shopify integration extracts the billing address from the order and updates the profile's location and timezone. Because this address data is more authoritative than both a phone number area code and an IP-based estimate, it takes priority.
- The profile continues browsing your site. Even though these interactions include an IP address, the profile's location is now protected — IP-based estimation will not overwrite address data set by Shopify.
- A customer update syncs from Shopify. If the customer's full default address in Shopify differs from the billing address on their last order, the profile's location will be updated to reflect the customer record. Both sources carry the same authority, so the most recently synced address appears on the profile.

If you are using a custom integration, Klaviyo does not automatically use a billing address in event data to set the profile's location. Set the profile's location with the location object in the Profiles API. Learn more about custom integrations and Klaviyo's Profiles API.
When collecting phone numbers, the number's country or area code is used to estimate location for profiles that do not have supplied address information.
IP geolocation
Klaviyo uses IP geolocation to estimate a profile's location and timezone when the request includes an IP address and no address information. IP-based estimates do not replace supplied address information or an existing phone-derived location. This can happen when a profile:
- Subscribes via a Klaviyo sign-up form
- Is captured by Klaviyo's web tracking snippet
Email opens and clicks do not update a profile's location or timezone, even if the profile has no other location data.
Although IP geolocation is used as the industry standard, it can sometimes be inaccurate. Here are a few reasons you might see discrepancies between a profile's IP geolocation and where they are actually located:
- A profile's IP can reflect where they are browsing at that moment. For example, if someone is on a trip to China when they visit your website, their IP will reflect this, even if their typical location is in California.
- IPs are not static, and the location affiliated with an IP is also not static; this makes IP geolocation imperfect.
If a user's internet service provider assigns an IPv6 address to their connection, their location may not be captured correctly.
This is most relevant when you want to schedule a campaign that sends to each recipient in their own timezone. Depending on where a recipient was when their location was last estimated from website activity or a sign-up form, the timezone recorded on their profile may differ from where they receive your next campaign. If a profile has no usable timezone, a campaign sent in recipients' local timezones uses your account's timezone.
Phone number location estimates
Klaviyo uses a phone number's country or area code to estimate a profile's location when supplied address information is unavailable.
How we derive location from a phone number:
Klaviyo uses a third-party library to derive location from a phone number. Most phone numbers map to a single timezone. If a phone number maps to multiple timezones, which is very rare in the United States, Klaviyo uses the following rules:
- For numbers in the US and Canada, we pick the easternmost timezone.
- For all other numbers, Klaviyo uses the country's configured default timezone. If no country default is available, Klaviyo does not derive a timezone from that number.
Update location information yourself
To update location information for one or more profiles by manually importing a CSV, map your columns to the following Klaviyo properties:
- City: the city where they live
- State / Region: the state/region where they live
- Country: the country where they live
- Zip Code: the postal code where they live
If you are using the API, set city, region, country, and zip inside the location object under data.attributes. Use these location fields instead of adding them as custom properties.
For more information about properties and how to manage and update them, head to our guide on properties.
Additional resources
- How to create a location-based segment
Learn how to use location-based segments to send campaigns by region, target forms to customers in a particular area, or better understand a subset of your customers. Note that Klaviyo determines a profile's location when syncing a billing address for that contact or, if they have not yet purchased, by tracking their IP geolocation. Learn more about how location is set on Klaviyo profiles.
- Profile properties reference
Learn about the difference between custom and Klaviyo properties, how to use them to track information about your subscribers, how to remove them, best practices, and more.