HockeyStack
HomeLive DemoBook a DemoLogin
  • Getting Started
    • 👋Welcome to the Docs!
    • Product Onboarding
    • HockeyStack Implementation Scope: Reporting Product
  • Release Notes
    • May 5, 2025
    • April 21, 2025
    • April 14, 2025
    • April 7, 2025
    • March 31, 2025
    • March 24, 2025
    • March 14, 2025
    • March 6, 2025
    • February 28, 2025
    • February 17, 2025
  • Guides
    • ❓FAQ
      • Merging in HockeyStack
      • Why has my data changed?
      • Viewing form submissions by page
      • A touchpoint's influence on conversion rates
      • Average number of touchpoints
      • Self-reported attribution
      • Trend of Engagement Score
      • How do I see which individuals / companies are included in a metric?
      • What touchpoints get credit in attribution?
      • What object/integration is this field pulling from?
      • What is "Source"?
      • What is "UTM Source"?
      • What is "UTM Medium"?
      • What is an Action?
      • How can I add Salesforce Task object into Defined Properties?
      • How can I track offline events in HubSpot?
      • How can I use LinkedIn Impressions and Engagements in my reports?
      • Measuring sales and marketing penetration in an account list
      • Measuring number of engaged contacts per company
      • Offline conversions for ad platforms
      • Tracking progression on targets
      • Building a Campaign / Asset Grouping property
      • Percentage of high quality job titles by Channel
      • Measuring conversion rates
      • Building a goal that shows open opportunities
      • Number report: Funnel stages influenced by different types of marketing touchpoints
      • Best Practices for Lifecycle Tracking in Salesforce / HubSpot
      • Adding HubSpot form fills to defined properties
      • Does HockeyStack website pixel track US States?
      • Measuring Time Between Two Goals in HockeyStack
      • What is the HubSpot "email bounces" action?
      • Hiding Fields from your CRM in HockeyStack
      • How long does it take for a relation mapping to be ready to use?
      • Can I integrate multiple LinkedIn ads accounts?
      • Can I use Zapier for integrations with HockeyStack?
      • I created a new field in Salesforce (SFDC), but I don’t see it in HockeyStack. What should I do?
      • Using two similar fields in one breakdown
      • Why can't I map back to property?
      • GA4 vs. HockeyStack Website Data Tracking
      • How does HockeyStack deduplicate accounts?
      • How do Table Totals Work: Campaign vs Campaign Group?
      • Can I create one field that calculates the total ad spend + SFDC campaign spend?
      • HubSpot: Can I filter a goal on X object by Y object fields?
      • LinkedIn Impressions: Different Ways of Measuring
      • How to define Engaged Accounts and Engaged People?
      • Building a Campaign Grouping property
    • 🖥️Dashboard Building Guides
      • Business Overview Dashboard
      • CMO Dashboard
      • Website Analytics Dashboard
      • Paid Ads Dashboard
      • Google Ads Dashboard
      • LinkedIn Ads Dashboard
      • In-Person Events
      • ABM Live-Demo
      • Content/Organic Dashboard
      • Dashboards from Labs Reports
        • LinkedIn Ads Benchmarks
        • Google Ads Benchmarks
        • Q1 2024 Recap
        • G2 Impact 2024 Report
        • Website Benchmarks
  • Documentation
    • The HockeyStack Data Model
    • 🎯Goals
      • Funnel Stages Goals
      • Form Fill Goals
      • Page View Goals
      • Click Goals
      • Finding Out a Button's CSS Selector
      • Goals on the Task Object
      • Building an All Touchpoints (Channel) Goal
    • Defined Properties
    • Track Date Properties
    • 📊Reports
      • Building a Basic Report
      • Journeys Use Cases
      • Customer Touchpoint Hierarchy
      • Sequences
      • Lift Reports
      • Lift Analysis vs. Multi-Touch Attribution
      • Types of report filters and when to use them
      • Attribution Models
      • Attribution Lookback
      • Defining Custom Attribution Weights
      • Importing a Google Sheet to use as a Goal Column
      • Advanced Attribution Models
    • 🖥️Dashboards
    • Dashboard Filters
      • When to use AND vs. OR logic?
      • Using Regex
    • 🌠Journeys
      • Syncing journeys to CRM and Slack
    • 🥇Golden Paths
    • Funnels
    • Attribution Funnel
    • 👥Segments
    • ⚙️Settings
      • Account Reset Guide
      • Auto-tagging of URLs
      • Data Categorization in HockeyStack
      • Team Sharing
      • Tracking Multiple Domains
      • Excluding Users
      • Reporting Configuration
      • Multi-Factor Authentication
    • Advanced Data Connections
      • Account List Import
      • Property Relation Mappings
      • Sync Spend
      • Syncing spend from offline channels and campaigns
    • 🔃Audience Syncs
    • Send View updates to Webhooks
    • Odin AI
      • HockeyStack AI: Security, Privacy, and Responsible Use
  • DataSyncs
    • Connecting your Warehouse
      • Authenticate Snowflake
      • Authenticate Google Sheets
      • Authenticate BigQuery
      • Authenticate S3
        • Use an S3 User
        • Use an IAM Role
    • Configure a DataSync Import
    • Configure a DataSync Export
      • Data Export Schema
        • Raw Actions Export Schema
  • Integrations
    • Website Tracker
      • Google Tag Manager
      • WordPress
      • React
      • Troubleshooting
      • Reverting to Cookie-Based Tracking
      • Identifying Users
      • Tracking Custom Goals
    • Ad Platforms
      • LinkedIn Ads
      • Bing Ads
      • Capterra Ads
      • Google Ads
      • Facebook Ads
      • Tiktok Ads
      • Twitter Ads
      • StackAdapt Ads
      • Reddit Ads
      • AdRoll Ads
    • Analytics & Data Warehouse
      • Snowflake
      • Amazon Redshift
      • Google Bigquery
      • Amazon S3
      • Azure Databricks
    • CRMs
      • Salesforce
        • Properties Pulled from Salesforce
        • Salesforce Pulled Objects List
        • Sending Data to Salesforce
      • HubSpot
        • HubSpot Pulled Objects List
    • SSO
      • Azure AD
      • Google Workspace
      • Okta
    • ABM
      • Qualified
      • 6sense
      • Demandbase
      • Clearbit
      • Rollworks
      • G2 Intent
      • Stackadapt
    • Marketing Automation
      • Marketo
        • How to Find Your Marketo Account Details
        • Marketo Pulled Objects List
      • Pardot
      • HubSpot
        • HubSpot Pulled Objects List
    • Other Integrations
      • Calendly
      • Drift
      • Okta
      • Segment
      • Customer.io
  • Setting up your Data for import
    • Import Custom Actions
    • Import Website Actions
    • Import Properties
    • Import Metadata
  • Technical Details
    • ↖️Website Tracking
      • How Website Tracking Works
      • Cookieless Tracking
      • Bot Traffic
      • Privacy Policy
      • GDPR Compliance
    • ⚙️Data Processing from Integrations
    • 🧮Data Cleaning
  • Account Intelligence
    • ☕Getting Started
      • HockeyStack Implementation Scope: Account Intelligence Product
      • Salesforce
        • Salesforce Permissions
        • Salesforce iFrame Installation
        • Salesforce Sync Fields
    • 🏗️Workflows
      • Creating a Workflow
      • List of Workflows
      • Starter Workflow
      • Recurring Workflow Runs
      • Nodes
        • Transformations
          • Condition
          • AI for Accounts
          • Contact Discovery
          • Contact Enrichment
          • Branching
        • Destinations
          • Salesforce
          • HubSpot
          • Outreach
          • StackAdapt
          • Salesloft
          • LinkedIn
          • Pardot
    • 👀Views
      • Create a New View
    • 🔢Scoring
      • Data
