How to Setup Identity+

Identity+ is an optional add-on feature.

Contact your account manager to get started.

Establishing the event pipeline via Simon Signal

ℹ️

Make sure the below is completed before getting started:

  1. Onboard to Data Routing if your account doesn't already have this turned on. Data Routing is Simon's solution for routing data collected on your website via Simon Signal to your data warehouse.
  2. Receive an authorization key from Simon Data (e.g. 7W1fw6wYJa5tzdP2iB0po6UM5PznZDld). You will need to put this in your Simon Signal web tag.
  3. Have an existing Simon Signal tag in your tag manager of choice (e.g. Google Tag Manager, Tealium, etc.)
  4. Confirm with Simon Data that your customer profiles have been enriched with PersonID.

If all 4 steps above are complete, find the Simon Signal tag (usually called "Simon Data - Primary Tag"), and modify its HTML. Add the below code to the end of the line, right above the ending script line:

<script>
(function(w, d, s, o, f, js, fjs) {
    w['FCObject'] = o;
    w[o] = w[o] || function() {
      (w[o].q = w[o].q || []).push(arguments)
    };
    js = d.createElement(s), fjs = d.getElementsByTagName(s)[0];
    js.id = o;
    js.src = f;
    js.async = 1;
    fjs.parentNode.insertBefore(js, fjs);
  }(window, document, 'script', 'fc', 'https://tags.fullcontact.com/anon/fullcontact.js'));
  var config = {
    forceCallback: true,
    callback: function(pid) {
      if (!{{Simon Data - email}}) {
        sd.identify("", {
          'personId': pid
        });
      } else {
        sd.identify("", {
          'email': {{Simon Data - email}}
        });
      }
    }
  };
  fc('init', "YOUR AUTHORIZATION KEY HERE", config);
</script>

📘

Implementations vary!

If your Simon Signal tag integration has been customized or modified from the standard implementation, names and variables may be different. Make sure to double-check the variables and tag names your implementation is using before using the above code.

Make sure you set the Triggering event in the Simon Tag configuration to Event - user_data - otherwise, this will trigger on every page.

🚧

Edit it!

Make sure you modify the above code by adding the authorization key provided by Simon Data.

When you save and publish the new code, you are all setup! PersonID for recognized customers will begin to funnel into the Simon Data platform for unauthenticated visitors.

Troubleshooting

I am not seeing PersonID - what's wrong?

While a PersonID is not given for every website visitor, you should start to see around 30%+ of traffic identified. If no PersonIDs are appearing at all, make sure you have your Authorization Key copied correctly.

After a customer authenticates and logs in, the PersonID is overriding their email address. How do I prevent this?

The code assumes you have two things:

  1. The customer's authenticated email being stored locally on the browser, and
  2. The email is present in the 'Simon Data - email' variable.

📘

NOTE

‘Simon Data - email’ is a placeholder; please replace it in the code snippet below with your own global email variable.

callback: function(pid) {  
      if (!{{Simon Data - email}}) {  
        sd.identify("", {  
          'personId': pid  
        });  
      } else {  
        sd.identify("", {  
          'email': {{Simon Data - email}}  
        });  
      }  
    }

PersonID is still overriding the customer’s email address after they log in, even though I inserted the above snippet into my code. How do I resolve this?

Check your trigger condition and alter it if necessary so that the tag will not activate until the email value is present. See the before and after in the example screenshot below: