Nothing Special   »   [go: up one dir, main page]

US20200236569A1 - Cross-channel user tracking systems, methods, and devices - Google Patents

Cross-channel user tracking systems, methods, and devices Download PDF

Info

Publication number
US20200236569A1
US20200236569A1 US16/840,110 US202016840110A US2020236569A1 US 20200236569 A1 US20200236569 A1 US 20200236569A1 US 202016840110 A US202016840110 A US 202016840110A US 2020236569 A1 US2020236569 A1 US 2020236569A1
Authority
US
United States
Prior art keywords
user
identifier
mobile device
universal
tracking
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US16/840,110
Inventor
Christos Manolarakis
Mark Sutterlin
Andrew Milkowski
Guowei Zhang
Stephanie Luxenberg
Rick Landsman
Maurice J. Carron
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mgage LLC
Original Assignee
Mgage LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mgage LLC filed Critical Mgage LLC
Priority to US16/840,110 priority Critical patent/US20200236569A1/en
Publication of US20200236569A1 publication Critical patent/US20200236569A1/en
Assigned to MGAGE, LLC reassignment MGAGE, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CARRON, MAURICE J, LANDSMAN, RICK, MANOLARAKIS, Christos
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/08Testing, supervising or monitoring using real traffic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
    • H04W4/23Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel for mobile advertising