Powered by GitBook
On this page
  • Touchpoint Type property
  • Createing Defiened Properties by Uploading CSVs
  1. Documentation

Defined Properties

We discussed that each action and entity in HockeyStack can have properties. If goals are nicknames for a group of actions, defined properties are nicknames for a group of properties.

Let’s go back to our Actions table.

Timestamp

Entity

Action Name

Source

UTM Source

UTM Medium

…

bugra@hockeystack.com

start-session

linkedin

linkedin

paid_social

…

michael@dundermifflin.com

start-session

linkedin

linkedin

organic_social

…

richard@piedpiper.com

start-session

facebook

facebook

paid_social

…

gilfoyle@piedpiper.com

start-session

facebook.com

This table depicts a list of website sessions from various sources. The properties Source, UTM Source, and UTM Medium have meanings on their own. But they have a much larger meaning when looked at together. For example, a UTM Source = linkedin and UTM Medium = paid_social might mean LinkedIn Ads, and a UTM_Source = empty and Source = facebook.com might mean Facebook Organic.

Let’s say we want to add another column to our table to depict this meaning, which will be called “Channel” Our ruleset will be:

  • If UTM Source contains “linkedin” and UTM Medium contains “paid” → LinkedIn Ads

  • If UTM Source contains “linkedin” and UTM Medium contains “organic” → LinkedIn Organic

  • If UTM Source is empty and Source contains “facebook”, or if UTM Source contains “facebook” and UTM Medium contains “organic” → Facebook Organic

