Personalizing HTML Forms with 6signal Attributes

Prev Next

6sense customers are able to utilize the power of 6signal in their personalized marketing and sales outreach experience through our many integration partners.

For advanced users, custom configurations are possible with a little bit of HTML and JavaScript work. The following guide is for individuals familiar with the web technologies of HTML and JavaScript. We suggest that you work with your organization’s HTML / JavaScript developer when implementing this.

Prerequisites

  1. 6signal integration already deployed on the same website as the form page, either through Google Tag Manager, Adobe, or another integration like Drift, Pathfactory, or UberFlip.

    • If not deployed already, please reach out to 6sense Support for recommendations on the best way to implement this based on your use case.

  2. The ability to place the script code in this article at the bottom of the page, below other tags, OR the ability to dynamically fire the custom script after the Company Identification API has been loaded on the page.

  3. The ability to edit form HTML as necessary to support the custom configuration.

Step 1: Identify the HTML that will be personalized and other requirements

  1. Decide if an existing visible form field will be pre-populated or if additional hidden fields will be added to the form.

    • For example:

    <form>
       <label for="email">Email Address</label>
       <input type="text" id="email" name="email" value><br />
    
       <label for="company_name">Company Name</label>
       <input type="text" id="company_name_6s" name="company_name" value><br />
    
       <input type="submit" value="Submit">
    </form>
  2. You might want to pre-populate “Company Name” with the de-anonymized company name to make the form experience better.

  3. You also might want to only personalize this text if 6sense has high confidence in the match.

  4. You also might want to only personalize if the company is not a part of the exclusion list.

Step 2: Decide all the different 6signal Attributes you would like to personalize with

Below is a reference you may use to build out your custom JavaScript:

6signal Attribute

HTML id

JavaScript Attribute

JSON Reference

Company Address

company_address_6s

company_address_6s_value

company.address

Company Annual Revenue

company_annual_revenue_6s

company_annual_revenue_6s_value

company.annual_revenue

Company City

company_city_6s

company_city_6s_value

company.city

Company Country

company_country_6s

company_country_6s_value

company.country

Company Country ISO Code

company_country_iso_6s

company_country_iso_6s_value

company.country_iso_code

Company Domain

company_domain_6s

company_domain_6s_value

company.domain

Company Employee Count

company_employee_count_6s

company_employee_count_6s_value

company.employee_count

Company Employee Range

company_employee_range_6s

company_employee_range_6s_value

company.employee_range

Company Industry

company_industry_6s

company_industry_6s_value

company.industry

Company “Is Blacklisted”

company_exclusion_6s

company_exclusion_6s_value

company.is_blacklisted

Company NAICS

company_naics_6s

company_naics_6s_value

company.naics

Company NAICS Description

company_naics_desc_6s

company_naics_desc_6s_value

company.naics_description

Company Name

company_name_6s

company_name_6s_value

company.name

Company Phone

company_phone_6s

company_phone_6s_value

company.phone

Company Region

company_region_6s

company_region_6s_value

company.region

Company Revenue Range

company_revenue_range_6s

company_revenue_range_6s_value

company.revenue_range

Company SIC

company_sic_6s

company_sic_6s_value

company.sic

Company SIC Description

company_sic_description_6s

company_sic_description_6s_value

company.sic_description

Company State

company_state_6s

company_state_6s_value

company.state

Company State Code

company_state_code_6s

company_state_code_6s_value

company.state_code

Company Zip

company_zip_6s

company_zip_6s_value

company.zip

Company Match Confidence

match_confidence_6s

match_confidence_6s_value

confidence

Step 3: Edit the Custom Script based on your needs

Starting with the following custom script, edit as necessary to fit your needs. The below script will only personalize the text if the confidence attribute for the individual is “High” or “Very High” and the company is not a part of the exclusion list.

Example Script

<script>
var fData = JSON.parse(localStorage._6senseCompanyDetails);
var match_confidence_6s = fData.confidence;
var company_exclusion_6s = fData.company.is_blacklisted;

var company_name_6s = document.getElementById('company_name_6s');
var company_name_6s_value = fData.company.name;

if ((match_confidence_6s == 'High' || match_confidence_6s == 'Very High') && company_exclusion_6s != true) {
  if (fData && company_name_6s_value) {
    company_name_6s.value = company_name_6s_value;
  }
}
</script>

The above works with the HTML mentioned above.

If your HTML has multiple areas to personalize, replicate the lines containing the bolded text and replace the bolded text accordingly. The above table has suggestions on how to updating the naming.

For example, if you wanted to personalize with the company industry, the following would apply:

HTML

<form>
<label for="email">Email Address</label>
<input type="text" id="email" name="email" value><br />

<label for="company_name">Company Name</label>
<input type="text" id="company_name_6s" name="company_name" value><br />

<input type="hidden" id="company_industry_6s" name="industry" value>

<input type="submit" value="Submit">
</form>

Script

<script>
var fData = JSON.parse(localStorage._6senseCompanyDetails);
var match_confidence_6s = fData.confidence;
var company_exclusion_6s = fData.company.is_blacklisted;

var company_name_6s = document.getElementById('company_name_6s');
var company_name_6s_value = fData.company.name;

if ((match_confidence_6s == 'High' || match_confidence_6s == 'Very High') && company_exclusion_6s != true) {
  if (fData && company_name_6s_value) {
    company_name_6s.value = company_name_6s_value;
  }
}

var company_industry_6s = document.getElementById('company_industry_6s');
var company_industry_6s_value = fData.company.industry;

if ((match_confidence_6s == 'High' || match_confidence_6s == 'Very High') && company_exclusion_6s != true) {
  if (fData && company_industry_6s_value) {
    company_industry_6s.value = company_industry_6s_value;
  }
}
</script>

Step 4: Place Custom Script on page

  1. Either use a tag manager, paste the custom script in a page template, or just paste the custom script on the page itself.

  2. Place this script below the 6sense Web Tag that contains the company identification API or use a tag manager to ensure it fires after the tag containing the company identification API code fires.

If you need assistance troubleshooting this issue, please submit a support ticket using our support page.