Definitions

  • User tracking is a prominent trend in online media. The ability to track and uniquely identify users is important for a wide range of marketing strategies. It is therefore expanding rapidly from the online to the mobile world. User interactions with mobile devices, along with the consumption of mobile services, can relay significant information about a user's behavior and their demographics. Understanding the user becomes equally important to the role and the utility of those services with regard to discovering user insights and intents. That intelligence is critical for prediction and optimization of marketing campaigns and their creative performance.
  • Mobile marketing efforts usually include various vendor products and services, along with 3 rd party technologies and services to achieve campaign reach, frequency and conversion objectives. Achieving such objectives often requires use of a mix of marketing communication channels. Mobile user tracking is normally isolated with regard to individual products or individual marketing channels. As a result, tracking individual users across channels is not easily achieved.
  • Conversion is a standard metric used to measure the success of marketing campaigns, which can be based on the attrition of users that fail to proceed to each touch point on the way to completion of an actual user action.
  • Examples of conversion events may include a file download by the user, a completion of a user registration form, or a purchase of products or services. Determining when a user clicks on an ad, watches it, and then whether or not the user takes action with respect to the ad is challenging. Evaluating conversion is further complicated by the wide ranges of activities, interactions and channels a user can undertake.
  • Mobile ad servers log impression delivery when ad tags are transmitted to a publisher's content server.
  • a more desirable approach is to count impressions after actual presentation of the marketing messages to end users.
  • Most mobile SSI systems have no way of determining whether an ad was delivered to the device and played to completion. The result is discrepancies in impression counting.
  • Another example of the problem occurs when users navigate to new content before an ad creative has completely rendered. The result is impressions reported as delivered, even though not seen which can be a basis for advertiser payment concerns.
  • a need therefore exists for analysis and reporting tools to inform their allocation decisions.
  • a need also exists to address issues relating to user tracking across different channels and to improve conversion and track return on investment.
  • the embodiments of the invention address this need and others.
  • the invention relates to systems, methods, non-transitory machine readable media, devices and systems configured to correlate user activities such as interactions with messages and other content across multiple mobile marketing channels.
  • one or more software-based methods are implemented on the client side of the network such as within a client device such as a mobile device to facilitate cross-channel user tracking.
  • One embodiment of the invention relates to end to end cross channel user tracking which includes tracking unique users across multiple delivery channels, across multiple campaigns and within a given campaign.
  • a universal identifier provides a deterministic mapping of individual channel user identifiers to each other by uniquely mapping each of them to a single unique universal user identifier assigned to an individual channel user's device. This allows that user to be identified across marketing communication channels accessed with their device.
  • a universal identifier provides a probabilistic mapping of individual channel user identifiers to each other by uniquely mapping each of them to that single unique universal user identifier assigned to their device. Combinations of user tracker using a universal identifier and both deterministic and probabilistic mapping methods are also embodiments of the invention.
  • channel specific user identifiers such as EIDs
  • VID generated universal ID
  • Cross channel user correlation can be accomplished by embedding requests for remote programs in content and advertisements consumed by users on their mobile device. External programs are retrieved from remote servers when content is rendered by device resident applications. These programs incorporate software modules and computing devices that capture individual channel user identifiers as the user navigates across media distribution channels.
  • the term federated refers to usage of a universal identifier that is generated by the federation of unique (non-universal) identifiers collected from the same user.
  • the storage of user information with regard to multiple channels under a single identifier can be referred to as federation because it federates identifiers for the user across channels, apps, emails messages, etc.
  • New channel correlations can be transmitted to a remote server application as the user accesses each channel for the first time. These correlations allow server side federation of the user information associated with each channel's user identifier, maintained by the delivery channel itself.
  • additional federation with 3 rd party online and offline data sources can optionally be used to generate user profiles that include a superset of each channel's identifying information, merged with additional 3 rd party information for that same user. Analysis of that expanded data set can be used to generate enhanced psychographic, demographic and lifestyle segmented user profiles.
  • the invention relates to methods of user tracking across channels suitable for evaluating the success of a given mobile campaign or activity.
  • tracking features suitable for evaluating which ads have the highest activity levels, user interest for a website, the number of returning visitors, or other conversion metrics are another embodiment of the invention.
  • Software and system tools to correlate the impressions and clicks associated with mobile web site user events and engagements are another embodiment of the invention.
  • software-based user interfaces and reporting tools suitable for managing multichannel advertising budget allocations and to measure accurate, channel-specific return on investment are other embodiments of the invention.
  • a computer-based method of tracking a user across a plurality of communication channels may include generating a first non-universal user identifier associated with a first communication channel in response to a first action of a mobile device.
  • the method may further include generating a second non-universal user identifier associated with a second communication channel in response to a second action of the mobile device.
  • the method may also include storing the first non-universal user identifier and the second non-universal user identifier in a data repository.
  • the method may additionally include correlating, using an application installed on the mobile device, the stored first non-universal user identifier and the stored second non-universal user identifier with a universal identifier having an associated user profile.
  • the method may include associating the universal identifier with a plurality of actions performed with the mobile device such that the associated user profile comprises a mapping between the universal identifier and activities performed by the user across the plurality of communication channels.
  • the method may include generating a third non-universal user identifier associated with a third communication channel in response to a third action of the mobile device.
  • the first, second, and third communication channels may be selected from the group consisting of receiving text messages, receiving emails, viewing a video, viewing a webpage, viewing a video ad, viewing a webpage ad, interacting with social applications, and downloading an application.
  • the profile may be generated using approximation methods including clustering and probabilistic matching using a plurality of mobile device channel specific identifiers.
  • Associating the universal identifier with a plurality of actions may be performed using a computing device running a Bayseian Network to perform probabilistic user matching.
  • the method may include comparing one or more user profiles to incoming request profiles using a probabilistic Bayesian network running on computing device.
  • a computer-based system of tracking a user across a plurality of communication channels may include one or more receivers, executing on a computing device.
  • the one or more receivers may be configured to collect the information from the plurality of communication channels.
  • the system may further include an event ID generator configured to provide non-universal user identifiers that can be matched to a universal user identifier.
  • the system may also include a data repository comprising a plurality of non-universal user identifiers. Each non-universal user identifier may be associated with one communication channel of the plurality of communication channels.
  • the system may additionally include a federation server configured to receive user actions associated with each communication channel from a mobile device client application.
  • the federation server may be configured to generate a universal identifier using the received user actions and the plurality of non-universal user identifiers.
  • the system may include a compact uniform resource locator (URL) software module configured to compact a mobile web URL accessed by the mobile device and generate a non-universal user identifier associated with the compacted mobile URL.
  • the communication channels may be selected from the group consisting of receiving text messages, receiving emails, viewing a video, viewing a webpage, viewing a video ad, viewing a webpage ad, and downloading an application.
  • the system may further include a privacy software module configured to enable the user to opt out of being tracked using a universal identifier.
  • the system may additionally include a privacy software module.
  • a computer program product residing on a computer readable storage medium may have a plurality of instructions stored thereon, which, when executed by a processor, may cause the processor to perform operations for tracking a user across a plurality of communication channels.
  • the operations may include generating a first non-universal user identifier associated with a first communication channel in response to a first action of a mobile device.
  • the operations may further include generating a second non-universal user identifier associated with a second communication channel in response to a second action of the mobile device.
  • the operations may also include storing the first non-universal user identifier and the second non-universal user identifier in a data repository.
  • the operations may additionally include correlating, using an application installed on the mobile device, the stored first non-universal user identifier and the stored second non-universal user identifier with a universal identifier having an associated user profile. Moreover, the operations may include associating the universal identifier with a plurality of actions performed with the mobile device such that the associated user profile comprises a mapping between the universal identifier and activities performed by the user across the plurality of communication channels.
  • the operations may further include generating a third non-universal user identifier associated with a third communication channel in response to a third action of the mobile device.
  • the first, second, and third communication channels may be selected from the group consisting of receiving text messages, receiving emails, viewing a video, viewing a webpage, viewing a video ad, viewing a webpage ad, interacting with social applications, and downloading an application.
  • the profile may be generated using approximation methods including clustering and probabilistic matching using a plurality of mobile device channel specific identifiers.
  • the mobile device channel specific identifiers may be selected from the group consisting of a first party cookie, a third party cookie, and a plurality of product identifiers.
  • Associating the universal identifier with a plurality of actions may be performed using a computing device running a Bayesian Network to perform probabilistic user matching.
  • the operations may further include comparing one or more user profiles to incoming request profiles using a probabilistic Bayesian network running on computing device.
  • FIG. 1A is a schematic diagram of a system of cross-channel user and event tracking in accordance with an illustrative embodiment of the invention.
  • FIG. 1B is a schematic diagram of a mapping between a plurality of non-universal identifiers and a universal identifier implemented on a computing device to facilitate cross-channel user and event tracking and reporting in accordance with an illustrative embodiment of the invention.
  • FIG. 1C is a schematic diagram of an example mobile server side include advertising system, in accordance with an illustrative embodiment of the invention.
  • FIG. 2 which is split into FIGS. 2-1 and 2-2 along connectors A and B respectively, is a schematic diagram of a system of cross-channel tracking with respect to several communication channels.
  • FIG. 3 which is split into FIGS. 3-1 and 3-2 along connectors A and B respectively, is a schematic diagram of a system of cross-channel tracking with respect to several communication channels.
  • FIG. 4 is a schematic diagram of a system and one or more components used to perform cross correlation of the various distribution channels in accordance with an illustrative embodiment of the invention.
  • FIG. 5 is a schematic diagram of a compact URL service for encoding in accordance with an illustrative embodiment of the invention.
  • FIG. 6 is a schematic diagram of an application tracking system accordance with an illustrative embodiment of the invention.
  • FIGS. 7A to 7F are a screen shot and representations of user tracking or advertising information of interest that can be displayed as part of an automatically generated report or user interface in accordance with an illustrative embodiment of the invention.
  • FIG. 8A is a schematic diagram of an implementation in accordance with a illustrative embodiment of the invention.
  • FIG. 8B is also schematic diagram of an implementation in accordance with an illustrative embodiment of the invention.
  • FIG. 8C is also schematic diagram of an implementation in accordance with an illustrative embodiment of the invention.
  • FIG. 8D and 8E are a schematic diagram of universal JavaScript implementation in accordance with an illustrative embodiment of the invention.
  • FIG. 8F is an exemplary opt out workflow allowing users to opt out of federation server participation in accordance with an illustrative embodiment of the invention.
  • FIG. 8G is an exemplary opt in workflow allowing users to opt into federation server participation in accordance with an illustrative embodiment of the invention.
  • the invention relates to systems and methods for tracking user interactions such as the interactions of a mobile device user with respect to a plurality of communication channels.
  • Mobile Internet advertising includes streaming graphic or video files, in real time, into content as it is rendered at a user's mobile device. Those image or text marketing communication messages are inserted into the content at the publisher's content management system. Selection of a specific ad and its insertion occurs prior to returning the user requested content over a carrier's network. Images and texts are just a few of the many types of communication channels a user can interact with and receive ads and content through.
  • FIG. 1A shows an exemplary cross-channel tracking system 5 suitable for use with a user of a mobile device 7 .
  • various communication channels 8 are typically accessed via the mobile device 7 .
  • a given communication channel such as for example, a 3rd Party Ad Serving Channel, Application installs from other applications and mobile, 3rd Party Ad. Serving Channel, Marketing and CRM Message Channels, 3rd Party Ad Serving Channel, Mobile 3rd Party Site Channel, Mobile Ad Serving Channel, Server Side Include Ad Server User Tracking, Native Application Channel, other events and interactions, and other channels
  • a non-universal identifier corresponding to a user identifier or an event identifier (“EID”) can be generated in response to a user action with the mobile device 7 .
  • EIDs can be stored with a user profile using a computing device in one embodiment.
  • a non-universal user or event identifier EID is generated such as EID I to EID N.
  • the user is unique.
  • a unique universal user identifier or VID can be associated with each mobile device as shown in the software-based identifier mapping 10 .
  • a computing device 12 can be connected to a network to receive tracking information associated with each EID and associated that with a VID.
  • computing device 12 stores or runs a matching engine to match or map EIDs and a VID on a per mobile device basis. In turn, on a per EID basis, each EID can be mapped to the VID.
  • each EID can then also be mapped to another EID as shown in FIG. 1B .
  • EID 1 and EID 8 are mapped to the VID for mobile device 7 from FIG. 1 and the VID is also mapped to by EID 6 and EID 2 .
  • each EID would map to the VID.
  • the paths from one EID to another such as from EID 1 to EID 6 and from EID 2 to EID 1 , and from EID 8 to EID 6 can be generated. These paths allow useful demographic and profiling information to be generated for a given user of mobile device 7 .
  • a user accesses a mobile device application, such as an iPhone application, and through an SDK, the entity providing the SDK collects an SDK specific identifier which can be an event identifier such as EID 1 . That is a unique identifier, but since the apps are sandboxed this identifier is considered non-universal. It is not universal in the sense that absent more it typically cannot extend to other apps (e.g. web browser) for identification purposes. That said, this approach allows the entity providing the SDK, or a client application to confirm or probabilistically confirm that the entity is getting interactions from the same user.
  • EID 1 event identifier
  • the invention relates to generating a profile data store for identified users across applications of other mobile interactions. As shown in FIG. 1B , EID 6 and EID 1 and thus a mobile browser event and an SDK event can be associated with a particular mobile device user and a VID.
  • the profile data store collects user profiles or the unique identifiers or EIDs. In one embodiment, the profile data store also enhances such EIDs with other possible attributes e.g. location, behavioral etc.
  • the respective information in each product channel during federation flows to a common server side profiling data store.
  • a matching process in some cases using approximation techniques, can be used to identify users across channels where correlation in the client is not possible, for example non-JavaScript enabled mobile devices.
  • the consolidated result is assigned to a universal user identifier, VID. Additionally, a VID can be requested by, or transmitted at the time of correlation, to each product channel data store as a mapping to its associated federated user profile.
  • SSI server side
  • the publisher's content management system requests an advertisement over the broadband internet from an ad server, which selects a specific campaign ad and returns associated ad tag markup to the requesting publisher's system.
  • Insertions of the ad markup at the publisher's content management system is accomplished using a technique called server side include, tags or SSI tags.
  • This technique refers to using variable values that a server can include in a content file before it sends it to a requesting user.
  • the server will obtain the value associated with the variable name and insert it before the content is sent to requesters.
  • the server searches content templates for environment variables and runs associated software to insert variable information in the places in the page where “include” statements were embedded.
  • a software package is provided to a publisher that performs communications with an advertising server, step A 1 , A 2 and A 3 in FIG. 1C .
  • the software is often called a convenience ad request package and supplied in a variety of programming languages specific to publisher systems.
  • This communication results in the return of ad markup tags specifying a particular ad or content.
  • the ad or content is retrieved when the ad markup tag is rendered by the device, directly from the server hosting the ad or content, steps A 4 , A 5 and A 6 .
  • the ad markup tag can also define an address of a landing page to redirect a user's browser to when the ad is clicked.
  • Client device generated ad requests and counting mechanisms are necessary to accurately distribute revenue across multiple parties, as well as for delivery auditing; tong the standard in traditional advertising.
  • the tags are inserted into the content replacing the server side include ad placement variables. This occurs prior to transmission of the content to the end user device.
  • Mobile SSI ad server user tracking advantageously uses ad servers to provide a mechanism to track users by associating them with a unique 3rd party cookie value maintained in the ad server database.
  • This cookie value can be passed by the publisher using a convenience ad request package for storage in the device browser.
  • the advantage of this convenience package pass through cookie is set as a 1st party cookie in the publisher domain, rather than a 3rd party cookie from the ad server domain. This occurs as a result of the convenience package running on the publisher domain content servers.
  • Such cookies provide one basis to obtain EIDs with respect to a given mobile device and the particular channel using such cookies.
  • the results EIDS can be mapped to a VID using one or more computing devices as outlined herein.
  • 3rd party cookies are often blocked by default configurations in most device browsers.
  • Translation of 3 rd party ad server cookies to 1 st party cookies through a convenience package allows anonymous user profiling to determine unique visits as well as frequency capping the number of times an ad is presented to each individual.
  • that 1 st party cookie is transparently transmitted to the ad server through the convenience package with the ad request, converting it back to the 3rd party ad server cookie unique to individual devices.
  • the convenience package passes protocol information, e.g., HTTP headers, allowing carrier and device targeting data to also be passed to the ad server.
  • User call to action conversions can be tracked when a user clicks on an ad, via additional markup anchor tags inserted at the publisher content management system alongside the ad request itself. These conversions can be used to generate EIDs. This performs a subsequent request to the ad server, encoding a mapping to a destination address for a landing page associated with the relevant ad or content. This mapping is configured for a specific campaign in the campaign management system. The server records a click through for a user when it receives that request.
  • the server After recording a click through, the server redirects the user's browser to the actual landing page previously configured for the campaign. Additional markup code in that subsequent landing page, for example, such as transparent tracking pixel requests, can be embedded to track user's arrival at specific landing pages. The markup can also then track their navigation through additional pages of a brand's site. The result is a fine granularity of conversion analytics and segmentation for targeting users and generating EIDs.
  • Native application ad serving works similar to online Web based advertising, as opposed to mobile web SSI advertising, can also be modified to support tracking and thus EID generation.
  • the selection of an ad is made in real time when the client device application requests an advertisement. Requests from the native application are communicated to an ad server directly. Thus, in one embodiment, no convenience package is used. This makes a decision on which ad source to serve an ad from at the time of the request.
  • Mobile application advertisements are typically presented to users in a view within the application itself, commonly called a Web View, rather than the device Internet browser.
  • a native application on mobile devices has its execution environment. This environment securely sandboxed from the browser and other applications preserves privacy and restricts unauthorized information access.
  • User information can be transmitted in parallel with the client ad request in appropriate HTTP protocol headers, or embedded in the ad server request URL. Since native applications have access to hardware, retrieval of the device ID serial number, or its unique wireless radio MAC address, obviates the need for cookie support. Those attributes are usually encrypted such as hashing one way, such that direct personally identifiable information (“PII”) is not transmitted outside the device.
  • PII direct personally identifiable information
  • the actual ad or content is then returned in a format the mobile application can decode, e.g., XML templates, while also containing the address of each media file to retrieve from a creative server.
  • the application or its advertising SDK has retrieved all the media components that make up the ad, the advertising experience will be presented to the user at the appropriate time as designated by the application developer.
  • User interaction information and redirection of the user to a conversion landing view can be transmitted to the ad server as appropriate. This can be used to generate EIDs specific to native applications such as EID 4 of FIG. 1A .
  • Mobile marketing activities can include a rich set of interactions that enable users to engage with a campaign.
  • a call to action is required to transfer a user from the advertising activity that aims to inform the users about the interaction to an actual target destination.
  • the uniquely identified information often depends on a registration channel with respect to which the user provides “Opt in” user identifying information.
  • the MSISDN unique user telephone identifier can be automatically captured by the SMS and MMS system, or an email address in the case of IP Messaging.
  • the user is usually assigned a system generated identifier representing user identifying information without transmitting that PII data.
  • Client side user engagement tracking within a mobile site can be implemented including a JavaScript file request incorporated in pages of the site or its advertising.
  • the JavaScript allows user tracking which allows an EID to be mapped to a VIA.
  • suitable JavaScript markup language or code renders and downloads an external JavaScript file containing software or instructions, such as JavaScript, for tracking a user's interaction with site content. This software or instructions make real time requests to tracking servers to record page views and content interaction events.
  • the JavaScript code can also gather information about the device execution environment and send that information to a tracking server with the HTTP requests from the visitor's browser.
  • the document object model (“DOM”) of a content page contains various browser and system information, such as the browser's version and the screen resolution that can be captured and sent. Additionally, requests can contain locations a visitor came from, their Internet address and automatic changes in their time zone as updated by a mobile carrier's network.
  • Mobile marketing companies employ a portfolio of products supporting the creation and execution of mobile marketing and advertising campaigns. These companies provide mostly managed services, but some are pursuing the development of self-service end to end platforms that agencies and brands ultimately manage themselves. Each point solution traditionally has its own mechanisms to track and retrieve information about individual users, e.g., cookies that could be stored in user's devices and retrieved at a later time. This user information could then be used to support new campaign activities, business intelligence operations or more detailed reporting.
  • End to end user tracking across channels is important to capture and offer the value that comes from user level specific information in the advertising industry and others.
  • Incoming requests instantiated by a users' device can take any form ranging from mobile web sites to, applications, SMS, video and rich media and social networks response channels.
  • Using a universal JavaScript tracking solution is one mechanism for user and device recognition.
  • JavaScript based tracking is also an important approach for mapping EIDs to a VID.
  • cookie ingestion is not possible.
  • user devices may block cookies or a cookie may fail to be retrieved during the session or user interaction is such that cookie cannot be enabled.
  • an additional computational method within a matching engine is responsible for identifying resemblance to recent, known user signal collected.
  • the invention relates to end to end user tracking across marketing communication channels that enables federating unique information for each user across channel specific data stores the user interacts with. This is based on existing unique channel user identifiers, labeled EID ([user] Event ID) as shown in FIGS. 1A-1C and 2 .
  • EID [user] Event ID
  • FIG. 2 a system 15 for cross-channel user tracking is depicted.
  • Effective data strategies are predicated on gaining as close to a complete understanding of a user as possible, via the aggregation of a large and diverse set of anonymous user-level data.
  • the system 15 and transfer steps shown in FIG. 2 can be used to aggregate, organize, and normalize data points across a centralized database of unique users. It can be integrated into ad servers to understand why an ad was served to begin with for example and to analyze outcomes.
  • Campaign optimization is derived from an ability to align data, inventory and creative; with greater alignment leading to greater campaign and creative performance.
  • FIG. 2 The integrated application of the methods described in order to uniquely correlate and identify user attributes coming from a set mobile marketing communication channels is shown in FIG. 2 .
  • the universal tracking mechanisms 27 employed in each channel ( 21 a , 22 a , 23 a , 24 a and 25 a ) are sending the collected information to the “receiver” layer or receiver 26 .
  • the receiver layer 26 includes collected user events (signals) from all possible product channels into a persistence layer 26 .
  • Each user event tuple of collected attributes is funneled through the receiver layer 26 to the Event ID generation queue 28 that is responsible to issue an EID. That is the event identifier and also a unique id for the corresponding tuple that upon matching is replaced by the universally assigned VID.
  • the queuing service 28 collects and processes the requests. In one embodiment, the service 28 processes the requests on a first in first out basis. In an embodiment, this processing occurs substantially in real time.
  • the released rows from the queue are pushed to temporary data store 29 that upon EID assignment by the EID generator 30 pushes the corresponding rows to the multi-channel tracking data store 31 .
  • the MCT data store 31 based on the campaign id of each incoming row segregates the collected events by campaign in respect of permissions management and privacy constraints (if any).
  • the MCT Data store 31 also algorithmically obfuscates information that can be considered. PII through hashing. A typical representation of the information residing in the corresponding data stores 32 is shown. Each tuple of collected user event and profile attributes, such as the list of boxes in the bottom left portion of FIG. 2-2 , is identified by an EID. With respect to data store 32 , as shown by the placement of the dots in the identifier grid, a dot in the upper left represents a unique identifier and a dot in the upper right box of a ntuple represents a non-unique identifier. The user related tuples can contain both unique and non-unique identifiers based on the event or activity of the user.
  • the unique identifier allow for deterministic matching 33 and immediate association of the corresponding EIDs with a universal identifier. In cases that the latter is not technically possible, (such as when rows include non-unique identifiers), a non-deterministic approach such as a probabilistic approach is used. For example, approximation techniques using thresholds to make probabilistic matching between a device and a channel are shown with regard to probabilistic matching instance 34 can be used. Entries with EIDs that meet the set threshold criteria are updated with a VID identifier as well. In general, if matching occurs, a VID is generated or matched to the EID.
  • Programmatic extensions that allow integration with 3 rd party identification services 35 are implemented in one embodiment. There are cases that integration with 3 rd party identification services allows the collection of an additional identifier for specific user events. This identifier is a key or character sequence that is mapped to 3 rd party identification service datastores. Upon matching the identified user is getting a VID that allows the user to be identified universally.
  • the VID generator 26 upon assignment of the VID to the matching tuples pushes the identifier to the corresponding universal tracking modules 27 .
  • the latter allows recurrent real time identification of the user in any subsequent request.
  • one embodiment of the invention is configured to be independent from the ability of the device or network to uniquely identify the user. In addition, it is configured such that in those cases where unique identification is possible, the process remains the same having only the respective VID carrying more information. Finally, the data store of the user with the VID can be immediately used as a reference store for demographic or behavioral targeting and other audience profiling activities.
  • a site analytics event logging mechanism and application is implemented using a server. It is used to aggregate user tracking correlation data from individual users for storage in a server user profiling database.
  • the individual channel identifiers, EIDs, mapped to a unique VID can be stored as foreign keys into the respective product channel databases and their user information.
  • FIG. 3-1 shows the client side—the flow of information from the mobile device. As shown, several mobile devices are operating with respect to one or more campaigns or otherwise simply being used by their users.
  • the app decorated URL indicates that the click through URL is enhanced with the application ID. This also causes attributes to be passed and for a browser start up to be triggered on device 7 .
  • User events are sent to the receiver 26 also known as the receiver layer.
  • the MCT v Tags are the JavaScript components used to capture events. These tags are read/written into a local data store as shown. In general, from clicking on an ad to getting it takes about 500 ms.
  • Each of the elements in FIG. 3 can be implemented as a software module or software layer.
  • the EID from the receiver is transmitted to the multi-channel tracking data store which can be implemented using a cloud based infrastructure.
  • a database at the MCT datastore that includes the EIDs receives information from MapReduce Operations which also sends data to the matching engine.
  • the MCT matching software performs EID/VID mapping and updates existing VID with new EID mappings thereto.
  • the product store provides tracking information for a particular channel.
  • the audience management software updates user profiles with additional user attributes from the product stores.
  • VID Universal User Identifier
  • a client side agent is created and used to collect and send events in order to support the mapping of individual channel IDs (EID) to the same universal user ID, for each device.
  • the client side agent can be implemented using the Universal User Tracking JavaScript approaches described herein, user interaction logging with mobile content is performed on the server-side, in standard log files of the ad server.
  • Scripts executed inside a client device are an extensible way of logging user interaction with rich media advertising and mobile site content.
  • user client side tracking across channels is accomplished by inserting script tags in the content or advertisement.
  • Another embodiment of the invention automatically incorporates user tracking by configuration, e.g., in ad or landing page authoring tools.
  • user tracking by configuration e.g., in ad or landing page authoring tools.
  • minimal integration of the agent script tags in content pages provides for tracking and reporting user interaction in manually contained channels as well.
  • updates performed by the JavaScript tracking agent can be classified into two types.
  • the first type includes agents that track page views.
  • the second includes agents that track content object user interaction events. Each type is submitted to corresponding endpoints of the receiver of the events 26 .
  • a server application for reporting In a server application for reporting.
  • the universal scripted agent incorporates functionality to store User ID mappings between the VID and the various product channel User IDs as they are accessed by that user. These are stored in a client side HTML 5 database or another database. Additionally, the JavaScript agent incorporates end-to-end user tracking event logging to appropriate analytic server applications, using standard HTTP requests.
  • cookies are traditionally used to track visitors within campaigns.
  • 3rd party cookies can identify a visitor uniquely invoking the JavaScript agent, while a campaign cookie could be used to identify campaigns that user has participated in, resulting in cross campaign tracking.
  • HTML 5 cross domain page messaging allows writing and reading first party cookies by the agent from inside the device. This is accomplished in cooperation with the publisher content page containing the script tags. As a result, circumventing 3rd party cookie restrictions is made possible.
  • a VID cookie can be written from the agent inside the device, which can be read by components in the same domain as the script server. This allows passing of the VID directly to an ad server. This allows the VID to correlate at the time of ad request its own channel user ID cookie previously set. This provides real time targeting of the universal cookie by ad servers, using information federated from other channels.
  • Server side probability mechanisms can correlate signals as a result of user actions across channels. Users often follow conversion paths from an ad or other content that cannot be fully tracked. As a result, the issuance of a VID by using exact correlation techniques is not possible. In these cases, approximation algorithms are used to provide estimates about the correlation of collected identifiers. Once a specific threshold (pre-set or automatically defined) is exceeded, the qualified user events are assigned a VID that updates the corresponding product channels.
  • Feature phones usually lacking local browser accessible persistent storage, can use a matching process, using approximation techniques, to identify users across channels where correlation in the client is not possible. For example, probabilistic Bayesian Networks can compare existing user profiles served previously against incoming request profiles.
  • Collecting protocol headers and their values, identifiers and attributes, along with browser internally detectable attributes can determine if a channel profile matches a profile previously seen. If not, that incoming profile is saved in the user profile database as a new user.
  • a VID persisted within the client device as a result of an external JavaScript, can accomplish deterministic cross channel user correlation inside mobile devices.
  • the individual product channel user tracking identifiers are associated with that VID, when a user accesses each type of channel for the first time.
  • One objective of user tracking end to end across marketing distribution channels is to provide solutions that enable the exchange and leverage of user information across all point products employed, across all campaigns.
  • a universal identifier to uniquely identify individual user device interactions is one embodiment of the invention. This VID can be correlated with individual product user IDs, such as EIDs, for each channel as a user accesses them.
  • Identifying attributes captured during the interactions may include the MSISDN telephone number for SMS and MMS messaging products, Email addresses for CRM channels, Application IDs for native applications, mobile web browser cookies, as well as Network Operator information.
  • MSISDN telephone number for SMS and MMS messaging products Email addresses for CRM channels
  • Application IDs for native applications mobile web browser cookies
  • Network Operator information may be assigned a hash number and subsequently grouped and mapped to the universal ID assigned to that user.
  • One way hashing of any personally identifying information ensures obfuscation of all PII information, without compromising the user unique identifiers, such as their MSISDN telephone number.
  • Users can be segmented into groups using federated data from the individual products as well as 3rd party information sources. These segments can then be used for premium targeting, as well as enhanced analytics using data sources such as Nielsen's PRISM segments.
  • smart mobile devices configure to use HTMLs or higher are used to track users.
  • a probabilistic implementation for cases in which deterministic matching is not possible, is also an embodiment as described herein.
  • One embodiment of the invention relates to correlating representative channel identifiers with a universal user identifier enabling cross channel tracking.
  • the unique user identifier specific to that channel is stored in a client side database, e.g., a HTML 5 database, correlating that channel with the universal user ID, as well as all other channels that user has accessed.
  • Special events via a receiver (listener layer) are logged to a server user profiling application using analytic event tracking facilities. Additional information regarding the user's device environment is also logged to a given software application embodiment.
  • FIG. 4 shows a system and some components used to perform cross correlation of the various distribution channels. It should be referred to, along with the previous descriptions of each component, during the subsequent descriptions for cross channel correlation for HTML 5 iOS and Android smart devices.
  • This implementation makes possible the use of a universal JavaScript to read 1st and third party cookies set by the components that make up a marketing and advertising platform.
  • a platform is Velti's mGage platform.
  • Mobile Ad Severs normally support three ways to uniquely identify and store user information.
  • a user ID provided by the operator 1 st party cookies stored in user's devices, and session identification. These options can be used interchangeably and in combination, given certain conditions apply.
  • the mobile advertising server is white listed by a carrier, or an operator supports it unconditionally; it is possible to capture unique identifications assigned by the network to a user's device, upon device registration.
  • Operators that support the provision of the particular information may in some cases alter unique identifiers for users, e.g., by rotation of identifiers across multiple users. In that case it is harder, if not impossible, to uniquely identify users. In such cases, one of the other methods may apply as a means to circumvent the issue.
  • the Ad server creates a unique identifier with two goals, the first of which is to track repeated unique visits for frequency capping. The second is to use this information for a user tracking cookie stored in devices.
  • the ad server convenience package executed on a publisher's content management system, can be used to pass an ad server cookie to the device.
  • the convenience package is responsible for translating the ad server 3rd party domain cookie to a publisher's 1st party domain cookie. Otherwise that cookie would be a 3rd party cookie in a different domain and is often blocked at the browser, it is responsible for translating back the cookie for repeat visits, as well as pass header information describing the device type and carrier.
  • 3rd party ad serving that is an ad server ad tags are delivered from another vendors ad server
  • unique user identification may not be applicable at all if cookies are disabled or disallowed.
  • the Ad Server can be used to uniquely track impressions and their click through, but identification of the user requires using a cookie mechanism to ingest a cookie to a user's device upon cookie delivery. That requires that 3rd party cookies are enabled by the browser configuration.
  • One embodiment circumvents this situation by including the “Universal JavaScript URL” in tandem with the actual ad request when inserted into third party ad server campaigns. It is common practice to traffic multiple graphic requests as a compound ad tag using transparent tracking pixels for example. In a preferred embodiment, the Universal JavaScript request serves the same purpose a tracking pixel would, but delivers the ability to perform the same capabilities as discussed herein.
  • the following approach describes the steps to determine that a user on a device, installing and interacting with any number of iOS or Android applications, is the same user accessing the mobile web through the device browser. It makes use of a special Internet address called a custom URL. That URL is a unique and persistent Internet address for invoking a specific native application installed on the device. It is normally used for clicking on links in pages rendered in browser to invoke the application.
  • custom URLs will be used in a different manner, by appending it as part of the query string of a browser ad request URL. That URL is used to present a new ad format in a browser window, rather than the native application itself. It essentially provides a call back mechanism to the requesting application when the browser ad is terminated by the user or the ad itself.
  • the ad request URL When the ad request URL is invoked by the application, it will cause an HTML 5 content ad to be requested from an ad server and returned to the browser window for rendering. The same approach can be applied for these cases where the user clicks on an ad link served within the native application.
  • Embedded in that content is a site analytics event tracking JavaScript. Enhancements are added to that script that allow the custom URL to be retrieved from the browser address field and stored in the browser HTML 5 local database. The VID delivered with the JavaScript file is also maintained in that database. This mechanism provides a filly correlated unique mapping of a Native Application ID and device ID to the universal ID for that user. Lastly, the custom URL is invoked when the ad completes or the user closes the ad, using it to return to the native application at the same point prior to the browser ad event. The steps executed are:
  • the serving of ad tags from third party ad servers into a 3rd party hosted site using a hosted creative or tracking pixel can make use of the previously explained approach to track a user.
  • the previously described JavaScript is trafficked the same way a tracking pixel is, in parallel with any other trafficked ad tags.
  • the individual product channel specific user identifiers can be captured and saved in the client side database of any HTML 5 smart device.
  • the channel specific user ID is passed to the JavaScript executing in the page, encoded in the Internet browser address field. That ID is usually contained in the query string, and is usually hashed to be unique, encrypting any personally identifying data.
  • FIG. 5 shows the use of a compact URL service to encode a user's MSIDN in to a landing page URL, embedded in an SMS message sent to that user.
  • the compact URL will request the service convert the tiny URL into the full landing page Internet address and redirect their browser to the mobile page. That page is associated with the original SMS message.
  • a user email address could be used instead of the MSIDN phone number.
  • MDM software may enable transmission ( 1 ) of SMS information to a URL service from a mobile device.
  • An SMS service may receive ( 2 ) a hash related to a URL from the URL service and may transmit ( 3 ) an SMS+hash to the mobile device.
  • Related user strings may also be transmitted ( 3 a ) from the SMS service to an identifier management API.
  • An EID may be transmitted ( 5 ) from the identifier management API to the SMS service.
  • the user may click a link related to the SMS+hash and data may be transmitted ( 6 ) to a mobile web page system enabled with universal JavaScript.
  • the mobile webpage system may transmit ( 7 ) a related hash to a mobile web analytics system, which may transmit ( 8 ) a user string+hash to the identifier management API.
  • the identifier management API may transmit ( 9 ) an EID to mobile web analytics system and may transmit ( 10 ) a US+EID to a datastore.
  • a matching engine may pull ( 11 ) related data from the datastore and may publish ( 12 ) further related data to the datastore, which may pass the data to a retrieval API.
  • the retrieval API may also receive ( 13 a ) an EID from the mobile web analytics system and receive ( 13 ( b ) an EID:VID match from the URL service.
  • the hashed user identifier for that marketing suite channel is then accessible to the universal end to end user tracking JavaScript in the page for extraction and storage in the local database.
  • That database now contains the marketing suite channel user identifier, correlated with the stored VID and all other channels that user has accessed. Those correlations are logged to the server user end to end tracking application as well, for federation with additional data products and 3 rd party supplied data such as various targeting categories.
  • FIG. 6 is a system of an exemplary implementation of EID and VID mapping based for tracking application installations initiated from an installed application or the device browser.
  • An ad creative may be served ( 1 ) from an ad server to a publisher page.
  • a user may access the ad creative through an ad click-through ( 2 ) from the publisher page, which may communicate to an application store from which an application is available.
  • Related user strings may be passed ( 3 a ) to a receiver.
  • the application may be downloaded ( 3 ) to the mobile device and installed or launched ( 5 ) at the mobile device, which may be enabled by an SDK and/or directed by the user.
  • Related user strings may also be passed ( 6 ) to a sell side platform and then on to the receiver.
  • An EID may be passed ( 8 ) from the receiver to the sell side platform and US+EIDs may be passed ( 9 ) to a datastore from the receiver.
  • a matching engine may pull ( 10 ) data from the datastore and the datastore may receive ( 11 ) a VID from the matching engine.
  • a retrieval API may receive data and/or the VID from the datastore and an EID:VID may be passed ( 12 a ) to the sell side platform and/or passed ( 12 ) to the ad server. In this way, the system may track application installations initiated from an installed application or the device browser.
  • short codes embedded in traditional media can be used to track campaigns delivered across multiple devices.
  • the user sends a short code and keyword embedded in radio, television, computer video, outdoor billboards or printed on packaged goods from their mobile device SMS application.
  • the return of a response message with a compact URL to an associated landing page can track them as they navigate from traditional media consumed on another device to the mobile web, as explained previously.
  • FIGS. 7A-7F provide exemplary reports showing a representative example of tracking a user through the previously described marketing channels in real time.
  • FIG. 7A shows a graph of the performance of the EID generation service along with the incoming source information as part of a user interface.
  • the unique user ID for each specific marketing communications channel is recorded in the device resident HTML 5 database and transmitted to the server user tracking application only the first time the user accesses each channel.
  • FIG. 7B shows a user interface configured to aggregate information that shows the total amount of anonymously identified users, the total amount of received user events and the matched events (VID assignments).
  • FIG. 7C shows a user interface that includes a Multi Channel Tracking coverage chart shows how many of the uniquely identified users can cover any of the channels where tracking is applied. The more users identified in >2 channels the more universal the information we have about the profile of the user.
  • FIG. 7D is a user interface that shows identified users vs. marketing channel interaction events. That is a ratio to understand how the newly incoming events contribute to identify new users.
  • FIG. 7E is a user interface that shows multi Channel tracking event distribution per marketing and advertising communication channel.
  • FIG. 7F is a user interface of a substantially real time table or a real time table that shows the incoming event types, the time-stamp of occurrence that is used by the approximation matching methods along with the matching method applied.
  • This solution uses the global unique user identifier to identify user interactions. All the attributes from user events captured during the interaction may include the MSISDN (hashed), browser type, along with location information, interact address or other identifiers that can be parsed during the interaction. Attributes can be assigned a hash number to ensure PII is not stored, and is mapped into distinct groups. The collected attributes contribute in the development of unique user profiles. One of the methods used to achieve that is through hierarchical clustering.
  • Collected attribute tuples form clusters that represent unique user entities.
  • the method iteratively calculates a similarity score across clusters and merges the ones that exceed the specified threshold. The process ends when there are no additional clusters to be merged.
  • the resulting clusters are assigned a VID.
  • the latter universal identifiers update the tuples in corresponding product stores and are also supplied to the universal tracking component to allow within device matching in future user events.
  • EID corresponds to attributes that can be matched deterministically.
  • the matching EIDs are assigned an anonymous universal identifier (VID).
  • VIDs can be assigned through hierarchical clustering.
  • Other approximation techniques wrapped into the implementation of the non-deterministic matching instance include probabilistic matching. Probabilistic matching is used usually as an offline process, given its average time to complete, as an alternative method that leverages probability theory in the reasoning for user attributes correlation.
  • Bayesian Networks can be used to identify user matching cases.
  • Bayesian Networks we represent the predicting attributes in the form of an acyclic directed graph.
  • the edges in a Bayesian graph represent the dependent relation between attributes represented in vertices. Therefore the resulting network describes the probability distribution of the variables based on the dependency assumptions included in the model.
  • the latter allows the definition of Conditional Probability Tables that give a probability for a match given a set of conditions defined by the formulated network.
  • One implementation considers as matches the one with the higher probability above the threshold.
  • FIG. 8A describes a system embodiment and related method steps that allows mobile smart device native applications to invoke a browser display, which when completed returns to the application.
  • a custom URL is passed to an embedded script running in the browser content.
  • the custom URL is passed in the query string of the content URL and is unique to each application on each device. It is captured as that channel user identifier and correlated to the Universal User ID in the HTML 5 local database.
  • User tracking in the context of the Android operating system is shown in the workflow diagram of FIG. 8A .
  • Related cookie and HTML 5 implementation are described in FIG. 8B and related method steps.
  • a user tracking approach for a native iPhone application is shown in FIG. 8C .
  • FIGS. 8D and 8E describe the universal JavaScript implementation that allows capturing individual channel user identifiers and correlates them to a VID in HTML 5 local databases.
  • Various identifiers for advertising IFA are shown in FIGS. 8A-8G .
  • FIGS. 8F and 8G describe a Universal JavaScript implementation that allows users to opt out and opt back in to tracking.
  • the computing device may include a server computer, a mobile device, a client user computer, a personal computer (PC), a laptop computer, a tablet PC, a desktop computer, a control system, a microprocessor or any computing device capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that computing device.
  • the term “computing device” shall also be taken to include any collection of computing devices that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the software features or methods disclosed herein.
  • the computing device can includes machine readable medium or other memory that includes one or more software modules for displaying a graphical user interface such as a user tracking reporting interface or other interface described herein.
  • a mobile device or an end user device include, without limitation, mobile phones, smart phones, iPads, Android-based devices, tablets, personal digital assistants, hand-held computers, ultra-mobile personal computers, notebooks, laptop computers and the like.
  • the systems described herein can include one or more computers or servers that contain and/or run the application, and a visual display for viewing a graphic user interface.
  • Devices, computers, and servers preferably include a processing unit or processor, a system memory, a disk storage, a communication interface, an input device, an output device, and a system bus.
  • System bus couples system components including, but not limited to, system memory to processing unit.
  • the processing unit can be any of various available processors.
  • One or more applications can include various data elements and programs suitable for performing process steps, user identifier generation and tracking and correlation across communication channels.
  • Storage may include removable or fixed, volatile or non-volatile or permanent or re-writable computer storage media.
  • the computer readable medium can be any available medium that can be accessed by a general purpose or special purpose mobile device.
  • a computer readable medium can comprise flash memory, RAM, ROM, electrically erasable programmable read only memory (EEPROM), optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store digital information on a mobile device.
  • the computer readable medium embodies a program, functions, and/or instructions that cause a device, computer, or server to operate in a specific and predefined manner as described herein.
  • the messaging, application, and reporting discussed herein can be implemented as software code to be executed using any suitable computer language and may be stored on any of the storage media described above, or can be configured into the logic of device, computer or server.
  • Such software code may be executed using any suitable computer language such as, for example, Java, JavaScript, C++, C, C#, Perl, HTML, Visual Basic, database languages, APIs, various system-level SDKs, assembly, firmware, microcode, and/or other languages and tools.
  • the present invention may be embodied in many different forms, including, but in no way limited to, computer program logic for use with a processor (e.g., a microprocessor, microcontroller, digital signal processor, or general purpose computer), programmable logic fur use with a programmable logic device, (e.g., a Field Programmable Gate Array (FPGA) or other PLD), discrete components, integrated circuitry (e.g., an application Specific Integrated. Circuit (ASIC)), or any other means including any combination thereof.
  • a processor e.g., a microprocessor, microcontroller, digital signal processor, or general purpose computer
  • programmable logic fur use with a programmable logic device e.g., a Field Programmable Gate Array (FPGA) or other PLD
  • FPGA Field Programmable Gate Array
  • ASIC application Specific Integrated. Circuit
  • Source code may include a series of computer program instructions implemented in any of various programming languages (e.g., an object code, an assembly language, or a high-level language such as Fortran, C, C++, JAVA, or HTML) for use with various operating systems or operating environments.
  • the source code may define and use various data structures and communication messages.
  • the source code may be in a computer executable form (e.g., via an interpreter), or the source code may be converted (e.g., via a translator, assembler, or compiler) into a computer executable form.
  • the application may be fixed in any form (e.g., source code form, computer executable form, or an intermediate form) either permanently or transitorily in a tangible storage medium, such as a semiconductor memory device (e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM), a magnetic memory device (e.g., a diskette or fixed disk), an optical memory device (e.g., a CD-ROM), a PC card (e.g., PCMCIA card), or other memory device.
  • a computer program product may reside on a computer readable storage medium having a plurality of instructions stored thereon, which, when executed by a processor, cause the processor to perform operations discussed herein.
  • the application may be fixed in any form in a signal that is transmittable to a computer using any of various communication technologies, including, but in no way limited to, analog technologies, digital technologies, optical technologies, wireless technologies (e.g., Bluetooth), networking technologies, and internetworking technologies.
  • the application may be distributed in any form as a removable storage medium with accompanying printed or electronic documentation (e.g., shrink-wrapped software), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server or electronic bulletin board over the communication system (e.g., the Internet or World Wide Web).
  • Hardware logic including programmable logic for use with a programmable logic device
  • implementing all or part of the functionality previously described herein may be designed using traditional manual methods, or may be designed, captured, simulated, or documented electronically using various tools, such as Computer Aided Design (CAD), a hardware description language (e.g., VHDL or AHDL), or a PLD programming language (e.g., PALASM, ABEL, or CUPL).
  • CAD Computer Aided Design
  • a hardware description language e.g., VHDL or AHDL
  • PLD programming language e.g., PALASM, ABEL, or CUPL
  • Programmable logic may be fixed either permanently or transitorily in a tangible storage medium, such as a semiconductor memory device (e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM), a magnetic memory device (e.g., a diskette or fixed disk), an optical memory device (e.g., a CD-ROM), or other memory device.
  • a semiconductor memory device e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM
  • a magnetic memory device e.g., a diskette or fixed disk
  • an optical memory device e.g., a CD-ROM
  • the programmable logic may be fixed in a signal that is transmittable to a computer using any of various communication technologies, including, but in no way limited to, analog technologies, digital technologies, optical technologies, wireless technologies (e.g., Bluetooth), networking technologies, and internetworking technologies.
  • the programmable logic may be distributed as a removable storage medium with accompanying printed or electronic documentation (e.g., shrink-wrapped software), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server or electronic bulletin board over the communication system (e.g., the Internet or World Wide Web).
  • printed or electronic documentation e.g., shrink-wrapped software
  • a computer system e.g., on system ROM or fixed disk
  • server or electronic bulletin board e.g., the Internet or World Wide Web
  • a module refers to software, hardware, or firmware suitable for performing a specific data processing or data transmission task.
  • a module refers to a software routine, program, or other memory resident application suitable for receiving, transforming, routing and processing instructions, or various cookies, scripts, client side tracking identifiers, non-universal identifiers, universal identifiers, federating and user matching data, and other information of interest.
  • Devices and systems described herein may include operatively associated computer-readable media such as memory for storing software applications used in obtaining, processing, storing and/or communicating data. It can be appreciated that such memory can be internal, external, remote or local with respect to its operatively associated computer or computer system.
  • Memory may also include any means for storing software or other instructions including, for example and without limitation, a hard disk, an optical disk, floppy disk, DVD (digital versatile disc), CD (compact disc), memory stick, flash memory, ROM (read only memory), RAM (random access memory), DRAM (dynamic random access memory), PROM (programmable ROM), EEPROM (extended erasable PROM), and/or other like computer-readable media.
  • a hard disk an optical disk, floppy disk, DVD (digital versatile disc), CD (compact disc), memory stick, flash memory, ROM (read only memory), RAM (random access memory), DRAM (dynamic random access memory), PROM (programmable ROM), EEPROM (extended erasable PROM), and/or other like computer-readable media.
  • computer-readable memory media applied in association with embodiments of the invention described herein may include any memory medium capable of storing instructions executed by a programmable apparatus. Where applicable, method steps described herein may be embodied or executed as instructions stored on a computer-readable memory medium or memory media. These instructions may be software embodied in various programming languages such as C++, C, Java, and/or a variety of other kinds of software programming languages that may be applied to create instructions in accordance with embodiments of the invention.
  • compositions are described as having, including, or comprising specific components, or where processes are described as having, including or comprising specific process steps, it is contemplated that compositions of the present teachings also consist essentially of, or include, the recited components, and that the processes of the present teachings also consist essentially of, or include, the recited process steps.

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Marketing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

In part, the invention relates to systems and methods suitable for operating a client side platform for deterministically correlating a unique mobile user across multiple marketing communication channels using a universal identifier to provide a deterministic mapping of individual channel user identifiers. In an embodiment, the invention relates to systems and methods suitable for operating a client side platform for probabilistically correlating a unique mobile user across multiple marketing communication channels to provide a mapping of individual channel user identifiers. The systems and methods can be used to identify user activity across different marketing communication channels accessed with a given mobile device.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application is a continuation of U.S. application Ser. No. 13/843,710, filed Mar. 15, 2013 and entitled “Cross-Channel User Tracking Systems, Methods and Devices”. U.S. application Ser. No. 13/843,710 claims priority to U.S. Provisional Patent Application Ser. No. 61/617,357 filed Mar. 29, 2012. Both applications are incorporated by reference in their entirety.
  • BACKGROUND
  • User tracking is a prominent trend in online media. The ability to track and uniquely identify users is important for a wide range of marketing strategies. It is therefore expanding rapidly from the online to the mobile world. User interactions with mobile devices, along with the consumption of mobile services, can relay significant information about a user's behavior and their demographics. Understanding the user becomes equally important to the role and the utility of those services with regard to discovering user insights and intents. That intelligence is critical for prediction and optimization of marketing campaigns and their creative performance.
  • Mobile marketing efforts usually include various vendor products and services, along with 3rd party technologies and services to achieve campaign reach, frequency and conversion objectives. Achieving such objectives often requires use of a mix of marketing communication channels. Mobile user tracking is normally isolated with regard to individual products or individual marketing channels. As a result, tracking individual users across channels is not easily achieved.
  • Conversion is a standard metric used to measure the success of marketing campaigns, which can be based on the attrition of users that fail to proceed to each touch point on the way to completion of an actual user action. Examples of conversion events may include a file download by the user, a completion of a user registration form, or a purchase of products or services. Determining when a user clicks on an ad, watches it, and then whether or not the user takes action with respect to the ad is challenging. Evaluating conversion is further complicated by the wide ranges of activities, interactions and channels a user can undertake.
  • Mobile ad servers log impression delivery when ad tags are transmitted to a publisher's content server. A more desirable approach is to count impressions after actual presentation of the marketing messages to end users. Most mobile SSI systems have no way of determining whether an ad was delivered to the device and played to completion. The result is discrepancies in impression counting. Another example of the problem occurs when users navigate to new content before an ad creative has completely rendered. The result is impressions reported as delivered, even though not seen which can be a basis for advertiser payment concerns.
  • As a result, a need therefore exists for analysis and reporting tools to inform their allocation decisions. A need also exists to address issues relating to user tracking across different channels and to improve conversion and track return on investment. The embodiments of the invention address this need and others.
  • SUMMARY
  • In one aspect, the invention relates to systems, methods, non-transitory machine readable media, devices and systems configured to correlate user activities such as interactions with messages and other content across multiple mobile marketing channels. In one embodiment, one or more software-based methods are implemented on the client side of the network such as within a client device such as a mobile device to facilitate cross-channel user tracking. One embodiment of the invention relates to end to end cross channel user tracking which includes tracking unique users across multiple delivery channels, across multiple campaigns and within a given campaign.
  • One embodiment includes a client side approach for deterministically correlating a unique mobile user across multiple marketing communication channels. A universal identifier provides a deterministic mapping of individual channel user identifiers to each other by uniquely mapping each of them to a single unique universal user identifier assigned to an individual channel user's device. This allows that user to be identified across marketing communication channels accessed with their device. In one embodiment, a universal identifier provides a probabilistic mapping of individual channel user identifiers to each other by uniquely mapping each of them to that single unique universal user identifier assigned to their device. Combinations of user tracker using a universal identifier and both deterministic and probabilistic mapping methods are also embodiments of the invention.
  • In one embodiment, channel specific user identifiers, such as EIDs, are saved in device persistent memory, along with a generated universal ID, such as a VID, that is mapped to each channel's user identifier. Cross channel user correlation can be accomplished by embedding requests for remote programs in content and advertisements consumed by users on their mobile device. External programs are retrieved from remote servers when content is rendered by device resident applications. These programs incorporate software modules and computing devices that capture individual channel user identifiers as the user navigates across media distribution channels.
  • In one embodiment, the term federated refers to usage of a universal identifier that is generated by the federation of unique (non-universal) identifiers collected from the same user. The storage of user information with regard to multiple channels under a single identifier can be referred to as federation because it federates identifiers for the user across channels, apps, emails messages, etc.
  • New channel correlations can be transmitted to a remote server application as the user accesses each channel for the first time. These correlations allow server side federation of the user information associated with each channel's user identifier, maintained by the delivery channel itself. In one embodiment, additional federation with 3rd party online and offline data sources can optionally be used to generate user profiles that include a superset of each channel's identifying information, merged with additional 3rd party information for that same user. Analysis of that expanded data set can be used to generate enhanced psychographic, demographic and lifestyle segmented user profiles.
  • In one aspect, the invention relates to methods of user tracking across channels suitable for evaluating the success of a given mobile campaign or activity. In one embodiment, tracking features suitable for evaluating which ads have the highest activity levels, user interest for a website, the number of returning visitors, or other conversion metrics are another embodiment of the invention. Software and system tools to correlate the impressions and clicks associated with mobile web site user events and engagements are another embodiment of the invention. In addition, software-based user interfaces and reporting tools suitable for managing multichannel advertising budget allocations and to measure accurate, channel-specific return on investment are other embodiments of the invention.
  • In one embodiment, a computer-based method of tracking a user across a plurality of communication channels may include generating a first non-universal user identifier associated with a first communication channel in response to a first action of a mobile device. The method may further include generating a second non-universal user identifier associated with a second communication channel in response to a second action of the mobile device. The method may also include storing the first non-universal user identifier and the second non-universal user identifier in a data repository. The method may additionally include correlating, using an application installed on the mobile device, the stored first non-universal user identifier and the stored second non-universal user identifier with a universal identifier having an associated user profile. Moreover, the method may include associating the universal identifier with a plurality of actions performed with the mobile device such that the associated user profile comprises a mapping between the universal identifier and activities performed by the user across the plurality of communication channels.
  • In an implementation, the method may include generating a third non-universal user identifier associated with a third communication channel in response to a third action of the mobile device. The first, second, and third communication channels may be selected from the group consisting of receiving text messages, receiving emails, viewing a video, viewing a webpage, viewing a video ad, viewing a webpage ad, interacting with social applications, and downloading an application. The profile may be generated using approximation methods including clustering and probabilistic matching using a plurality of mobile device channel specific identifiers. Associating the universal identifier with a plurality of actions may be performed using a computing device running a Bayseian Network to perform probabilistic user matching. Additionally, the method may include comparing one or more user profiles to incoming request profiles using a probabilistic Bayesian network running on computing device.
  • In one embodiment, a computer-based system of tracking a user across a plurality of communication channels may include one or more receivers, executing on a computing device. The one or more receivers may be configured to collect the information from the plurality of communication channels. The system may further include an event ID generator configured to provide non-universal user identifiers that can be matched to a universal user identifier. The system may also include a data repository comprising a plurality of non-universal user identifiers. Each non-universal user identifier may be associated with one communication channel of the plurality of communication channels. The system may additionally include a federation server configured to receive user actions associated with each communication channel from a mobile device client application. The federation server may be configured to generate a universal identifier using the received user actions and the plurality of non-universal user identifiers.
  • In an implementation, the system may include a compact uniform resource locator (URL) software module configured to compact a mobile web URL accessed by the mobile device and generate a non-universal user identifier associated with the compacted mobile URL. The communication channels may be selected from the group consisting of receiving text messages, receiving emails, viewing a video, viewing a webpage, viewing a video ad, viewing a webpage ad, and downloading an application. The system may further include a privacy software module configured to enable the user to opt out of being tracked using a universal identifier. The system may additionally include a privacy software module.
  • In one embodiment, a computer program product residing on a computer readable storage medium may have a plurality of instructions stored thereon, which, when executed by a processor, may cause the processor to perform operations for tracking a user across a plurality of communication channels. The operations may include generating a first non-universal user identifier associated with a first communication channel in response to a first action of a mobile device. The operations may further include generating a second non-universal user identifier associated with a second communication channel in response to a second action of the mobile device. The operations may also include storing the first non-universal user identifier and the second non-universal user identifier in a data repository. The operations may additionally include correlating, using an application installed on the mobile device, the stored first non-universal user identifier and the stored second non-universal user identifier with a universal identifier having an associated user profile. Moreover, the operations may include associating the universal identifier with a plurality of actions performed with the mobile device such that the associated user profile comprises a mapping between the universal identifier and activities performed by the user across the plurality of communication channels.
  • In an implementation the operations may further include generating a third non-universal user identifier associated with a third communication channel in response to a third action of the mobile device. The first, second, and third communication channels may be selected from the group consisting of receiving text messages, receiving emails, viewing a video, viewing a webpage, viewing a video ad, viewing a webpage ad, interacting with social applications, and downloading an application. The profile may be generated using approximation methods including clustering and probabilistic matching using a plurality of mobile device channel specific identifiers. The mobile device channel specific identifiers may be selected from the group consisting of a first party cookie, a third party cookie, and a plurality of product identifiers. Associating the universal identifier with a plurality of actions may be performed using a computing device running a Bayesian Network to perform probabilistic user matching. The operations may further include comparing one or more user profiles to incoming request profiles using a probabilistic Bayesian network running on computing device.
  • BRIEF DESCRIPTION OF DRAWINGS
  • The figures are not necessarily to scale, emphasis instead generally being placed upon illustrative principles. The figures are to be considered illustrative in all aspects and are not intended to limit the invention, the scope of which is defined only by the claims.
  • FIG. 1A is a schematic diagram of a system of cross-channel user and event tracking in accordance with an illustrative embodiment of the invention.
  • FIG. 1B is a schematic diagram of a mapping between a plurality of non-universal identifiers and a universal identifier implemented on a computing device to facilitate cross-channel user and event tracking and reporting in accordance with an illustrative embodiment of the invention.
  • FIG. 1C is a schematic diagram of an example mobile server side include advertising system, in accordance with an illustrative embodiment of the invention.
  • FIG. 2, which is split into FIGS. 2-1 and 2-2 along connectors A and B respectively, is a schematic diagram of a system of cross-channel tracking with respect to several communication channels.
  • FIG. 3, which is split into FIGS. 3-1 and 3-2 along connectors A and B respectively, is a schematic diagram of a system of cross-channel tracking with respect to several communication channels.
  • FIG. 4 is a schematic diagram of a system and one or more components used to perform cross correlation of the various distribution channels in accordance with an illustrative embodiment of the invention.
  • FIG. 5 is a schematic diagram of a compact URL service for encoding in accordance with an illustrative embodiment of the invention.
  • FIG. 6 is a schematic diagram of an application tracking system accordance with an illustrative embodiment of the invention.
  • FIGS. 7A to 7F are a screen shot and representations of user tracking or advertising information of interest that can be displayed as part of an automatically generated report or user interface in accordance with an illustrative embodiment of the invention.
  • FIG. 8A is a schematic diagram of an implementation in accordance with a illustrative embodiment of the invention.
  • FIG. 8B is also schematic diagram of an implementation in accordance with an illustrative embodiment of the invention.
  • FIG. 8C is also schematic diagram of an implementation in accordance with an illustrative embodiment of the invention.
  • FIG. 8D and 8E are a schematic diagram of universal JavaScript implementation in accordance with an illustrative embodiment of the invention.
  • FIG. 8F is an exemplary opt out workflow allowing users to opt out of federation server participation in accordance with an illustrative embodiment of the invention.
  • FIG. 8G is an exemplary opt in workflow allowing users to opt into federation server participation in accordance with an illustrative embodiment of the invention.
  • DETAILED DESCRIPTION
  • In one aspect, the invention relates to systems and methods for tracking user interactions such as the interactions of a mobile device user with respect to a plurality of communication channels. Mobile Internet advertising includes streaming graphic or video files, in real time, into content as it is rendered at a user's mobile device. Those image or text marketing communication messages are inserted into the content at the publisher's content management system. Selection of a specific ad and its insertion occurs prior to returning the user requested content over a carrier's network. Images and texts are just a few of the many types of communication channels a user can interact with and receive ads and content through.
  • FIG. 1A shows an exemplary cross-channel tracking system 5 suitable for use with a user of a mobile device 7. As shown, various communication channels 8 are typically accessed via the mobile device 7. With respect to a given communication channel such as for example, a 3rd Party Ad Serving Channel, Application installs from other applications and mobile, 3rd Party Ad. Serving Channel, Marketing and CRM Message Channels, 3rd Party Ad Serving Channel, Mobile 3rd Party Site Channel, Mobile Ad Serving Channel, Server Side Include Ad Server User Tracking, Native Application Channel, other events and interactions, and other channels, a non-universal identifier corresponding to a user identifier or an event identifier (“EID”) can be generated in response to a user action with the mobile device 7. These EIDs can be stored with a user profile using a computing device in one embodiment.
  • As shown in FIG. 1A, for each of the various mobile device communication channels with respect which the mobile device 7 can interact, a non-universal user or event identifier EID is generated such as EID I to EID N. In contrast, the user is unique. As a result, a unique universal user identifier or VID can be associated with each mobile device as shown in the software-based identifier mapping 10. As shown, a computing device 12 can be connected to a network to receive tracking information associated with each EID and associated that with a VID. In one embodiment, computing device 12 stores or runs a matching engine to match or map EIDs and a VID on a per mobile device basis. In turn, on a per EID basis, each EID can be mapped to the VID. Further, from that mapping, implemented using a computing device, of EID 1 to VID, and EID 2 to VID, all the way through EID N to VID, each EID can then also be mapped to another EID as shown in FIG. 1B. Specifically, as shown, EID 1 and EID 8 are mapped to the VID for mobile device 7 from FIG. 1 and the VID is also mapped to by EID 6 and EID 2. Typically, each EID would map to the VID. In this way, the paths from one EID to another such as from EID 1 to EID 6 and from EID 2 to EID 1, and from EID 8 to EID 6 can be generated. These paths allow useful demographic and profiling information to be generated for a given user of mobile device 7.
  • In one embodiment, a user accesses a mobile device application, such as an iPhone application, and through an SDK, the entity providing the SDK collects an SDK specific identifier which can be an event identifier such as EID 1. That is a unique identifier, but since the apps are sandboxed this identifier is considered non-universal. It is not universal in the sense that absent more it typically cannot extend to other apps (e.g. web browser) for identification purposes. That said, this approach allows the entity providing the SDK, or a client application to confirm or probabilistically confirm that the entity is getting interactions from the same user.
  • As another example, when a user accesses a mobile browser, when an ad is served, a cookie is written. Specifically, the cookie is written to the user's browser. This cookie is yet another identifier unique to the user, which can be EID 6 for example, but such an identifier is non-universal. In one embodiment, the invention relates to generating a profile data store for identified users across applications of other mobile interactions. As shown in FIG. 1B, EID 6 and EID 1 and thus a mobile browser event and an SDK event can be associated with a particular mobile device user and a VID. The profile data store collects user profiles or the unique identifiers or EIDs. In one embodiment, the profile data store also enhances such EIDs with other possible attributes e.g. location, behavioral etc.
  • The respective information in each product channel during federation, in an embodiment of the invention, flows to a common server side profiling data store. A matching process, in some cases using approximation techniques, can be used to identify users across channels where correlation in the client is not possible, for example non-JavaScript enabled mobile devices. The consolidated result is assigned to a universal user identifier, VID. Additionally, a VID can be requested by, or transmitted at the time of correlation, to each product channel data store as a mapping to its associated federated user profile.
  • Current mobile advertising systems employ what is referred to as server side include ad (“SSI”) serving. The publisher's content management system requests an advertisement over the broadband internet from an ad server, which selects a specific campaign ad and returns associated ad tag markup to the requesting publisher's system.
  • Insertions of the ad markup at the publisher's content management system is accomplished using a technique called server side include, tags or SSI tags. This technique refers to using variable values that a server can include in a content file before it sends it to a requesting user. When the content management system encounters those SSI placeholders embedded in the page, the server will obtain the value associated with the variable name and insert it before the content is sent to requesters. The server searches content templates for environment variables and runs associated software to insert variable information in the places in the page where “include” statements were embedded.
  • In the case of mobile server side include advertising; a software package is provided to a publisher that performs communications with an advertising server, step A1, A2 and A3 in FIG. 1C. The software is often called a convenience ad request package and supplied in a variety of programming languages specific to publisher systems. This communication results in the return of ad markup tags specifying a particular ad or content. The ad or content is retrieved when the ad markup tag is rendered by the device, directly from the server hosting the ad or content, steps A4, A5 and A6. The ad markup tag can also define an address of a landing page to redirect a user's browser to when the ad is clicked.
  • Deficiencies inherent in server side systems including mobile advertising systems have inhibited use of mobile advertising in general. Small publishers often cannot afford the SSI scaling costs, in conjunction with the complexity required to integrate with multiple ad vendors. This is required just to obtain inventory fill rates that fully monetize their content. The added requirement publishers pay for additional bandwidth in order to interface to multiple ad sources, before they can insert ads and transmit the content to the user is not scalable across millions of simultaneous users accessing publisher servers.
  • Client device generated ad requests and counting mechanisms are necessary to accurately distribute revenue across multiple parties, as well as for delivery auditing; tong the standard in traditional advertising. Upon receipt of advertising markup tags by a content management system over the broadband interact, the tags are inserted into the content replacing the server side include ad placement variables. This occurs prior to transmission of the content to the end user device.
  • Mobile SSI ad server user tracking advantageously uses ad servers to provide a mechanism to track users by associating them with a unique 3rd party cookie value maintained in the ad server database. This cookie value can be passed by the publisher using a convenience ad request package for storage in the device browser. The advantage of this convenience package pass through cookie is set as a 1st party cookie in the publisher domain, rather than a 3rd party cookie from the ad server domain. This occurs as a result of the convenience package running on the publisher domain content servers. Such cookies provide one basis to obtain EIDs with respect to a given mobile device and the particular channel using such cookies. The results EIDS can be mapped to a VID using one or more computing devices as outlined herein.
  • In online and mobile ad serving, 3rd party cookies are often blocked by default configurations in most device browsers. Translation of 3rd party ad server cookies to 1st party cookies through a convenience package allows anonymous user profiling to determine unique visits as well as frequency capping the number of times an ad is presented to each individual. During subsequent ad requests, that 1st party cookie is transparently transmitted to the ad server through the convenience package with the ad request, converting it back to the 3rd party ad server cookie unique to individual devices. Similarly, the convenience package passes protocol information, e.g., HTTP headers, allowing carrier and device targeting data to also be passed to the ad server.
  • User call to action conversions can be tracked when a user clicks on an ad, via additional markup anchor tags inserted at the publisher content management system alongside the ad request itself. These conversions can be used to generate EIDs. This performs a subsequent request to the ad server, encoding a mapping to a destination address for a landing page associated with the relevant ad or content. This mapping is configured for a specific campaign in the campaign management system. The server records a click through for a user when it receives that request.
  • After recording a click through, the server redirects the user's browser to the actual landing page previously configured for the campaign. Additional markup code in that subsequent landing page, for example, such as transparent tracking pixel requests, can be embedded to track user's arrival at specific landing pages. The markup can also then track their navigation through additional pages of a brand's site. The result is a fine granularity of conversion analytics and segmentation for targeting users and generating EIDs.
  • Native application ad serving works similar to online Web based advertising, as opposed to mobile web SSI advertising, can also be modified to support tracking and thus EID generation. The selection of an ad is made in real time when the client device application requests an advertisement. Requests from the native application are communicated to an ad server directly. Thus, in one embodiment, no convenience package is used. This makes a decision on which ad source to serve an ad from at the time of the request.
  • Mobile application advertisements are typically presented to users in a view within the application itself, commonly called a Web View, rather than the device Internet browser. A native application on mobile devices has its execution environment. This environment securely sandboxed from the browser and other applications preserves privacy and restricts unauthorized information access.
  • User information can be transmitted in parallel with the client ad request in appropriate HTTP protocol headers, or embedded in the ad server request URL. Since native applications have access to hardware, retrieval of the device ID serial number, or its unique wireless radio MAC address, obviates the need for cookie support. Those attributes are usually encrypted such as hashing one way, such that direct personally identifiable information (“PII”) is not transmitted outside the device.
  • The actual ad or content is then returned in a format the mobile application can decode, e.g., XML templates, while also containing the address of each media file to retrieve from a creative server. Once the application or its advertising SDK has retrieved all the media components that make up the ad, the advertising experience will be presented to the user at the appropriate time as designated by the application developer. User interaction information and redirection of the user to a conversion landing view can be transmitted to the ad server as appropriate. This can be used to generate EIDs specific to native applications such as EID 4 of FIG. 1A.
  • Mobile marketing activities can include a rich set of interactions that enable users to engage with a campaign. In almost all cases a call to action is required to transfer a user from the advertising activity that aims to inform the users about the interaction to an actual target destination. The uniquely identified information often depends on a registration channel with respect to which the user provides “Opt in” user identifying information. Additionally, the MSISDN unique user telephone identifier can be automatically captured by the SMS and MMS system, or an email address in the case of IP Messaging. The user is usually assigned a system generated identifier representing user identifying information without transmitting that PII data.
  • Client side user engagement tracking within a mobile site can be implemented including a JavaScript file request incorporated in pages of the site or its advertising. In this way, the JavaScript allows user tracking which allows an EID to be mapped to a VIA. When a visitor views the content, suitable JavaScript markup language or code renders and downloads an external JavaScript file containing software or instructions, such as JavaScript, for tracking a user's interaction with site content. This software or instructions make real time requests to tracking servers to record page views and content interaction events.
  • The JavaScript code can also gather information about the device execution environment and send that information to a tracking server with the HTTP requests from the visitor's browser. The document object model (“DOM”) of a content page contains various browser and system information, such as the browser's version and the screen resolution that can be captured and sent. Additionally, requests can contain locations a visitor came from, their Internet address and automatic changes in their time zone as updated by a mobile carrier's network.
  • Mobile marketing companies employ a portfolio of products supporting the creation and execution of mobile marketing and advertising campaigns. These companies provide mostly managed services, but some are pursuing the development of self-service end to end platforms that agencies and brands ultimately manage themselves. Each point solution traditionally has its own mechanisms to track and retrieve information about individual users, e.g., cookies that could be stored in user's devices and retrieved at a later time. This user information could then be used to support new campaign activities, business intelligence operations or more detailed reporting.
  • End to end user tracking across channels is important to capture and offer the value that comes from user level specific information in the advertising industry and others. Incoming requests instantiated by a users' device can take any form ranging from mobile web sites to, applications, SMS, video and rich media and social networks response channels. Using a universal JavaScript tracking solution is one mechanism for user and device recognition. As a result, JavaScript based tracking is also an important approach for mapping EIDs to a VID.
  • There are cases where cookie ingestion is not possible. For example, user devices may block cookies or a cookie may fail to be retrieved during the session or user interaction is such that cookie cannot be enabled. In these cases, in addition to the EID's generation service, an additional computational method within a matching engine is responsible for identifying resemblance to recent, known user signal collected.
  • In part, the invention relates to end to end user tracking across marketing communication channels that enables federating unique information for each user across channel specific data stores the user interacts with. This is based on existing unique channel user identifiers, labeled EID ([user] Event ID) as shown in FIGS. 1A-1C and 2. In FIG. 2, a system 15 for cross-channel user tracking is depicted. A representative example of an ad server channel 21 a, a marketing suite of SMS 24 a or IP messaging channels 25 a, a CRM system containing registration pages for segmenting users by communities of interests 23 a, as well as an analytics channel 22 a, represents graphically how this is accomplished in one embodiment as shown in FIG. 2.
  • Effective data strategies are predicated on gaining as close to a complete understanding of a user as possible, via the aggregation of a large and diverse set of anonymous user-level data. The system 15 and transfer steps shown in FIG. 2 can be used to aggregate, organize, and normalize data points across a centralized database of unique users. It can be integrated into ad servers to understand why an ad was served to begin with for example and to analyze outcomes. Campaign optimization is derived from an ability to align data, inventory and creative; with greater alignment leading to greater campaign and creative performance.
  • The integrated application of the methods described in order to uniquely correlate and identify user attributes coming from a set mobile marketing communication channels is shown in FIG. 2. The universal tracking mechanisms 27 employed in each channel (21 a, 22 a, 23 a, 24 a and 25 a) are sending the collected information to the “receiver” layer or receiver 26.
  • The receiver layer 26 includes collected user events (signals) from all possible product channels into a persistence layer 26. Each user event tuple of collected attributes is funneled through the receiver layer 26 to the Event ID generation queue 28 that is responsible to issue an EID. That is the event identifier and also a unique id for the corresponding tuple that upon matching is replaced by the universally assigned VID. The queuing service 28 collects and processes the requests. In one embodiment, the service 28 processes the requests on a first in first out basis. In an embodiment, this processing occurs substantially in real time.
  • The released rows from the queue are pushed to temporary data store 29 that upon EID assignment by the EID generator 30 pushes the corresponding rows to the multi-channel tracking data store 31. The MCT data store 31 based on the campaign id of each incoming row segregates the collected events by campaign in respect of permissions management and privacy constraints (if any).
  • The MCT Data store 31 also algorithmically obfuscates information that can be considered. PII through hashing. A typical representation of the information residing in the corresponding data stores 32 is shown. Each tuple of collected user event and profile attributes, such as the list of boxes in the bottom left portion of FIG. 2-2, is identified by an EID. With respect to data store 32, as shown by the placement of the dots in the identifier grid, a dot in the upper left represents a unique identifier and a dot in the upper right box of a ntuple represents a non-unique identifier. The user related tuples can contain both unique and non-unique identifiers based on the event or activity of the user. The unique identifier allow for deterministic matching 33 and immediate association of the corresponding EIDs with a universal identifier. In cases that the latter is not technically possible, (such as when rows include non-unique identifiers), a non-deterministic approach such as a probabilistic approach is used. For example, approximation techniques using thresholds to make probabilistic matching between a device and a channel are shown with regard to probabilistic matching instance 34 can be used. Entries with EIDs that meet the set threshold criteria are updated with a VID identifier as well. In general, if matching occurs, a VID is generated or matched to the EID.
  • Programmatic extensions that allow integration with 3rd party identification services 35 are implemented in one embodiment. There are cases that integration with 3rd party identification services allows the collection of an additional identifier for specific user events. This identifier is a key or character sequence that is mapped to 3rd party identification service datastores. Upon matching the identified user is getting a VID that allows the user to be identified universally.
  • In all of the cases described above the VID generator 26 upon assignment of the VID to the matching tuples pushes the identifier to the corresponding universal tracking modules 27. The latter allows recurrent real time identification of the user in any subsequent request.
  • In part, one embodiment of the invention is configured to be independent from the ability of the device or network to uniquely identify the user. In addition, it is configured such that in those cases where unique identification is possible, the process remains the same having only the respective VID carrying more information. Finally, the data store of the user with the VID can be immediately used as a reference store for demographic or behavioral targeting and other audience profiling activities.
  • End to end User Tracking Server Application and Profile Federation Service
  • A site analytics event logging mechanism and application is implemented using a server. It is used to aggregate user tracking correlation data from individual users for storage in a server user profiling database. The individual channel identifiers, EIDs, mapped to a unique VID can be stored as foreign keys into the respective product channel databases and their user information.
  • APIs are provided to allow products to request the VID for their EID, which can then be used to query additional targeting and optimization information from the data warehouse for any of the other product channels associated with the VID. The following functionality is provided by the user profiling system shown in the accompanying FIG. 3 (FIGS. 3-1 and 3-2). FIG. 3-1 shows the client side—the flow of information from the mobile device. As shown, several mobile devices are operating with respect to one or more campaigns or otherwise simply being used by their users. When an ad is clicked on device 7, the app decorated URL indicates that the click through URL is enhanced with the application ID. This also causes attributes to be passed and for a browser start up to be triggered on device 7. User events are sent to the receiver 26 also known as the receiver layer. The MCT v Tags are the JavaScript components used to capture events. These tags are read/written into a local data store as shown. In general, from clicking on an ad to getting it takes about 500 ms. Each of the elements in FIG. 3 can be implemented as a software module or software layer.
  • As shown in FIG. 3-2, the EID from the receiver is transmitted to the multi-channel tracking data store which can be implemented using a cloud based infrastructure. A database at the MCT datastore that includes the EIDs receives information from MapReduce Operations which also sends data to the matching engine. The MCT matching software performs EID/VID mapping and updates existing VID with new EID mappings thereto. The product store provides tracking information for a particular channel. The participants in a campaign or mobile device users in general form an audience. The audience management software updates user profiles with additional user attributes from the product stores.
  • One embodiment for cross channel user tracking creates a “Universal User Identifier” or VID that is persistent across product, across channel, and across campaigns. Binding federation of individual channels' user information, associated with the channel user ID, along with 3rd party data enables targetable unique user profiles.
  • A client side agent is created and used to collect and send events in order to support the mapping of individual channel IDs (EID) to the same universal user ID, for each device. The client side agent can be implemented using the Universal User Tracking JavaScript approaches described herein, user interaction logging with mobile content is performed on the server-side, in standard log files of the ad server.
  • Scripts executed inside a client device are an extensible way of logging user interaction with rich media advertising and mobile site content. In an embodiment, user client side tracking across channels is accomplished by inserting script tags in the content or advertisement.
  • Another embodiment of the invention automatically incorporates user tracking by configuration, e.g., in ad or landing page authoring tools. In cases where this is not possible, for example manually authored sites, minimal integration of the agent script tags in content pages provides for tracking and reporting user interaction in manually contained channels as well.
  • Advantages of using client side scripting to perform cross channel user correlations are outlined as follows. In depth conversion reporting that goes down to the user level, across campaigns is generated. Counting is activated when content is presented in the actual device, not when it is requested by the publisher's content management system. If content is cached, it will not be counted by servers. Cached content accounts for up to one-third of all views. Not counting cached content seriously skews many metrics. It is for this reason server-based log analysis is not considered suitable for analysis of human activity on websites and is not usually used in online ad serving today.
  • In one embodiment, updates performed by the JavaScript tracking agent, using HTTP requests, can be classified into two types. The first type includes agents that track page views. The second includes agents that track content object user interaction events. Each type is submitted to corresponding endpoints of the receiver of the events 26. In a server application for reporting.
  • In one embodiment, the universal scripted agent incorporates functionality to store User ID mappings between the VID and the various product channel User IDs as they are accessed by that user. These are stored in a client side HTML 5 database or another database. Additionally, the JavaScript agent incorporates end-to-end user tracking event logging to appropriate analytic server applications, using standard HTTP requests.
  • For a given mobile device, cookies are traditionally used to track visitors within campaigns. Specifically, 3rd party cookies can identify a visitor uniquely invoking the JavaScript agent, while a campaign cookie could be used to identify campaigns that user has participated in, resulting in cross campaign tracking. In the case of smart mobile devices, HTML 5 cross domain page messaging allows writing and reading first party cookies by the agent from inside the device. This is accomplished in cooperation with the publisher content page containing the script tags. As a result, circumventing 3rd party cookie restrictions is made possible.
  • Additionally, in this embodiment, a VID cookie can be written from the agent inside the device, which can be read by components in the same domain as the script server. This allows passing of the VID directly to an ad server. This allows the VID to correlate at the time of ad request its own channel user ID cookie previously set. This provides real time targeting of the universal cookie by ad servers, using information federated from other channels.
  • Server side probability mechanisms can correlate signals as a result of user actions across channels. Users often follow conversion paths from an ad or other content that cannot be fully tracked. As a result, the issuance of a VID by using exact correlation techniques is not possible. In these cases, approximation algorithms are used to provide estimates about the correlation of collected identifiers. Once a specific threshold (pre-set or automatically defined) is exceeded, the qualified user events are assigned a VID that updates the corresponding product channels. Feature phones, usually lacking local browser accessible persistent storage, can use a matching process, using approximation techniques, to identify users across channels where correlation in the client is not possible. For example, probabilistic Bayesian Networks can compare existing user profiles served previously against incoming request profiles.
  • Collecting protocol headers and their values, identifiers and attributes, along with browser internally detectable attributes can determine if a channel profile matches a profile previously seen. If not, that incoming profile is saved in the user profile database as a new user.
  • Association of Individual Channel User Identifiers with a VID
  • A VID, persisted within the client device as a result of an external JavaScript, can accomplish deterministic cross channel user correlation inside mobile devices. The individual product channel user tracking identifiers are associated with that VID, when a user accesses each type of channel for the first time.
  • One objective of user tracking end to end across marketing distribution channels is to provide solutions that enable the exchange and leverage of user information across all point products employed, across all campaigns. A universal identifier to uniquely identify individual user device interactions is one embodiment of the invention. This VID can be correlated with individual product user IDs, such as EIDs, for each channel as a user accesses them.
  • Identifying attributes captured during the interactions may include the MSISDN telephone number for SMS and MMS messaging products, Email addresses for CRM channels, Application IDs for native applications, mobile web browser cookies, as well as Network Operator information. Each of the foregoing is assigned a hash number and subsequently grouped and mapped to the universal ID assigned to that user. One way hashing of any personally identifying information ensures obfuscation of all PII information, without compromising the user unique identifiers, such as their MSISDN telephone number.
  • Users can be segmented into groups using federated data from the individual products as well as 3rd party information sources. These segments can then be used for premium targeting, as well as enhanced analytics using data sources such as Nielsen's PRISM segments.
  • In one embodiment, smart mobile devices configure to use HTMLs or higher are used to track users. A probabilistic implementation for cases in which deterministic matching is not possible, is also an embodiment as described herein. Some advantages of cross channel correlation in smart mobile devices include:
  • In general, the embodiments described herein are applicable to other existing and new marketing channels as well including social media. One embodiment of the invention relates to correlating representative channel identifiers with a universal user identifier enabling cross channel tracking.
  • Having already established an operational framework that enable products to exchange information about their status, execution requests, and anything related to configuration and execution of the marketing campaigns, this framework could be leveraged for real-time bidding using automated advertising exchanges. Additionally, cross-product active operational collaboration will enhance the overall user experience, e.g., personalization through behavioral targeting, and also enrich conversion tracking capabilities.
  • Each time a user is detected accessing a new product channel, the unique user identifier specific to that channel is stored in a client side database, e.g., a HTML 5 database, correlating that channel with the universal user ID, as well as all other channels that user has accessed. Special events via a receiver (listener layer) are logged to a server user profiling application using analytic event tracking facilities. Additional information regarding the user's device environment is also logged to a given software application embodiment.
  • FIG. 4 shows a system and some components used to perform cross correlation of the various distribution channels. It should be referred to, along with the previous descriptions of each component, during the subsequent descriptions for cross channel correlation for HTML 5 iOS and Android smart devices. This implementation makes possible the use of a universal JavaScript to read 1st and third party cookies set by the components that make up a marketing and advertising platform. One non-limiting example of such a platform is Velti's mGage platform.
  • Correlating a Mobile Ad Serving Channel to a Universal User ID
  • Mobile Ad Severs normally support three ways to uniquely identify and store user information. A user ID provided by the operator, 1st party cookies stored in user's devices, and session identification. These options can be used interchangeably and in combination, given certain conditions apply.
  • Operator Provided Anonymous User Identifier
  • In cases where the mobile advertising server is white listed by a carrier, or an operator supports it unconditionally; it is possible to capture unique identifications assigned by the network to a user's device, upon device registration. Operators that support the provision of the particular information may in some cases alter unique identifiers for users, e.g., by rotation of identifiers across multiple users. In that case it is harder, if not impossible, to uniquely identify users. In such cases, one of the other methods may apply as a means to circumvent the issue.
  • 1st Party Cookie
  • The Ad server creates a unique identifier with two goals, the first of which is to track repeated unique visits for frequency capping. The second is to use this information for a user tracking cookie stored in devices. The ad server convenience package, executed on a publisher's content management system, can be used to pass an ad server cookie to the device.
  • The convenience package is responsible for translating the ad server 3rd party domain cookie to a publisher's 1st party domain cookie. Otherwise that cookie would be a 3rd party cookie in a different domain and is often blocked at the browser, it is responsible for translating back the cookie for repeat visits, as well as pass header information describing the device type and carrier.
  • Correlating a 3rd Party Ad Serving Channel to a Universal ID
  • In cases that 3rd party ad serving is present, that is an ad server ad tags are delivered from another vendors ad server, unique user identification may not be applicable at all if cookies are disabled or disallowed. The Ad Server can be used to uniquely track impressions and their click through, but identification of the user requires using a cookie mechanism to ingest a cookie to a user's device upon cookie delivery. That requires that 3rd party cookies are enabled by the browser configuration.
  • One embodiment circumvents this situation by including the “Universal JavaScript URL” in tandem with the actual ad request when inserted into third party ad server campaigns. It is common practice to traffic multiple graphic requests as a compound ad tag using transparent tracking pixels for example. In a preferred embodiment, the Universal JavaScript request serves the same purpose a tracking pixel would, but delivers the ability to perform the same capabilities as discussed herein.
  • Correlating a Mobile 3rd Party Site Channel to a Universal ID
  • In the case of 3rd party mobile sites, there is no existing technology currently that enables user identification. A method is often implemented by connecting to a 3rd party site analytics product. That product captures information about the overall performance of the site and its user interaction objects, but would include enhancements to identify unique users as explained previously under the “Universal User Tracking JavaScript” description.
  • Correlating Native Application Channels to a Universal ID
  • The following approach describes the steps to determine that a user on a device, installing and interacting with any number of iOS or Android applications, is the same user accessing the mobile web through the device browser. It makes use of a special Internet address called a custom URL. That URL is a unique and persistent Internet address for invoking a specific native application installed on the device. It is normally used for clicking on links in pages rendered in browser to invoke the application.
  • For user tracking purposes, custom URLs will be used in a different manner, by appending it as part of the query string of a browser ad request URL. That URL is used to present a new ad format in a browser window, rather than the native application itself. It essentially provides a call back mechanism to the requesting application when the browser ad is terminated by the user or the ad itself. When the ad request URL is invoked by the application, it will cause an HTML 5 content ad to be requested from an ad server and returned to the browser window for rendering. The same approach can be applied for these cases where the user clicks on an ad link served within the native application.
  • Embedded in that content is a site analytics event tracking JavaScript. Enhancements are added to that script that allow the custom URL to be retrieved from the browser address field and stored in the browser HTML 5 local database. The VID delivered with the JavaScript file is also maintained in that database. This mechanism provides a filly correlated unique mapping of a Native Application ID and device ID to the universal ID for that user. Lastly, the custom URL is invoked when the ad completes or the user closes the ad, using it to return to the native application at the same point prior to the browser ad event. The steps executed are:
  • Correlation of Third Party Ad Serving Channel to a VID
  • The serving of ad tags from third party ad servers into a 3rd party hosted site using a hosted creative or tracking pixel, can make use of the previously explained approach to track a user. In this scenario, the previously described JavaScript is trafficked the same way a tracking pixel is, in parallel with any other trafficked ad tags.
  • Correlation of Marketing and CRM Message Channels to a Universal ID
  • By embedding the universal end to end user tracking JavaScript in any hosted mobile site or landing page, the individual product channel specific user identifiers can be captured and saved in the client side database of any HTML 5 smart device. The channel specific user ID is passed to the JavaScript executing in the page, encoded in the Internet browser address field. That ID is usually contained in the query string, and is usually hashed to be unique, encrypting any personally identifying data.
  • FIG. 5 shows the use of a compact URL service to encode a user's MSIDN in to a landing page URL, embedded in an SMS message sent to that user. When the user executes the embedded URL in the received SMS or MMS message, the compact URL will request the service convert the tiny URL into the full landing page Internet address and redirect their browser to the mobile page. That page is associated with the original SMS message. Alternatively, in the case of Email messaging, a user email address could be used instead of the MSIDN phone number.
  • MDM software may enable transmission (1) of SMS information to a URL service from a mobile device. An SMS service may receive (2) a hash related to a URL from the URL service and may transmit (3) an SMS+hash to the mobile device. Related user strings may also be transmitted (3 a) from the SMS service to an identifier management API. An EID may be transmitted (5) from the identifier management API to the SMS service. The user may click a link related to the SMS+hash and data may be transmitted (6) to a mobile web page system enabled with universal JavaScript. The mobile webpage system may transmit (7) a related hash to a mobile web analytics system, which may transmit (8) a user string+hash to the identifier management API. The identifier management API may transmit (9) an EID to mobile web analytics system and may transmit (10) a US+EID to a datastore.
  • A matching engine may pull (11) related data from the datastore and may publish (12) further related data to the datastore, which may pass the data to a retrieval API. The retrieval API may also receive (13 a) an EID from the mobile web analytics system and receive (13(b) an EID:VID match from the URL service.
  • Lastly, the hashed user identifier for that marketing suite channel is then accessible to the universal end to end user tracking JavaScript in the page for extraction and storage in the local database. That database now contains the marketing suite channel user identifier, correlated with the stored VID and all other channels that user has accessed. Those correlations are logged to the server user end to end tracking application as well, for federation with additional data products and 3rd party supplied data such as various targeting categories.
  • Tracking Application Installs from Other Applications and Mobile Web
  • FIG. 6 is a system of an exemplary implementation of EID and VID mapping based for tracking application installations initiated from an installed application or the device browser. An ad creative may be served (1) from an ad server to a publisher page. A user (actor) may access the ad creative through an ad click-through (2) from the publisher page, which may communicate to an application store from which an application is available. Related user strings may be passed (3 a) to a receiver. The application may be downloaded (3) to the mobile device and installed or launched (5) at the mobile device, which may be enabled by an SDK and/or directed by the user. Related user strings may also be passed (6) to a sell side platform and then on to the receiver.
  • An EID may be passed (8) from the receiver to the sell side platform and US+EIDs may be passed (9) to a datastore from the receiver. A matching engine may pull (10) data from the datastore and the datastore may receive (11) a VID from the matching engine. A retrieval API may receive data and/or the VID from the datastore and an EID:VID may be passed (12 a) to the sell side platform and/or passed (12) to the ad server. In this way, the system may track application installations initiated from an installed application or the device browser.
  • Tracking Campaigns Delivered Across Multiple Devices
  • Using the technique presented in the previous section, short codes embedded in traditional media can be used to track campaigns delivered across multiple devices. The user sends a short code and keyword embedded in radio, television, computer video, outdoor billboards or printed on packaged goods from their mobile device SMS application. The return of a response message with a compact URL to an associated landing page can track them as they navigate from traditional media consumed on another device to the mobile web, as explained previously.
  • FIGS. 7A-7F provide exemplary reports showing a representative example of tracking a user through the previously described marketing channels in real time. FIG. 7A shows a graph of the performance of the EID generation service along with the incoming source information as part of a user interface. The unique user ID for each specific marketing communications channel is recorded in the device resident HTML 5 database and transmitted to the server user tracking application only the first time the user accesses each channel.
  • FIG. 7B shows a user interface configured to aggregate information that shows the total amount of anonymously identified users, the total amount of received user events and the matched events (VID assignments). FIG. 7C shows a user interface that includes a Multi Channel Tracking coverage chart shows how many of the uniquely identified users can cover any of the channels where tracking is applied. The more users identified in >2 channels the more universal the information we have about the profile of the user.
  • FIG. 7D is a user interface that shows identified users vs. marketing channel interaction events. That is a ratio to understand how the newly incoming events contribute to identify new users. FIG. 7E is a user interface that shows multi Channel tracking event distribution per marketing and advertising communication channel. FIG. 7F is a user interface of a substantially real time table or a real time table that shows the incoming event types, the time-stamp of occurrence that is used by the approximation matching methods along with the matching method applied.
  • It is expected there will be cases where deterministic correlation of users across some marketing channels cannot be performed in the device, e.g., feature phones that do not enable JavaScript or the conversion path is such that does not allow capturing of attributes that can be deterministically matched. In this and other similar cases correlation of channel content requests against existing user profiles can be performed using an approximation approach. This section describes the approach to that.
  • This solution uses the global unique user identifier to identify user interactions. All the attributes from user events captured during the interaction may include the MSISDN (hashed), browser type, along with location information, interact address or other identifiers that can be parsed during the interaction. Attributes can be assigned a hash number to ensure PII is not stored, and is mapped into distinct groups. The collected attributes contribute in the development of unique user profiles. One of the methods used to achieve that is through hierarchical clustering.
  • Collected attribute tuples form clusters that represent unique user entities. The method iteratively calculates a similarity score across clusters and merges the ones that exceed the specified threshold. The process ends when there are no additional clusters to be merged. The resulting clusters are assigned a VID. The latter universal identifiers update the tuples in corresponding product stores and are also supplied to the universal tracking component to allow within device matching in future user events.
  • There are cases that EID corresponds to attributes that can be matched deterministically. In that case the matching EIDs are assigned an anonymous universal identifier (VID). As described above there are cases that VIDs can be assigned through hierarchical clustering. Other approximation techniques wrapped into the implementation of the non-deterministic matching instance include probabilistic matching. Probabilistic matching is used usually as an offline process, given its average time to complete, as an alternative method that leverages probability theory in the reasoning for user attributes correlation.
  • In one embodiment Bayesian Networks can be used to identify user matching cases. In the case of Bayesian Networks we represent the predicting attributes in the form of an acyclic directed graph. The edges in a Bayesian graph represent the dependent relation between attributes represented in vertices. Therefore the resulting network describes the probability distribution of the variables based on the dependency assumptions included in the model. The latter allows the definition of Conditional Probability Tables that give a probability for a match given a set of conditions defined by the formulated network. One implementation considers as matches the one with the higher probability above the threshold.
  • FIG. 8A describes a system embodiment and related method steps that allows mobile smart device native applications to invoke a browser display, which when completed returns to the application. A custom URL is passed to an embedded script running in the browser content. The custom URL is passed in the query string of the content URL and is unique to each application on each device. It is captured as that channel user identifier and correlated to the Universal User ID in the HTML 5 local database. User tracking in the context of the Android operating system is shown in the workflow diagram of FIG. 8A. Related cookie and HTML 5 implementation are described in FIG. 8B and related method steps. A user tracking approach for a native iPhone application is shown in FIG. 8C.
  • Universal Cross Channel User Tracking Script Work Flow
  • FIGS. 8D and 8E describe the universal JavaScript implementation that allows capturing individual channel user identifiers and correlates them to a VID in HTML 5 local databases. Various identifiers for advertising IFA are shown in FIGS. 8A-8G.
  • User Opt Out of Tracking Work Flow
  • FIGS. 8F and 8G describe a Universal JavaScript implementation that allows users to opt out and opt back in to tracking.
  • The computing device may include a server computer, a mobile device, a client user computer, a personal computer (PC), a laptop computer, a tablet PC, a desktop computer, a control system, a microprocessor or any computing device capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that computing device. Further, while a single computing device is illustrated, the term “computing device” shall also be taken to include any collection of computing devices that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the software features or methods disclosed herein. The computing device can includes machine readable medium or other memory that includes one or more software modules for displaying a graphical user interface such as a user tracking reporting interface or other interface described herein.
  • In the preceding embodiments described herein, a mobile device or an end user device include, without limitation, mobile phones, smart phones, iPads, Android-based devices, tablets, personal digital assistants, hand-held computers, ultra-mobile personal computers, notebooks, laptop computers and the like. The systems described herein can include one or more computers or servers that contain and/or run the application, and a visual display for viewing a graphic user interface. Devices, computers, and servers preferably include a processing unit or processor, a system memory, a disk storage, a communication interface, an input device, an output device, and a system bus. System bus couples system components including, but not limited to, system memory to processing unit. The processing unit can be any of various available processors. One or more applications can include various data elements and programs suitable for performing process steps, user identifier generation and tracking and correlation across communication channels.
  • Storage may include removable or fixed, volatile or non-volatile or permanent or re-writable computer storage media. The computer readable medium can be any available medium that can be accessed by a general purpose or special purpose mobile device. By way of example, and not limitation, such a computer readable medium can comprise flash memory, RAM, ROM, electrically erasable programmable read only memory (EEPROM), optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store digital information on a mobile device.
  • The computer readable medium embodies a program, functions, and/or instructions that cause a device, computer, or server to operate in a specific and predefined manner as described herein. For example, the messaging, application, and reporting discussed herein can be implemented as software code to be executed using any suitable computer language and may be stored on any of the storage media described above, or can be configured into the logic of device, computer or server. Such software code may be executed using any suitable computer language such as, for example, Java, JavaScript, C++, C, C#, Perl, HTML, Visual Basic, database languages, APIs, various system-level SDKs, assembly, firmware, microcode, and/or other languages and tools.
  • The present invention may be embodied in many different forms, including, but in no way limited to, computer program logic for use with a processor (e.g., a microprocessor, microcontroller, digital signal processor, or general purpose computer), programmable logic fur use with a programmable logic device, (e.g., a Field Programmable Gate Array (FPGA) or other PLD), discrete components, integrated circuitry (e.g., an application Specific Integrated. Circuit (ASIC)), or any other means including any combination thereof.
  • Computer program logic implementing all or part of the functionality previously described herein may be embodied in various forms, including, but in no way limited to, a source code form, a computer executable form, and various intermediate forms (e.g., forms generated by an assembler, compiler, linker, or locator). Source code may include a series of computer program instructions implemented in any of various programming languages (e.g., an object code, an assembly language, or a high-level language such as Fortran, C, C++, JAVA, or HTML) for use with various operating systems or operating environments. The source code may define and use various data structures and communication messages. The source code may be in a computer executable form (e.g., via an interpreter), or the source code may be converted (e.g., via a translator, assembler, or compiler) into a computer executable form.
  • The application may be fixed in any form (e.g., source code form, computer executable form, or an intermediate form) either permanently or transitorily in a tangible storage medium, such as a semiconductor memory device (e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM), a magnetic memory device (e.g., a diskette or fixed disk), an optical memory device (e.g., a CD-ROM), a PC card (e.g., PCMCIA card), or other memory device. For example, a computer program product may reside on a computer readable storage medium having a plurality of instructions stored thereon, which, when executed by a processor, cause the processor to perform operations discussed herein. The application may be fixed in any form in a signal that is transmittable to a computer using any of various communication technologies, including, but in no way limited to, analog technologies, digital technologies, optical technologies, wireless technologies (e.g., Bluetooth), networking technologies, and internetworking technologies. The application may be distributed in any form as a removable storage medium with accompanying printed or electronic documentation (e.g., shrink-wrapped software), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server or electronic bulletin board over the communication system (e.g., the Internet or World Wide Web).
  • Hardware logic (including programmable logic for use with a programmable logic device) implementing all or part of the functionality previously described herein may be designed using traditional manual methods, or may be designed, captured, simulated, or documented electronically using various tools, such as Computer Aided Design (CAD), a hardware description language (e.g., VHDL or AHDL), or a PLD programming language (e.g., PALASM, ABEL, or CUPL).
  • Programmable logic may be fixed either permanently or transitorily in a tangible storage medium, such as a semiconductor memory device (e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM), a magnetic memory device (e.g., a diskette or fixed disk), an optical memory device (e.g., a CD-ROM), or other memory device. The programmable logic may be fixed in a signal that is transmittable to a computer using any of various communication technologies, including, but in no way limited to, analog technologies, digital technologies, optical technologies, wireless technologies (e.g., Bluetooth), networking technologies, and internetworking technologies. The programmable logic may be distributed as a removable storage medium with accompanying printed or electronic documentation (e.g., shrink-wrapped software), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server or electronic bulletin board over the communication system (e.g., the Internet or World Wide Web).
  • As used herein a module refers to software, hardware, or firmware suitable for performing a specific data processing or data transmission task. Typically, in a preferred embodiment a module refers to a software routine, program, or other memory resident application suitable for receiving, transforming, routing and processing instructions, or various cookies, scripts, client side tracking identifiers, non-universal identifiers, universal identifiers, federating and user matching data, and other information of interest.
  • Devices and systems described herein may include operatively associated computer-readable media such as memory for storing software applications used in obtaining, processing, storing and/or communicating data. It can be appreciated that such memory can be internal, external, remote or local with respect to its operatively associated computer or computer system.
  • Memory may also include any means for storing software or other instructions including, for example and without limitation, a hard disk, an optical disk, floppy disk, DVD (digital versatile disc), CD (compact disc), memory stick, flash memory, ROM (read only memory), RAM (random access memory), DRAM (dynamic random access memory), PROM (programmable ROM), EEPROM (extended erasable PROM), and/or other like computer-readable media.
  • In general, computer-readable memory media applied in association with embodiments of the invention described herein may include any memory medium capable of storing instructions executed by a programmable apparatus. Where applicable, method steps described herein may be embodied or executed as instructions stored on a computer-readable memory medium or memory media. These instructions may be software embodied in various programming languages such as C++, C, Java, and/or a variety of other kinds of software programming languages that may be applied to create instructions in accordance with embodiments of the invention.
  • The aspects, embodiments, features, and examples of the invention are to be considered illustrative in all respects and are not intended to limit the invention, the scope of which is defined only by the claims. Other embodiments, modifications, and usages will be apparent to those skilled in the art without departing from the spirit and scope of the claimed invention.
  • The aspects, embodiments, features, and examples of the invention are to be considered illustrative in all respects and are not intended to limit the invention, the scope of which is defined only by the claims. Other embodiments, modifications, and usages will be apparent to those skilled in the art without departing from the spirit and scope of the claimed invention.
  • The use of headings and sections in the application is not meant to limit the invention; each section can apply to any aspect, embodiment, or feature of the invention.
  • Throughout the application, where compositions are described as having, including, or comprising specific components, or where processes are described as having, including or comprising specific process steps, it is contemplated that compositions of the present teachings also consist essentially of, or include, the recited components, and that the processes of the present teachings also consist essentially of, or include, the recited process steps.
  • In the application, where an element or component is said to be included in and/or selected from a list of recited elements or components, it should be understood that the element or component can be any one of the recited elements or components and can be selected from a group consisting of two or more of the recited elements or components. Further, it should be understood that elements and/or features of a composition, an apparatus, or a method described herein can be combined in a variety of ways without departing from the spirit and scope of the present teachings, whether explicit or implicit herein.
  • The use of the terms “include,” “includes,” “including,” “have,” “has,” or “having” should be generally understood as open-ended and non-limiting unless specifically stated otherwise.
  • The use of the singular herein includes the plural (and vice versa) unless specifically stated otherwise. Moreover, the singular forms “a,” “an,” and “the” include plural forms unless the context clearly dictates otherwise. In addition, where the use of the term “about” is before a quantitative value, the present teachings also include the specific quantitative value itself, unless specifically stated otherwise.
  • It should be understood that the order of steps or order for performing certain actions is immaterial so long as the present teachings remain operable. Moreover, two or more steps or actions may be conducted simultaneously.
  • Where a range or list of values is provided, each intervening value between the upper and lower limits of that range or list of values is individually contemplated and is encompassed within the invention as if each value were specifically enumerated herein. In addition, smaller ranges between and including the upper and lower limits of a given range are contemplated and encompassed within the invention. The listing of exemplary values or ranges is not a disclaimer of other values or ranges between and including the upper and lower limits of a given range,
  • The examples presented herein are intended to illustrate potential and specific implementations of the invention. It can be appreciated that the examples are intended primarily for purposes of illustration of the invention for those skilled in the art. There may be variations to these diagrams or the operations described herein without departing from the spirit of the invention. For instance, in certain cases, method steps or operations may be performed or executed in differing order, or operations may be added, deleted or modified.
  • Furthermore, whereas particular embodiments of the invention have been described herein for the purpose of illustrating the invention and not for the purpose of limiting the same, it will be appreciated by those of ordinary skill in the art that numerous variations of the details, materials and arrangement of elements, steps, structures, and/or parts may be made within the principle and scope of the invention without departing from the invention as described in the claims.

Claims (22)

1-19. (canceled)
20. A computer-based method of tracking a user across a plurality of communication channels comprising:
generating a first non-universal user identifier associated with a first communication channel in response to a first action of a mobile device;
generating a second non-universal user identifier associated with a second communication channel in response to a second action of the mobile device;
storing the first non-universal user identifier and the second non-universal user identifier in a data repository;
correlating, using an application installed on the mobile device, the stored first nonuniversal user identifier and the stored second non-universal user identifier with a universal identifier having an associated user profile, wherein,
the user profile is generated using deterministic matching utilizing a plurality of mobile device channel specific identifiers, and
the mobile device channel specific identifiers comprise one or more of cookies and product identifiers;
associating the universal identifier with a plurality of actions performed with the mobile device wherein the user profile comprises a mapping between the universal identifier and a plurality of activities performed by the user across the plurality of communication channels; and
tracking the user.
21. The computer-based method of claim 20, further comprising: generating a third non-universal user identifier associated with a third communication channel in response to a third action of the mobile device.
22. The computer-based method of claim 21, wherein the first, second, and third communication channels are selected from the group consisting of receiving text messages, receiving emails, viewing a video, viewing a webpage, viewing a video ad, viewing a webpage ad, interacting with social applications, and downloading an application.
23. The computer-based method of claim 20, further comprising: generating the user profile using approximation methods after storing the first non-universal user identifier and the second non-universal user identifier in a data repository, wherein,
the approximation methods include clustering and probabilistic matching using the plurality of mobile device channel specific identifiers; and
associating the universal identifier with the plurality of actions comprises using a computing device running a Bayesian network to perform the probabilistic matching.
24. The computer-based method of claim 20, further comprising comparing one or more user profiles to incoming request profiles using a probabilistic Bayesian network running on computing device.
25. A computer-based method of generating user profiles for tracking users, comprising:
identifying, via a receiver layer, one or more events at a mobile device, wherein each event is associated with a communication channel in response to an action of the mobile device;
issuing an event identifier for each of the one or more events, wherein each event identifier is one of a non-universal unique identifier and a non-universal non-unique identifier;
receiving, at a multi-channel tracking data store, information pertaining to the one or more events and the each of the event identifiers; and
matching at least a portion of each of the event identifiers with a universal identifier using one of deterministic matching or probabilistic matching based in part on the receiving, wherein.
the matching comprises one of updating or generating the universal identifier, and
the universal identifier is associated with a user profile.
26. The method of claim 25, further comprising:
collecting, via a client-side agent in the mobile device, the one or more events and each of the event identifiers using Universal User Tracking JavaScript, wherein a script tag associated with the Universal User Tracking JavaScript is inserted into content or advertisement delivered over each of the communication channels; and
sending the one or events and each of the event identifiers to the receiver layer.
27. The method of claim 26, further comprising:
logging the one or more events and each of the event identifiers at a mobile ad server; and
generating the unique identifier based in part on estimating that a correlation of the logged one or more event identifiers exceeds a threshold, wherein the estimating is based at least in part on an approximation algorithm.
28. The method of claim 26, wherein the probabilistic matching further comprises:
comparing one of the one or more events and the issued event identifier for the one of the one or more events with a threshold, wherein,
the threshold is based at least in part on a plurality of mobile device channel specific identifiers for the mobile device,
the plurality of mobile device channel specific identifiers are selected from a group consisting of a first party cookie, a third party cookie, and a plurality of product identifiers; and
one of updating the universal identifier with information related to the matched event identifier and generating the universal identifier for the associated event identifier based at least in part on the comparing.
29. The method of claim 26, wherein the client-side agent is configured to track one or more of page views and content object user interaction events.
30. The method of claim 29, wherein,
the client-side agent is further configured to store user identifier mappings between the universal identifier and one or more product channel identifiers accessed by a user of the mobile device; and
the user identifier mappings are stored in a database of the mobile device.
31. The method of claim 25, wherein the universal identifier comprises a universal identifier cookie, and wherein the universal identifier cookie is generated at the mobile device.
32. The method of claim 25, wherein the matching further comprises:
generating and storing one or more mobile device channel specific identifiers at the mobile device based at least in part on accessing a channel associated with each of the one or more mobile device channel specific identifiers, the mobile device channel specific identifiers selected from a group consisting of a first party cookie, a third party cookie, and a plurality of product identifiers;
generating the universal identifier at the mobile device; and
deterministically or probabilistically cross channel correlating at least a portion of the mobile device channel specific identifiers with the universal identifier.
33. The method of claim 25, further comprising:
identifying and capturing one or more attributes associated with the one or more events at the mobile device, wherein the one or more attributes comprise one or more of a MSISDN telephone number for SMS and MMS messaging products, an email address for CRM channels, application identifiers for native applications, mobile web browser cookies, and network operator information;
assigning a hash number to each of the one or more attributes, wherein the assigning comprises hashing each of the one or more attributes with their associated hash number; and
mapping the one or more hashed attributes to the universal identifier.
34. The method of claim 25, wherein probabilistic matching is based at least in part on one of determining a probability of a successful deterministic matching is below a threshold, and an absence of deterministic matching.
35. The method of claim 25, wherein the one or more event identifiers are selected from a group consisting of a user identifier issued by a mobile device operator of the mobile device, first party cookies stored in the mobile device, session identification identifiers stored in the mobile device, and user tracking cookies stored in the mobile device.
36. The method of claim 35, further comprising:
passing one or more 3rd party ad server cookies to the mobile device, wherein passing the one or more 3rd party ad server cookies comprises translating the one or more 3rd party ad server cookies to the first party cookies or the user tracking cookies;
generating, at an ad server, the universal identifier;
tracking at least one event at the mobile device using a combination of the generated universal identifier and one or more of the first party cookies and the user tracking cookies.
37. The method of claim 35, further comprising:
including a universal URL in an ad request, wherein the ad request is transmitted from the mobile device to a third party ad server based on accessing a mobile site from the mobile device;
receiving, at the mobile device, a response to the ad request, wherein the response includes a file for tracking user interactions with the mobile site or an ad;
correlating a communication channel associated with the third-party ad server to the universal identifier based in part on the tracking.
38. The method of claim 25, further comprising:
accessing a native application within the mobile device, wherein the native application comprises a custom URL, and wherein the native application is associated with a native application communication channel and native application identifier;
appending a browser ad request URL to the custom URL based in part on the accessing;
presenting a browser ad within a browser of the mobile device based in part on the appending, wherein the browser ad includes at least a tracking JavaScript and the universal identifier, and wherein the presenting further comprises tracking user interactions with the browser ad;
retrieving the custom URL from the browser, wherein the retrieving comprises storing the native application identifier and the universal identifier in a database of the browser; and
correlating the native application identifier and a device identifier for the mobile device with the universal identifier based in part on the retrieving.
39. The method of claim 25, further comprising:
generating a compact URL, wherein the compact URL is associated with a hash and a Mobile Station International Subscriber Directory Number (MSISDN) for the mobile device;
generating an event identifier based in part on the custom URL;
transmitting a SMS or MMS message comprising the compact URL to the mobile device; and
correlating the event identifier with the universal identifier based at least in part on accessing the compact URL via the mobile device.
40. The method of claim 25, wherein at least one event identifier is a mobile device channel specific identifier.
US16/840,110 2012-03-29 2020-04-03 Cross-channel user tracking systems, methods, and devices Abandoned US20200236569A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/840,110 US20200236569A1 (en) 2012-03-29 2020-04-03 Cross-channel user tracking systems, methods, and devices

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261617357P 2012-03-29 2012-03-29
US13/843,710 US10616782B2 (en) 2012-03-29 2013-03-15 Cross-channel user tracking systems, methods and devices
US16/840,110 US20200236569A1 (en) 2012-03-29 2020-04-03 Cross-channel user tracking systems, methods, and devices

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US13/843,710 Continuation US10616782B2 (en) 2012-03-29 2013-03-15 Cross-channel user tracking systems, methods and devices

Publications (1)

Publication Number Publication Date
US20200236569A1 true US20200236569A1 (en) 2020-07-23

Family

ID=49237512

Family Applications (2)

Application Number Title Priority Date Filing Date
US13/843,710 Expired - Fee Related US10616782B2 (en) 2012-03-29 2013-03-15 Cross-channel user tracking systems, methods and devices
US16/840,110 Abandoned US20200236569A1 (en) 2012-03-29 2020-04-03 Cross-channel user tracking systems, methods, and devices

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US13/843,710 Expired - Fee Related US10616782B2 (en) 2012-03-29 2013-03-15 Cross-channel user tracking systems, methods and devices

Country Status (1)

Country Link
US (2) US10616782B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220166843A1 (en) * 2020-11-23 2022-05-26 Hyver Labs, LLC d/b/a/ Persosa Systems and Methods for a Cross-Site Opt-In Network

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9412123B2 (en) 2003-07-01 2016-08-09 The 41St Parameter, Inc. Keystroke analysis
US10999298B2 (en) 2004-03-02 2021-05-04 The 41St Parameter, Inc. Method and system for identifying users and detecting fraud by use of the internet
US11301585B2 (en) 2005-12-16 2022-04-12 The 41St Parameter, Inc. Methods and apparatus for securely displaying digital images
US8938671B2 (en) 2005-12-16 2015-01-20 The 41St Parameter, Inc. Methods and apparatus for securely displaying digital images
US8151327B2 (en) 2006-03-31 2012-04-03 The 41St Parameter, Inc. Systems and methods for detection of session tampering and fraud prevention
US11120471B2 (en) * 2013-10-18 2021-09-14 Segmint Inc. Method and system for targeted content placement
US8984390B2 (en) 2008-09-15 2015-03-17 Palantir Technologies, Inc. One-click sharing for screenshots and related documents
US9112850B1 (en) 2009-03-25 2015-08-18 The 41St Parameter, Inc. Systems and methods of sharing information through a tag-based consortium
US9361597B2 (en) 2010-10-19 2016-06-07 The 41St Parameter, Inc. Variable risk engine
US8732574B2 (en) 2011-08-25 2014-05-20 Palantir Technologies, Inc. System and method for parameterizing documents for automatic workflow generation
US10754913B2 (en) 2011-11-15 2020-08-25 Tapad, Inc. System and method for analyzing user device information
US9619811B2 (en) 2011-12-20 2017-04-11 Bitly, Inc. Systems and methods for influence of a user on content shared via 7 encoded uniform resource locator (URL) link
US9633201B1 (en) 2012-03-01 2017-04-25 The 41St Parameter, Inc. Methods and systems for fraud containment
US9521551B2 (en) * 2012-03-22 2016-12-13 The 41St Parameter, Inc. Methods and systems for persistent cross-application mobile device identification
US10282758B1 (en) * 2012-04-06 2019-05-07 MaxPoint Interactive, Inc. Pricing control in a real-time network-based bidding environment
US9305053B2 (en) 2012-05-02 2016-04-05 Google Inc. Dynamic sessionization of analytics data
EP2878141A4 (en) * 2012-05-10 2016-04-27 Drawbridge Inc System and method for determining related digital identities
US10348657B1 (en) * 2012-06-28 2019-07-09 Open Text Corporation System for delivering notification messages across different notification media
US11127041B1 (en) 2012-06-29 2021-09-21 Groupon, Inc. Customization of message delivery time based on consumer behavior
EP2880619A1 (en) 2012-08-02 2015-06-10 The 41st Parameter, Inc. Systems and methods for accessing records via derivative locators
US9348677B2 (en) 2012-10-22 2016-05-24 Palantir Technologies Inc. System and method for batch evaluation programs
WO2014078569A1 (en) 2012-11-14 2014-05-22 The 41St Parameter, Inc. Systems and methods of global identification
US8868486B2 (en) 2013-03-15 2014-10-21 Palantir Technologies Inc. Time-sensitive cube
US8909656B2 (en) 2013-03-15 2014-12-09 Palantir Technologies Inc. Filter chains with associated multipath views for exploring large data sets
US20140279074A1 (en) * 2013-03-15 2014-09-18 Turn Inc. Data management platform for digital advertising
US20140358690A1 (en) * 2013-05-28 2014-12-04 Shoutz, Inc. Method and system for user identification and communication
US10482506B2 (en) * 2013-06-14 2019-11-19 Blue Kai, Inc. Client caching identification tracking
US10902327B1 (en) 2013-08-30 2021-01-26 The 41St Parameter, Inc. System and method for device identification and uniqueness
US9747619B2 (en) * 2013-09-04 2017-08-29 Stuzo, LLC Engine, system and method of providing application and analytic services across diverse operating platforms
US9491249B2 (en) 2013-10-25 2016-11-08 Dorin ROSENSHINE Integrating offsite activities related to chat and text messaging with online data records
US9105000B1 (en) 2013-12-10 2015-08-11 Palantir Technologies Inc. Aggregating data from a plurality of data sources
US8935201B1 (en) 2014-03-18 2015-01-13 Palantir Technologies Inc. Determining and extracting changed data from a data source
US9785974B1 (en) 2014-04-18 2017-10-10 Rocket Fuel Inc. Identifying mobile application installations
US10282479B1 (en) * 2014-05-08 2019-05-07 Google Llc Resource view data collection
US10078854B1 (en) * 2014-05-29 2018-09-18 Sprint Communications Company L.P. Interface for cross-channel advertising campaign
US20160359989A1 (en) * 2015-06-02 2016-12-08 UserIQ, Inc. Recording And Triggering Web And Native Mobile Application Events With Mapped Data Fields
US10373209B2 (en) * 2014-07-31 2019-08-06 U-Mvpindex Llc Driving behaviors, opinions, and perspectives based on consumer data
WO2016032922A1 (en) * 2014-08-25 2016-03-03 SR Solutions, Inc. Facilitating communication with a visitor to a web-based information resource
US10091312B1 (en) 2014-10-14 2018-10-02 The 41St Parameter, Inc. Data structures for intelligently resolving deterministic and probabilistic device identifiers to device profiles and/or groups
US20160253709A1 (en) * 2015-02-27 2016-09-01 Linkedin Corporation Online advertisement forecasting using targeted messages
US20160260140A1 (en) * 2015-03-06 2016-09-08 Spotify Ab System and method for providing a promoted track display for use with a media content or streaming environment
US11070608B2 (en) * 2015-06-17 2021-07-20 Fastly, Inc. Expedited sub-resource loading
US10425492B2 (en) * 2015-07-07 2019-09-24 Bitly, Inc. Systems and methods for web to mobile app correlation
US10789612B2 (en) 2015-09-18 2020-09-29 Mms Usa Holdings Inc. Universal identification
US20190279236A1 (en) * 2015-09-18 2019-09-12 Mms Usa Holdings Inc. Micro-moment analysis
US20170116047A1 (en) * 2015-10-25 2017-04-27 Khozem Z. Dohadwala Further applications of Reading State control - A method for repositioning reading material on electronic devices
US10607254B1 (en) * 2016-02-16 2020-03-31 Google Llc Attribution modeling using withheld or near impressions
US9807184B1 (en) 2016-06-02 2017-10-31 Tealium Inc. Configuration of content site user interaction monitoring in data networks
US10193882B2 (en) * 2016-06-12 2019-01-29 Criteo Sa Provision of cross-device identification
GB2551784A (en) * 2016-06-30 2018-01-03 Ack Ventures Holdings Uk Ltd System and method for digital advertising campaign optimization
US11080722B2 (en) * 2016-09-21 2021-08-03 Fair Isaac Corporation Methods and systems for multichannel micro-interactions
KR102504075B1 (en) * 2017-05-08 2023-02-27 브랜치 메트릭스 인코포레이티드 Matching and attributes of user device events
US10825060B2 (en) 2017-09-07 2020-11-03 Verizon Media Inc. Systems and methods for providing targeted content across user channels
US10984427B1 (en) * 2017-09-13 2021-04-20 Palantir Technologies Inc. Approaches for analyzing entity relationships
PL3729255T3 (en) * 2017-12-22 2024-03-11 6Sense Insights, Inc. Mapping entities to accounts
US20190288927A1 (en) * 2018-03-14 2019-09-19 Scaled Inference, Inc. Methods and systems for generating data visualizations and control interfaces to transform computing analytics frameworks into cross-platform real-time decision-making systems
CA3042921A1 (en) * 2018-05-10 2019-11-10 Royal Bank Of Canada Machine natural language processing for summarization and sentiment analysis
US11164206B2 (en) * 2018-11-16 2021-11-02 Comenity Llc Automatically aggregating, evaluating, and providing a contextually relevant offer
CN112740622B (en) * 2018-11-30 2023-01-31 思莱克技术公司 Method and apparatus for generating an external shared communication channel
US11403649B2 (en) 2019-09-11 2022-08-02 Toast, Inc. Multichannel system for patron identification and dynamic ordering experience enhancement
CN110704056A (en) * 2019-09-23 2020-01-17 阿里巴巴集团控股有限公司 Method, device and equipment for information sharing
US11973834B1 (en) 2022-12-21 2024-04-30 Carbon6 Technologies Inc. Network traffic monitoring and optimization engine

Family Cites Families (150)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7072849B1 (en) 1988-07-15 2006-07-04 International Business Machines Corporation Method for presenting advertising in an interactive service
US5745766A (en) 1994-09-19 1998-04-28 International Business Machines Corporation PC product registration and tracking
US5559562A (en) 1994-11-01 1996-09-24 Ferster; William MPEG editor method and apparatus
US5758257A (en) 1994-11-29 1998-05-26 Herz; Frederick System and method for scheduling broadcast of and access to video programs and other data using customer profiles
US5835061A (en) 1995-06-06 1998-11-10 Wayport, Inc. Method and apparatus for geographic-based communications service
US5710887A (en) 1995-08-29 1998-01-20 Broadvision Computer system and method for electronic commerce
US20030093790A1 (en) 2000-03-28 2003-05-15 Logan James D. Audio and video program recording, editing and playback systems using metadata
US6034746A (en) 1997-10-27 2000-03-07 International Business Machines Corporation System and method for inserting data into a digital audio/video data stream
IL122194A0 (en) 1997-11-13 1998-06-15 Scidel Technologies Ltd Method and apparatus for personalized images inserted into a video stream
US6647257B2 (en) 1998-01-21 2003-11-11 Leap Wireless International, Inc. System and method for providing targeted messages based on wireless mobile location
JP3513003B2 (en) 1998-03-18 2004-03-31 富士通株式会社 Information providing apparatus and information providing method
US6049797A (en) 1998-04-07 2000-04-11 Lucent Technologies, Inc. Method, apparatus and programmed medium for clustering databases with categorical attributes
US6704930B1 (en) 1999-04-20 2004-03-09 Expanse Networks, Inc. Advertisement insertion techniques for digital video streams
US20020111172A1 (en) * 2001-02-14 2002-08-15 Dewolf Frederik M. Location based profiling
US7089579B1 (en) 1998-12-20 2006-08-08 Tvworks, Llc System for transporting MPEG video as streaming video in an HTML web page
US6865747B1 (en) 1999-04-01 2005-03-08 Digital Video Express, L.P. High definition media storage structure and playback mechanism
JP3770831B2 (en) 1999-08-18 2006-04-26 富士通株式会社 Network load balancing computer, monitoring apparatus, method thereof, and recording medium recording program therefor
US6614808B1 (en) 1999-09-02 2003-09-02 International Business Machines Corporation Network packet aggregation
US6567786B1 (en) 1999-09-16 2003-05-20 International Business Machines Corporation System and method for increasing the effectiveness of customer contact strategies
US7844491B1 (en) 1999-10-19 2010-11-30 Netzero, Inc. Sponsorship/advertising for an internet client
US6567854B1 (en) 1999-10-21 2003-05-20 Genuity Inc. Internet service delivery via server pushed personalized advertising dashboard
US6594691B1 (en) 1999-10-28 2003-07-15 Surfnet Media Group, Inc. Method and system for adding function to a web page
US6394899B1 (en) 1999-10-29 2002-05-28 Stephen Tobin Walker Method of playing a knowledge based wagering game
US6578199B1 (en) 1999-11-12 2003-06-10 Fujitsu Limited Automatic tracking system and method for distributable software
FR2802677B1 (en) 1999-12-17 2002-01-18 Thomson Multimedia Sa SECURE REMOTE GAME MANAGEMENT METHOD
US7089576B1 (en) 1999-12-30 2006-08-08 Thomson Licensing Ratings control system with temporary override capability and conflict resolution feature
KR100366760B1 (en) 2000-01-12 2003-01-08 주식회사 위즈맥스 A method of combining multi media files
US6621866B1 (en) 2000-01-28 2003-09-16 Thomson Licensing S.A. Method for inserting a visual element into an MPEG bit stream
AU2001264947B2 (en) 2000-05-24 2005-02-24 Excalibur Ip, Llc Online media exchange
US6766956B1 (en) 2000-06-08 2004-07-27 United Video Properties, Inc. System and method for using portable device with bar-code scanner
JP2004510176A (en) 2000-06-29 2004-04-02 ミュージックゲノム.コム インコーポレイテッド Use of a system for predicting music preferences to distribute music content over a cellular network
US7240036B1 (en) 2000-07-13 2007-07-03 Gtech Global Services Corporation Method and system for facilitation of wireless e-commerce transactions
US9503789B2 (en) 2000-08-03 2016-11-22 Cox Communications, Inc. Customized user interface generation in a video on demand environment
US7536686B2 (en) 2000-09-08 2009-05-19 Oracle International Corporation Techniques for automatically installing and configuring database applications
US20020128908A1 (en) 2000-09-15 2002-09-12 Levin Brian E. System for conducting user-specific promotional campaigns using multiple communications device platforms
WO2002039718A2 (en) 2000-10-19 2002-05-16 Loudeye Technologies, Inc. System and method for selective insertion of content into streaming media
WO2002042926A1 (en) 2000-11-20 2002-05-30 Ecrio Inc. Method for downloading bar code encoded information with a mobile communication
US6688982B2 (en) 2000-11-29 2004-02-10 Agency.Com Ltd. Wireless communications system for a quiz game
US7062466B2 (en) 2000-12-06 2006-06-13 The Belo Company Method and system for operating online classified advertisements
US7702800B2 (en) 2000-12-18 2010-04-20 International Business Machines Corporation Detecting and handling affinity breaks in web applications
US20020087976A1 (en) 2000-12-28 2002-07-04 Kaplan Marc P. System and method for distributing video with targeted advertising using switched communication networks
US7062469B2 (en) 2001-01-02 2006-06-13 Nokia Corporation System and method for public wireless network access subsidized by dynamic display advertising
US7343317B2 (en) 2001-01-18 2008-03-11 Nokia Corporation Real-time wireless e-coupon (promotion) definition based on available segment
US7970645B2 (en) 2001-02-23 2011-06-28 Cox Communications, Inc. Method and apparatus for providing targeted advertisements
WO2002076077A1 (en) 2001-03-16 2002-09-26 Leap Wireless International, Inc. Method and system for distributing content over a wireless communications system
US20030004802A1 (en) 2001-03-19 2003-01-02 Jeff Callegari Methods for providing a virtual coupon
US20020178445A1 (en) 2001-04-03 2002-11-28 Charles Eldering Subscriber selected advertisement display and scheduling
WO2002082221A2 (en) 2001-04-06 2002-10-17 Vert Tech Llc A method and systems for creating e-marketplace operations
US7017145B2 (en) 2001-05-09 2006-03-21 Sun Microsystems, Inc. Method, system, and program for generating a user interface
JP2002351909A (en) 2001-05-23 2002-12-06 Fujitsu Ltd Information distribution method
US8131585B2 (en) 2001-06-14 2012-03-06 Nicholas Frank C Method and system for providing network based target advertising
US20040054589A1 (en) 2001-06-14 2004-03-18 Nicholas Frank C. Method and system for providing network based target advertising and encapsulation
US6757735B2 (en) 2001-07-03 2004-06-29 Hewlett-Packard Development Company, L.P. Method for distributing multiple description streams on servers in fixed and mobile streaming media systems
WO2003034300A2 (en) 2001-09-04 2003-04-24 Ramon Van Der Riet Marketing communication and transaction/distribution services platform for building and managing personalized customer relationships
US20030065558A1 (en) 2001-09-12 2003-04-03 Cameron Shaw Method and apparatus for multi-vendor powered business portal with intelligent service promotion and user profile gathering
JP2003091629A (en) 2001-09-18 2003-03-28 Matsushita Electric Ind Co Ltd Marketing information preparing device and method
US7632101B2 (en) 2001-10-05 2009-12-15 Vision Works Ip Corporation Method and apparatus for periodically questioning a user using a computer system or other device to facilitate memorization and learning of information
US7044362B2 (en) 2001-10-10 2006-05-16 Hewlett-Packard Development Company, L.P. Electronic ticketing system and method
US7096488B1 (en) 2001-10-19 2006-08-22 Cisco Technology, Inc. Methods and apparatus for facilitating network splicing
US7006976B2 (en) 2002-01-29 2006-02-28 Pace Micro Technology, Llp Apparatus and method for inserting data effects into a digital data stream
US20030149618A1 (en) 2002-02-01 2003-08-07 Microsoft Corporation Flexible dynamic advertising
US7127261B2 (en) 2002-02-22 2006-10-24 Julian Van Erlach Enhanced telecommunication services
US7680796B2 (en) 2003-09-03 2010-03-16 Google, Inc. Determining and/or using location information in an ad system
US6800031B2 (en) 2002-04-15 2004-10-05 Microsoft Corporation Method of conducting an interactive competition
US7764617B2 (en) 2002-04-29 2010-07-27 Harris Corporation Mobile ad-hoc network and methods for performing functions therein based upon weighted quality of service metrics
GB0211734D0 (en) 2002-05-21 2002-07-03 Nokia Corp Ticketing system
US7711791B2 (en) 2002-06-26 2010-05-04 Clear Channel Management Services, Inc. Using multiple media players to insert data items into a media stream of a streaming media
US7257105B2 (en) 2002-10-03 2007-08-14 Cisco Technology, Inc. L2 method for a wireless station to locate and associate with a wireless network in communication with a Mobile IP agent
US20040122735A1 (en) 2002-10-09 2004-06-24 Bang Technologies, Llc System, method and apparatus for an integrated marketing vehicle platform
US20050015816A1 (en) 2002-10-29 2005-01-20 Actv, Inc System and method of providing triggered event commands via digital program insertion splicing
EP1415691A1 (en) 2002-10-31 2004-05-06 Siemens Mobile Communications S.p.A. System for and method of managing games in mobile communications networks
US7139761B2 (en) 2002-12-11 2006-11-21 Leader Technologies, Inc. Dynamic association of electronically stored information with iterative workflow changes
US7237061B1 (en) 2003-04-17 2007-06-26 Realnetworks, Inc. Systems and methods for the efficient reading of data in a server system
US20090132347A1 (en) 2003-08-12 2009-05-21 Russell Wayne Anderson Systems And Methods For Aggregating And Utilizing Retail Transaction Records At The Customer Level
US20050222989A1 (en) 2003-09-30 2005-10-06 Taher Haveliwala Results based personalization of advertisements in a search engine
US7203684B2 (en) 2003-10-07 2007-04-10 Google, Inc Serving content-targeted ADS in e-mail, such as e-mail newsletters
US20050091682A1 (en) 2003-10-23 2005-04-28 David Czeck System and method for providing advertising after a video program has been paused
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
US7163149B2 (en) 2004-03-02 2007-01-16 Symbol Technologies, Inc. System and method for illuminating and reading optical codes imprinted or displayed on reflective surfaces
US20050223316A1 (en) 2004-04-01 2005-10-06 Sun Microsystems, Inc. Compiled document type definition verifier
US7502368B2 (en) 2004-04-08 2009-03-10 John Sanders Method and apparatus for switching a source of an audiovisual program configured for distribution among user terminals
US7653001B2 (en) 2004-04-09 2010-01-26 At&T Mobility Ii Llc Managing differences in user devices when sharing content on mobile devices
US7877327B2 (en) 2004-05-03 2011-01-25 Trintuition Llc Apparatus and method for creating and using documents in a distributed computing network
CN100583987C (en) 2004-07-14 2010-01-20 松下电器产业株式会社 Method for authenticating and executing application
US20060031892A1 (en) 2004-08-05 2006-02-09 Bitband Technologies Ltd. Prevention of advertisement skipping
US20060059044A1 (en) 2004-09-14 2006-03-16 Chan Wesley T Method and system to provide advertisements based on wireless access points
US20060085816A1 (en) 2004-10-18 2006-04-20 Funk James M Method and apparatus to control playback in a download-and-view video on demand system
US7251478B2 (en) 2004-11-01 2007-07-31 Xcellasave, Inc. Method for advertising on digital cellular telephones and reducing costs to the end user
CN101120377A (en) 2004-11-04 2008-02-06 罗卡莫达公司 A system and method for interactive marketing
US20060136286A1 (en) 2004-12-22 2006-06-22 Microsoft Corporation Method and apparatus for marketing using templates, lists and activities
US20060173744A1 (en) 2005-02-01 2006-08-03 Kandasamy David R Method and apparatus for generating, optimizing, and managing granular advertising campaigns
US20060248209A1 (en) 2005-04-27 2006-11-02 Leo Chiu Network system for facilitating audio and video advertising to end users through audio and video podcasts
US7818741B1 (en) 2005-05-17 2010-10-19 Adobe Systems Incorporated Method and system to monitor installation of a software program
US20060287912A1 (en) 2005-06-17 2006-12-21 Vinayak Raghuvamshi Presenting advertising content
US7660581B2 (en) 2005-09-14 2010-02-09 Jumptap, Inc. Managing sponsored content based on usage history
US8688671B2 (en) 2005-09-14 2014-04-01 Millennial Media Managing sponsored content based on geographic region
US7769764B2 (en) 2005-09-14 2010-08-03 Jumptap, Inc. Mobile advertisement syndication
US7548915B2 (en) 2005-09-14 2009-06-16 Jorey Ramer Contextual mobile content placement on a mobile communication facility
US7702318B2 (en) 2005-09-14 2010-04-20 Jumptap, Inc. Presentation of sponsored content based on mobile transaction event
EP1936555A4 (en) 2005-09-29 2011-04-13 Japan Tobacco Inc Simulator, effect measuring device, and sale promotion supporting system
US8677020B2 (en) 2005-10-17 2014-03-18 Amobee Inc. Device, system and method of wireless delivery of targeted advertisements
US20070088852A1 (en) 2005-10-17 2007-04-19 Zohar Levkovitz Device, system and method of presentation of advertisements on a wireless device
US20070088801A1 (en) 2005-10-17 2007-04-19 Zohar Levkovitz Device, system and method of delivering targeted advertisements using wireless application protocol
US10657538B2 (en) 2005-10-25 2020-05-19 Sony Interactive Entertainment LLC Resolution of advertising rules
US20070143181A1 (en) 2005-12-16 2007-06-21 Josh Linkner Fully automated interactive promotion tool including wizard-driven web interface
CA2635671A1 (en) 2005-12-28 2007-07-26 Global Direct Management Corp. System and method for advertising in a communication system
US20070174230A1 (en) 2006-01-25 2007-07-26 Eric Richard Martin System and method for displaying information in association with an electronic file management application
US8218651B1 (en) 2006-02-28 2012-07-10 Arris Group, Inc System and method for splicing
WO2007113858A2 (en) 2006-04-04 2007-10-11 Bhavin Turakhia Method and apparatus for inserting and removing advertisements
US7962933B2 (en) 2006-04-06 2011-06-14 Velti USA, Inc. Mid-roll insertion of digital media
US20080040215A1 (en) 2006-04-06 2008-02-14 Ad Infuse, Inc. Mid-Roll Insertion of Digital Media
US7992165B1 (en) 2006-04-06 2011-08-02 Velti USA, Inc. Insertion of digital media
US20070256095A1 (en) 2006-04-27 2007-11-01 Collins Robert J System and method for the normalization of advertising metrics
US7797441B1 (en) 2006-05-18 2010-09-14 Sprint Communications Company L.P. Methods and systems for streaming advertising content
US7739594B2 (en) 2006-05-22 2010-06-15 Google Inc. Encoding and displaying default landing page content
US20070276726A1 (en) 2006-05-23 2007-11-29 Dimatteo Keith In-stream advertising message system
US20070283384A1 (en) 2006-05-31 2007-12-06 Sbc Knowledge Ventures, Lp System and method of providing targeted advertisements
US7836511B2 (en) 2006-06-14 2010-11-16 Microsoft Corporation Enforcing advertisement playback for downloaded media content
US20070294423A1 (en) 2006-06-14 2007-12-20 Comverse, Inc. Multi-Client Single-Session Media Streaming
US20070294292A1 (en) 2006-06-14 2007-12-20 Microsoft Corporation Advertising transfer and playback on portable devices
US7975310B2 (en) 2006-06-14 2011-07-05 Microsoft Corporation Offline playback of advertising supported media
WO2008062444A2 (en) 2006-09-14 2008-05-29 Bhavin Turakhia Method for inserting ads in content through a proxy
US20080103953A1 (en) 2006-10-25 2008-05-01 Microsoft Corporation Tool for optimizing advertising across disparate advertising networks
US20080103952A1 (en) 2006-10-25 2008-05-01 Microsoft Corporation Specifying and normalizing utility functions of participants in an advertising exchange
US20080120364A1 (en) 2006-11-20 2008-05-22 Amalavoyal Chari Content insertion in a mesh network
US20080147484A1 (en) 2006-12-13 2008-06-19 Xero Mobile Inc. High speed advertising to mobile transceivers
US20080189735A1 (en) 2006-12-26 2008-08-07 Jason Shawn Barton System and Method for Combining Media Data
US7912217B2 (en) 2007-03-20 2011-03-22 Cisco Technology, Inc. Customized advertisement splicing in encrypted entertainment sources
US20080255944A1 (en) * 2007-03-29 2008-10-16 Shah Nitin J Campaign Management Platform for Network-Based Online Advertising and Directed Media Transmission System
US20090013347A1 (en) 2007-06-11 2009-01-08 Gulrukh Ahanger Systems and methods for reporting usage of dynamically inserted and delivered ads
US8335266B2 (en) 2007-06-29 2012-12-18 Cisco Technology, Inc. Expedited splicing of video streams
CN101802860A (en) 2007-07-09 2010-08-11 维蒂公开股份有限公司 Mobile device marketing and advertising platforms, methods, and systems
US8635106B2 (en) * 2007-07-11 2014-01-21 Yahoo! Inc. System for targeting data to users on mobile devices
US8069464B2 (en) 2007-07-27 2011-11-29 Cisco Technology, Inc. Architecture for scaling just-in-time placement of advertising content
US8392241B2 (en) 2007-08-30 2013-03-05 Google Inc. Publisher ad review
US9137316B2 (en) 2007-09-26 2015-09-15 Cisco Technology, Inc. Controlling receipt of electronic advertising
US8108893B2 (en) 2007-10-05 2012-01-31 Alcatel Lucent Targeted/addressable advertisement insertion into video streams delivered to users using a VLAN
US8775391B2 (en) * 2008-03-26 2014-07-08 Zettics, Inc. System and method for sharing anonymous user profiles with a third party
US8935381B2 (en) * 2007-11-27 2015-01-13 Zettics, Inc. Method and apparatus for real-time collection of information about application level activity and other user information on a mobile data network
US20090150926A1 (en) 2007-12-06 2009-06-11 General Instrument Corporation Method And Apparatus For Delivering SDV Programming With Targeted Advertising To Selected Groups Of Subscribers
US8051445B2 (en) 2008-01-31 2011-11-01 Microsoft Corporation Advertisement insertion
EP2274713A4 (en) 2008-03-11 2012-06-20 Hongguag Bi Ad matching system and method thereof
US8559438B2 (en) 2008-04-11 2013-10-15 Mobitv, Inc. Modification of live streams
US20100015926A1 (en) * 2008-07-18 2010-01-21 Luff Robert A System and methods to monitor and analyze events on wireless devices to predict wireless network resource usage
US20100228625A1 (en) 2008-10-06 2010-09-09 Eswar Priyadarshan Wireless network user tracking
WO2010080641A1 (en) * 2008-12-18 2010-07-15 Ihc Intellectual Asset Management, Llc Probabilistic natural language processing using a likelihood vector
US20100161506A1 (en) * 2008-12-19 2010-06-24 Nurago Gmbh Mobile device and method for providing logging and reporting of user-device interaction
EP2239700A1 (en) 2009-02-13 2010-10-13 Rapid Mobile Media Ltd. A system and method for determining user response to wireless messages
US20110066488A1 (en) 2009-09-17 2011-03-17 Ad Infuse, Inc. Mobile ad routing
US8595058B2 (en) 2009-10-15 2013-11-26 Visa U.S.A. Systems and methods to match identifiers

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220166843A1 (en) * 2020-11-23 2022-05-26 Hyver Labs, LLC d/b/a/ Persosa Systems and Methods for a Cross-Site Opt-In Network
US11689635B2 (en) * 2020-11-23 2023-06-27 Carvana, LLC Systems and methods for a cross-site opt-in network
US12107938B2 (en) 2020-11-23 2024-10-01 Carvana, LLC Systems and methods for a cross-site opt-in network

Also Published As

Publication number Publication date
US10616782B2 (en) 2020-04-07
US20140120864A1 (en) 2014-05-01

Similar Documents

Publication Publication Date Title
US20200236569A1 (en) Cross-channel user tracking systems, methods, and devices
US12010191B2 (en) Methods and apparatus to share online media impressions data
US11734377B2 (en) Universal visitor identification system
US10728596B2 (en) Protecting user privacy during collection of demographics census data
US8700618B2 (en) Tracking implicit trajectory of content sharing
JP2020004415A (en) Method and device for specifying impression using distributed demographic information
US20140279045A1 (en) Cross-domain id synchronization in online advertisement
US20120271719A1 (en) Targeting advertising based on tracking content sharing
KR20150130282A (en) Intelligent platform for real-time bidding
CN104488277A (en) Methods and apparatus to monitor media presentations
KR20210152593A (en) Methods and apparatus to collect distributed user information for media impressions and search terms
US20150245110A1 (en) Management of invitational content during broadcasting of media streams
CN103765858A (en) A method and server for monitoring users during their browsing within a communications network
US20230022018A1 (en) Integrating secure watermarks into content
US20080243625A1 (en) Sharing Revenue With a User-Selected Entity
WO2014203015A1 (en) Cross-channel user tracking systems, methods and devices
EP3528501A1 (en) Methods and apparatus to measure media using media object characteristics
JP2020030849A (en) Apparatus, methods and storage media to share online media impression data
Valova Developing a social media marketing tool
WO2019069060A1 (en) System for tracking user interactions

Legal Events

Date Code Title Description
STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: EX PARTE QUAYLE ACTION MAILED

AS Assignment

Owner name: MGAGE, LLC, GEORGIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MANOLARAKIS, CHRISTOS;CARRON, MAURICE J;LANDSMAN, RICK;SIGNING DATES FROM 20190826 TO 20190830;REEL/FRAME:058029/0075

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO EX PARTE QUAYLE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STCB Information on status: application discontinuation

Free format text: ABANDONMENT FOR FAILURE TO CORRECT DRAWINGS/OATH/NONPUB REQUEST