Timestamp

Entity

Action Name

Source

UTM Source

UTM Medium

Channel

…

bugra@hockeystack.com

start-session

linkedin

linkedin

paid_social

LinkedIn Ads

…

michael@dundermifflin.com

start-session

linkedin

linkedin

organic_social

LinkedIn Organic

…

richard@piedpiper.com

start-session

facebook

facebook

organic_social

Facebook Organic

…

gilfoyle@piedpiper.com

start-session

facebook.com

Facebook Organic

This Channel property doesn’t actually exist in our dataset, but it can be inferred from the list of other properties that our actions have. This is called a “Defined Property”. You can apply the same thing on any Shared Property as well.

For example, a common Defined Company Property to define is “Region”. If your CRM only stores countries, you can create a Defined Company Property that groups relevant countries into regions.

For a ruleset like Country = “Canada” or Country = “United States” → NAM, you can imagine the below Company Properties:

Key

Value

Country

Region

company_id

12387

Canada

NAM

company_id

12354629

United States

NAM

This page is your property dictionary.

You can click on the + icon on the top right corner to create a new defined property.

Each mapping in a defined property will have:

  • A ruleset

  • And a value that the ruleset maps to

The ruleset can be constructed using and/or logic using any property in the HockeyStack dataset.

The mapped value can either be:

  • A static value

    • For example: I want to map Canada and United States to “NAM”

  • A dynamic value

    • For example: I want to create a property called Resources that stores all my resource interactions. This property will show 1- the URL of the page if the action is a pageview on a resource page, 2- the name of the email, if the action is an email open on an email with a specific subject schema, 3- blank if it’s neither.

High level filters like Action Name, Action Type, or Touchpoint Type are often overlooked by beginners to HockeyStack. In the above case, we wanted to add a specific filter to only include pageview actions, because clicks and form fills might also have a page url. The significance of this becomes clearer when you are doing attribution, where the number of touchpoints is really important.

Touchpoint Type property

Touchpoint Type is an action property that helps distinguish between different categories of sales and marketing actions.

Below is a full list:

Touchpoint Type

Conditions

Website Session

Action Type = "start-session"

Pageview

Action Type = "enter-page"

Form Submission

Action Type = "onsubmit"

Ad Impression

Action Name = "LinkedIn Ads Impressions Changed" AND Action Type = "custom"

Ad Engagement

Action Name = "LinkedIn Ads Ad Engagements Changed" AND Action Type = "custom"

Campaign Subscription

( Action Name = "Campaign Subscription Created" OR Action Name = "Campaign Subscription Updated" ) AND Action Type = "custom"

Call

Action Name = "Call Created" AND Action Type = "custom"

Meeting

Action Name = "Meeting Created" AND Action Type = "custom"

Send Sales Email

( Action Name = "Email Created" OR (Action Name = "Email Sent" AND Integration = "Salesforce") ) AND Action Type = "custom"

Send Marketing Email

Action Name = "Email Sent" AND Action Type = "custom"

Open Marketing Email

(Action Name = "Email Opened" OR Action Name = "Open Email") AND Action Type = "custom"

Createing Defiened Properties by Uploading CSVs

You can also create Defined Properties by uploading a CSV file. The format should follow this structure: <property name>, <property name>, <property name>, ..., mapped_value

For example:

PreviousBuilding an All Touchpoints (Channel) GoalNextTrack Date Properties

Last updated 13 days ago

In HockeyStack, navigate to .

Definitions > Properties