Clearbit Reveal enables you to easily identify your anonymous visitors on your website so you can serve more targeted content and close more named accounts.  Clearbit Reveal returns full company firmographics details and integrates seamlessly with Reactful Personas.  With Clearbit, you'll be able to further personalize your website experience such as:

  • Target custom experience for named accounts

  • Personalize content based on firmographics data such as industry, company size, etc.

  • Show offers only to visitors who match specific criteria


  1. You must have an active Clearbit Reveal account

  2. Your Custom Reactful Code must be installed on your website

  3. Your Reactful account must be "Live"

Integration Setup

1. Insert the following snippet either via your tag manager or directly on your website. The snippet should ideally load as early as possible, and before your existing Reactful tag.

NOTE: You must update the CUSTOMER_API_TOKEN value with an active Clearbit publishable key (starts with a pk_).

<!-- BEGIN Reactful-Clearbit Integration plugin -->
    (function() {
       function verifySessionStorage() {
           try {
               var t = "__ss_test__";
               window.sessionStorage.setItem(t, t);
               return true;
           } catch (e) {
               return false;

       var clearbit_data = null;
       var isSessionStorageAvailable = verifySessionStorage();

       if (isSessionStorageAvailable) {
           clearbit_data = window.sessionStorage.getItem("custom_vars_data");

       if (isSessionStorageAvailable && clearbit_data === null) {
           var url = "https://reveal.clearbit.com/v1/companies/reveal"
           var xhr = new XMLHttpRequest();
           xhr.open('GET', url, true);
           xhr.setRequestHeader('Content-Type', 'application/json');
           // Replace CUSTOMER_API_KEY with Clearbit publishable API key
           xhr.setRequestHeader('Authorization', 'Bearer CUSTOMER_API_KEY');
           xhr.responseType = 'json';
           xhr.onload = function() {
               if (xhr.readyState == xhr.DONE) {
                   if (xhr.status === 200) {
                       var response = xhr.response;
                       window.sessionStorage.setItem("custom_vars_data", JSON.stringify(response));
                   else if (xhr.status !== 200) {
                       console.log("Request status code: "+ xhr.status + "\nMessage " + JSON.stringify(xhr.response));
           xhr.onerror= function(e) {
                 console.log("Error fetching " + url + "\nError:\n" + e);
<!-- End Reactful-Clearbit Integration plugin -->

2. Go to the Reactful Studio and select the Personas option from the left nav:

3. Click the + button to create a new Persona.

4. Click the Settings icon next to Custom Variables.

5. A pop up window will appear where you can add the variable keys and values you’d like to define for your persona.  Once complete, click the Save & Close button.

NOTE: The keys are defined using a "." notation.  Please refer to example below.

Below is a sample of the returned company information from Clearbit.  Please refer to the Clearbit Company Attributes page for a full list of attributes.

    "ip": "",
    "domain": "reactful.com",
    "type": "company",
    "fuzzy": true,
    "company": {
        "id": "cd401501-bd55-47eb-8ff8-bee9528b8eb2",
        "name": "Reactful",
        "legalName": "Reactful Inc",
        "domain": "reactful.com",
        "domainAliases": [
        "site": {
            "phoneNumbers": [
                "+1 805-391-4683"
            "emailAddresses": [
        "category": {
            "sector": "Information Technology",
            "industryGroup": "Software & Services",
            "industry": "Internet Software & Services",
            "subIndustry": "Internet Software & Services",
            "sicCode": "73",
            "naicsCode": "54"
        "metrics": {
            "alexaUsRank": 251610,
            "alexaGlobalRank": 895018,
            "employees": 10,
            "employeesRange": "1-10",
            "marketCap": null,
            "raised": 2420000,
            "annualRevenue": null,
            "estimatedAnnualRevenue": "$1M-$10M",
            "fiscalYearEnd": 12
    "...": "..."
    "geoIP": {
        "city": "Goleta",
        "state": "California",
        "stateCode": "CA",
        "country": "United States",
        "countryCode": "US"

6. Once your variables have been added in the settings, close the pop up window and click on the word ‘Custom Variables’.

7. Select the variables you’d like to include/exclude in your Persona, then save the Persona so it can be used in your reaction.

8. Create your new reaction and include the persona you created.  The reaction will now only appear for visitors matching your persona criteria.


Please contact Reactful Support via our online chat or email support@reactful.com if you require any assistance with your integration setup.

Did this answer your question?