The process involved fully documenting the idea, getting it reviewed by Tealium's executive team, and working with patent lawyers to see it through completion. With minimal revisions along the way, the entire process took approximately two years until fully issued and posted to the USPTO website.
The invention entails using CSS in a web-browser to identify elements on a website to be tracked and then making server calls using CSS to track actions. Trackable actions include clicks and other events on web page elements such as links, input fields, divs, spans, and list-items.
CSS already has built in selectors which website designers use to define the styles of the website elements. By utilizing the CSS for both defining style attributes and specifying elements to be tracked, the following benefits can be had:
Tracking with CSS selectors requires an attribute associated with tracking to be placed within the CSS. In the example provided, this is marked "tracking marker" The selector will identify the element(s) desired to be tracked. The tracking marker has a value, and this is the tracking ID. The tracking ID is used for tracking purposes to distinguish between multiple elements tracked on a page. For example, when a specific button is pushed, the tracking code would know to send additional data such as page name, form id, etc. back to the server.
Tracking actions with CSS alone, is completed using the html and css loaded on the client-side web browser, and a script running on a server that parses urls requested from it.
The CSS contains style definitions utilizing Tracking URLs that are called upon the desired web page interactions. This type of style definition will be referred to as a Tracker. The URL in the Tracker is composed of a Domain Name, an Account ID, and a Tracking ID. By applying a CSS style to an HTML element, the URL will be called when the user performs the action specified by the Tracker's CSS Selector (eg: ‘active' = a user clicks the element, or ‘hover' when a user hovers their mouse over the element).
Due to the inherent properties of CSS, multiple trackers may be applied to the same HTML element, Trackers may be triggered by nesting HTML elements that have Trackers applied to them.
Trackers can be applied to any HTML element by following it's CSS guidelines including Divisions, Spans, List Items, Form Fields, Anchor Links, etc.
The Server referenced by the URL should be configured to parse the URL into its component pieces. This involves identifying the Account ID and Tracking ID. Once parsed, a log will be kept identifying which Tracker ID was called, which account it was called for and when it was called. From this log, a record of how many times an Account's Tracker ID was called for a given timeframe can be generated. The Server referenced by the URL may also get further details from the HTTP Referral data including the specific server and page making the request, the user's IP address, browser information, and user agent.
Tracker style definitions may be embedded in the HTML file, or be in their own CSS file and included in the web page. This CSS file may also be generated by and hosted through an event tracking service.