1. Home
  2. Docs
  3. Enriching your data
  4. Available enrichments
  5. IP Anonymization enrichment

IP Anonymization enrichment


The IP anonymization enrichment lets you anonymize the IP addresses found in the user_ipaddress field by replacing a certain number of octets with “x”s. For example, anonymizing one octet would change the address to 255.255.255.x, and anonymizing three octets would change it to 255.x.x.x.


When web users navigate to your website or app, their device makes a request for your content. In that request is their unique IP address. Although IP addresses can be dynamic and assigned by internet service providers, some data collectors would rather not store full IP addresses due to local legislation or in some cases the ability to link an IP Address with an individual.

The IP anonymization enrichment allows you to decide how many of the octets should be anonymized and then stores the IP address without the specified number of octets.

Note: This enrichment runs after the IP Lookup Enrichment. Therefore, if you are not interested in collecting any geolocation information or other data points based off of a users IP Address make sure the IP Lookup Enrichment is not enabled.


Here is a sample configuration file for this enrichment:

{ "schema": "iglu:com.snowplowanalytics.snowplow/anon_ip/jsonschema/1-0-0", "data": { "name": "anon_ip", "vendor": "com.snowplowanalytics.snowplow", "enabled": true, "parameters": { "anonOctets": 3 } } }

We set the level of octets by defining the value for the “anonOctets” key, in this case set to 3.

If a user browses to our site with IP:, the value stored in the database under the user_ipaddress column in our atomic.events table would be: 192.x.x.x.