WO2013184588A1 - Method and system for determining touchpoint attribution - Google Patents

Method and system for determining touchpoint attribution Download PDF

Info

Publication number
WO2013184588A1
WO2013184588A1 PCT/US2013/043924 US2013043924W WO2013184588A1 WO 2013184588 A1 WO2013184588 A1 WO 2013184588A1 US 2013043924 W US2013043924 W US 2013043924W WO 2013184588 A1 WO2013184588 A1 WO 2013184588A1
Authority
WO
WIPO (PCT)
Prior art keywords
attribute
touchpoint
implemented method
computer implemented
attributes
Prior art date
Application number
PCT/US2013/043924
Other languages
French (fr)
Inventor
Anto CHITTILAPPILLY
Madan BHARADWAJ
Payman Sadegh
Original Assignee
Visual Iq, Inc.
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
Priority claimed from US13/492,493 external-priority patent/US9183562B2/en
Priority claimed from US13/789,459 external-priority patent/US20170300959A9/en
Priority claimed from US13/789,453 external-priority patent/US20180005261A9/en
Application filed by Visual Iq, Inc. filed Critical Visual Iq, Inc.
Publication of WO2013184588A1 publication Critical patent/WO2013184588A1/en

Links

Classifications

    • 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

Definitions

  • the embodiments disclosed herein relate to bottom up attribution. Specifically, the embodiments disclosed herein comprise a procedure for determining the influence of various advertising touchpoints on a consumer conversion.
  • Advertising the practice of promoting a product or service to a particular audience or to the public at large, has changed significantly over the years. Initially, advertising consisted of little more than simple posters or crude messages scrawled on public posting walls. As technology has evolved, however, so too has advertising. The advent of radio and television has allowed advertisers to develop creative messages comprising sound, video, and rich media that can be delivered to consumers as they sit in the privacy of their own homes. The emergence of the Internet has enabled the delivery of interactive advertising that can be presented on multiple platforms and the response to which can be immediately and definitively determined. Perhaps more significantly, the diversification of advertising into private spaces and multiple mediums of communication has allowed advertisers to craft messages that are tailored to a particular medium and audience.
  • a computer implemented method allocates credit for conversions among a plurality of advertising touchpoints.
  • a plurality of touchpoint encounters and a plurality of conversions are received.
  • the touchpoint encounters comprise a plurality of attributes and the attributes comprise a plurality of attribute values.
  • the touchpoint encounters and the conversions are correlated to a plurality of users.
  • the users comprise a plurality of converting users correlated to a plurality of assisting touchpoints from among the touchpoint encounters.
  • a plurality of attribute weights are assigned to the attributes of the assisting touchpoints.
  • a plurality of attribute value weights are assigned to the attribute values of the attributes of the assisting touchpoints.
  • a plurality of true scores, which correspond to the assisting touchpoints are determined using the attribute weights and the attribute value weights.
  • An attribution apportionment is assigned to the assisting touchpoints using the true scores.
  • FIG 1 depicts a flow diagram illustrating the operation of the procedure according to an embodiment.
  • FIG. 2 is a chart illustrating the importance of example attributes.
  • FIG. 3 is a chart illustrating the weights of example attribute values.
  • FIG. 4 is a block diagram illustrating one embodiment of the bottom-up attribution in accordance with one embodiment.
  • FIG. 5 illustrates a block diagram 500 illustrating one embodiment of the present technique.
  • FIG 6 depicts a flow diagram illustrating an example implementation of the procedure according to an embodiment.
  • FIG. 7 illustrates an example data set processed for a user in accordance with one embodiment.
  • FIG. 8 illustrates one embodiment for part of the process of bottom-up attribution.
  • FIG. 9 is a block diagram illustrating another embodiment to input a time delay factor when computing attribution metrics.
  • FIG 10 depicts a flow diagram illustrating an example implementation of the procedure according to one embodiment.
  • FIG 11A depicts a table illustrating the operation of the procedure according to an embodiment.
  • FIG 11B depicts a table illustrating the operation of the procedure according to an embodiment.
  • FIG llC depicts a table illustrating the operation of the procedure according to an embodiment.
  • FIG 11D depicts a table illustrating the operation of the procedure according to an embodiment.
  • FIG. 12 depicts a diagram illustrating an exemplary environment for the operation of the methods and systems described in the present disclosure according to an embodiment.
  • FIG. 13 depicts a diagram illustrating an exemplary hardware implementation for the operation of the methods and systems described in the present disclosure according to an embodiment.
  • Attribution the process of allocating credit among advertisements for a purchase, has become a critical tool for advertisers.
  • a consumer may encounter multiple advertisements for the same product across a variety of different mediums.
  • Advertisers and companies often wish to determine and quantify the effectiveness of various forms of advertising. This has highlighted the need for sophisticated analytics to identify which advertisement (i.e., a touchpoint) most influenced a specific consumer's decision to purchase an advertised product or service (i.e., a conversion) and which characteristics of that advertisement (i.e., attributes) were most crucial to its effectiveness.
  • advertisers can determine the attributes associated with an advertisement (e.g., placement, frequency, target audience, etc) and the allocation of advertising resources between channels (e.g., breakdown of advertising
  • attribution is a methodology for measuring, quantifying, and assigning due credit to each of these touchpoints in a manner that reflects the touchpoint's influence upon the consumer.
  • attribution provides an advertiser with a detailed perspective on the effectiveness of different forms of advertising
  • attribution was primarily of simplistic rules of thumb by which all of the credit for a conversion was assigned to the last touchpoint encountered by a consumer prior to the conversion. These techniques are imprecise and misleading because they assume that the most recent touchpoint encountered by a consumer or the touchpoint that directly lead to a conversion is more important than others whose effect may be more subtle but equally powerful. For example, one such technique, last-click attribution, assigns 100% of the credit for an online conversion to the advertisement clicked on by a user that ultimately led the user to make a purchase. Thus, last-click attribution may lead an advertiser to disregard print advertisements, television advertisements, or other touchpoints that may have influenced the user to click on the online advertisement he encountered and eventually make a purchase.
  • Touchpoints may be classified into three categories: introducers, influences, and converters. Introducers provide the first exposure of a brand, product, or promotion to a consumer. For example, an advertiser may run a television advertisement announcing a new line of products during the Super Bowl. An influencer keeps the advertised brand, product, or promotion at the forefront of the consumer's consciousness.
  • an advertiser may produce advertisements featuring an endorsement by a popular celebrity in order to strengthen a brand's reputation or cultivate a positive association in the mind of the consumer.
  • Converters directly provoke a user to purchase the advertised product or service.
  • an Internet banner advertisement may offer a discount to consumers who purchase the advertised product by clicking the advertisement.
  • Internet banner advertisements may be excellent converters but are typically not effective introducers or influencers.
  • television advertisements may be effective introducers and influencers but poor converters.
  • the consumer's decision to run the search and hence the consumer's decision to make a purchase, is actually influenced by all of the touchpoints he encountered prior to the conversion, not just the search advertisement.
  • a more nuanced attribution methodology that properly accounts for and quantifies the effect of the various touchpoints encountered by a user would be desirable.
  • an advertiser can develop an advertising strategy with an optimal balance of introducers, influencers, and converters.
  • the embodiments disclosed herein provide such a nuanced attribution methodology by utilizing machine learning techniques to determine the effect of various touchpoints on a consumer's purchasing habits.
  • Most advertising campaigns comprise multiple advertising touchpoints that appear across different channels (e.g., print, television, Internet, radio, etc.).
  • Each of these advertising touchpoints comprises a number of attributes. For example, the time of day during which the advertisement appeared, the frequency with which it was repeated, and the type of offer being advertised are all attributes of any advertising touchpoint.
  • all of the users who encountered the various touchpoints of an advertising campaign are identified.
  • the users are divided between those who converted and those who did not, and the attributes of each touchpoint encountered by the user are identified.
  • all of the users who converted are identified.
  • this set of users is divided between those who encountered the touchpoint and those who did not.
  • the importance of each attribute of the various advertising touchpoints is determined, and the attributes of each touchpoint are ranked according to importance.
  • the likelihood that a potential value of that attribute might influence a conversion is determined.
  • An attribution algorithm is selected and coefficients for the algorithm are computed based on this information. The algorithm is executed to determine the relative influence of each touchpoint upon each conversion.
  • multiple attributes of the touch points are combined to create a composite attribute.
  • all possible permutations of the placement and creative of the touch points may be combined to create a single composite attribute.
  • raw touchpoint and conversion data is received.
  • the data may be received separately for each channel.
  • the data may pertain to various touchpoints comprising an advertising campaign and the consumers who encountered each touchpoint.
  • the data may include entries that list each instance of a consumer's encounter with a touchpoint and whether or not that consumer converted.
  • the data may be gathered from a variety of sources. Internet advertising impressions are easy to track, since every instance of an advertisement being served to a user and the user clicking on the advertisement is recorded in server-side logs.
  • Conversion data pertaining to television, radio, or print advertising may be obtained from research and analytics agencies or other external entities that specialize in the collection of such data. Any means of gathering or obtaining touchpoint and conversion data may be used without deviating from the spirit or scope of the invention.
  • the raw touchpoint and conversion data is prepared for analysis.
  • the touchpoint and conversion data is grouped, shuffled, or organized into sets of entries.
  • the entries may be grouped according to touchpoint, user, campaign, or any other scheme that facilitates ease of analysis according to embodiments of the invention. Any technique or scheme for preparing the data may be used without deviating from the spirit or scope of the invention.
  • step 103 for each touchpoint, the most important attributes of that touchpoint are determined using the data prepared in step 102.
  • An advertising touchpoint may have numerous attributes ranging from obvious (e.g., time of day, frequency, income of viewer, etc) to subtle (e.g., weather, month of the year, relevance of advertisement to the day's news cycle, etc).
  • an advertisement may have the same effect on viewers irrespective of the type of publication, television program, or website within which they encounter it. However, the viewers' receptiveness to the advertisement may vary greatly according to, for example, the day of the week on which they encounter it. Thus, in step 103, the influence of each attribute on the effectiveness of an advertising touchpoint is determined.
  • attribute importance may be modeled, using machine- learning techniques, to generate weights that are assigned to each attribute.
  • the weights are determined by comparing data pertaining to converting users and non-converting users.
  • the importance of each attribute may be determined by comparing conversions to the frequency of exposures to touch points with that attribute relative to others.
  • any technique for modeling or determining attribute importance may be used without deviating from the spirit or scope of the invention.
  • Each attribute of a touchpoint may have a range of values. This range may be fixed or variable. For example, the range of values for a day of the week attribute would be seven, whereas the range of values for a weather attribute may depend on the level of specificity desired.
  • the values may be objective (e.g., timestamp) or subjective (e.g., the relevance of the advertisement to the day's news cycle).
  • the importance of each potential value of each attribute of each touchpoint is determined using the data prepared in step 102. The importance of each potential value of an attribute corresponds to the likelihood of that value leading to a conversion.
  • weights are generated and assigned to each attribute value by comparing data pertaining to converters and non-converters.
  • any technique for modeling or determining attribute value importance may be used without deviating from the spirit or scope of the invention.
  • an attribution algorithm is selected and coefficients are assigned for the algorithm, respectively, using the weights determined in steps 103 and 104.
  • the relative effect of each touchpoint in influencing each conversion can be identified using machine- learning techniques, according to some embodiments.
  • logistic regression techniques are used to determine the influence of each attribute and to determine the importance of each potential value of each attribute. Any machine-learning algorithm may be used without deviating from the spirit or scope of the invention.
  • the algorithm selected at step 105 is executed using the coefficients or weights calculated at steps 103 and 104.
  • the attribution algorithm outputs a score for every touchpoint that a user encountered prior to converting, wherein the score represents the touchpoint' s relative influence on the user's decision to convert.
  • credit is allocated to the various touchpoints for each conversion in accordance with the algorithm output.
  • the scores are summed and normalized as a percentage. For example, four touchpoints (TP ls TP 2 , TP 3 and TP 4 ) may have raw scores of 80, 100, 150 and 20, respectively.
  • FIG. 2 is a chart illustrating the importance of example attributes.
  • attributes e.g., “Frequency”, “Recency”, “Placement/Keyword”, “Coupon Bucket”, “Publisher”, “Creative”, “Channel”, “Product”, “Campaign”, “Coupon Code”, “Size” and “Business Unit”).
  • the attribute importance weight ascribes a value to the attribute that measures the importance of the attribute with regard to a conversion.
  • the importance of the "Publisher” attribute measures the importance of the publisher of an advertisement to a conversion.
  • the attributes are listed in descending order of importance such that the "Frequency” attribute is the most important and the "Business Unit” attribute is the least importance in their respective contribution in determining a conversion. To this end, the attributes are assigned weights to quantify their relative importance. For the example shown in FIG. 2, the "frequency” attribute has a weight of "1", and the
  • FIG. 3 is a chart illustrating the weights of example attribute values.
  • chart 310 identifies attribute values for the "Publisher" attribute. As discussed above, some values of an attribute may have more significance in influencing a conversion than other values. As such, some attribute values, when encountered by a user, are weighted more heavily than others in touchpoint analysis. As shown in chart 310 of FIG. 3, for the "Publisher" attribute example, some of the attribute values are "Yahoo!
  • chart 320 of FIG. 3 illustrates the "lift” generated by certain advertisement creatives for the "Creative” attribute.
  • the creatives are identified by file name.
  • the creative value "MOX_l_Plate_300x250 swf ' creates the greatest lift for the "Creative” attribute while the creative value "4-FE15_SP_Introducing” creates the lowest lift for the "Creative” attribute.
  • FIG. 4 is a block diagram illustrating one embodiment of the bottom-up attribution in accordance with one embodiment.
  • the bottom-up attribution process includes accumulating touchpoint and conversion data for analysis (block 102, FIG. 1).
  • User-level data 401 of FIG. 4 illustrates various types of data for input to touchpoint processing.
  • user- level data comprises "Campaign Goals" 412, "User-level Online Media Data” 414, "User-level Site Data” 416 and "User-level Customer Transaction Data” 418.
  • FIG. 4 illustrates four types of data for input to touchpoint processing, other types of data may be integrated in the system without deviating from the spirit or scope of the invention.
  • the User-level Data 410 may be stored in one or more databases and loaded into memory of a computer system for processing by one or more processors.
  • Touchpoint processing 420 receives as input, User-level data 410, and generates, as output, true metric calculations for the various touchpoints.
  • the data is processed in data preparation module 430 for input to the attribute importance model 440 and the attribute weight age model 450.
  • the attribute importance model 440 and the attribute weightage model 450 are trained, using machine-learning techniques, to assign weights to attributes (attribute importance model 440) and to attribute values (attribute weightage model 450).
  • the data preparation 430 outputs, for each touchpoint, a plurality of attributes and attribute values associated with the corresponding touchpoints.
  • the attribute importance model 440 assigns weights to those attributes of the touchpoint in accordance with the model
  • the attribute weightage model 450 assigns weights to attribute values of the touchpoint in accordance with the model.
  • the true metrics calculation model 460 calculates a true score for each touchpoint based on an attribution model.
  • the true scores, output from the true metrics calculations 460, are input to the true metrics 470.
  • the true metrics 470 aggregates the conversion among the touchpoints encountered by the user.
  • FIG. 5 illustrates a block diagram 500 illustrating one embodiment of the present technique .
  • Block diagram 500 illustrates modules to train models for use in bottom-up attribution processing.
  • the modules are implemented with one or more processors and memory (See FIG. 13).
  • the unit includes a Data Receiving module 501, at which conversion and touchpoint data from third parties or other external entities is received.
  • Data Processing Module 502 sorts correlates, and reorganizes the data for analysis.
  • the data e.g., training data set
  • the attribute weight computation module 503 is trained, using the input data and a machine learning technique, to generate the weights for the attributes.
  • the attribute value weight computation module 504 is also trained, using the input data and a machine learning technique, to generate the attribute value weights.
  • the attribute weight computation module 503 and the attribute value weight computation module 504 utilize a logistic regression technique to generate the weights from the training data set.
  • logistic regression is a type of regression analysis used to generate correlations between variables and a binary result.
  • the logistic regression algorithm is used to correlate the attributes, and the attribute values, associated with each touchpoint, exposed to a user to a conversion or non-conversion of the user.
  • the logistic regression utilizes a binomial or binary logistic regression technique to determine whether the attribute and/or attribute value contributes to a conversion or a non- conversion.
  • the machine-learning module 509 also include coefficient module 507. Similar to the attribute weight computation module 503 and the attribute value weight computation module 504, the coefficient module 507 uses a machine learning technique to compute the coefficients for the attribution algorithm. Specifically, a machine learning technique (e.g., logistic regression) is applied to a training set in order to determine the coefficients for the attribution algorithm.
  • a machine learning technique e.g., logistic regression
  • Step 102 of FIG. 1 is illustrated in further detail according to one embodiment illustrated in the flow diagram 600 depicted in FIG. 6.
  • all of the user encounters with a particular touchpoint are identified. In one embodiment, this step may be carried out for all of the touchpoints that comprise a particular advertising campaign. This may entail collecting touchpoint data from every channel in which an advertisement of a particular campaign ran.
  • all of the attributes for each of these touchpoints are further identified.
  • all of the users are correlated across the disparate data from different channels. Because the data pertaining to different channels may come from different sources, the touchpoint encounters from distinct channels that correspond to the same user are identified.
  • a single data set is created from the identified touchpoint encounters.
  • all of the conversions are identified.
  • a new data set is created comprising all of the touchpoints encountered by the converting users identified in step 604.
  • FIG. 7 illustrates an example data set processed for a user in accordance with one embodiment.
  • touchpoints e.g., seven
  • the example dataset of FIG. 7 correlates the various touchpoints with a plurality of attributes associated with those touchpoints.
  • the first column (column 1) identifies the attribute
  • columns 2 - 7 identify attribute values for attributes of column 1 for various touchpoints.
  • the first attribute (row 1) identifies the type of event for the touchpoint.
  • the first touchpoint (column 2) was an impression presented to the user, while the second and third touchpoints (columns 3 and 4) were items the user clicked-on.
  • FIG. 8 illustrates one embodiment for part of the process of bottom-up attribution.
  • engagement stack 800 comprises a plurality of touchpoints for a plurality of users.
  • engagement 800 may comprise the output dataset created by aggregating all the touchpoints for multiple users across channels (e.g., step 604, FIG. 6).
  • engagement 810 includes attributes (e.g., publisher - WSJ, creative - "creative A", and the time of the engagement is "weekday”).
  • the processes identifies, from the engagement stack 800, conversions or non-conversions. The identification of conversions and non-conversions is illustrated in process step 605 of FIG. 6.
  • FIG. 8 also conceptually illustrates the process of determining attribution by first generating a matrix of users and attributes.
  • a "User Feature Vector” which includes a value for each attribute, is generated for each user (e.g., "p" attributes for "n” users in FIG. 8).
  • FIG. 9 is a block diagram illustrating another embodiment to input a time delay factor when computing attribution metrics.
  • an engagement stack 900 includes a plurality of touchpoints (e.g., 910, 920 and 930). Each touchpoint comprises a plurality of attributes, as described above.
  • a "forgetting factor" is calculated based on the amount of time elapsed since the touchpoint occurred.
  • a true score may be calculated as:
  • Score a (WSJ, Creative A, Weekday) x ⁇ ( ⁇ ⁇ ) +
  • Steps 105-107 of FIG. 1 are illustrated in further detail according to an embodiment by the flow diagram 1000 depicted in FIG. 10.
  • an attribution algorithm is selected.
  • the attribution algorithm determines the relative effect of each touchpoint in influencing each conversion given the attribute weights and the attribute value weights determined in steps 103 and 104 of FIG. 1.
  • the attribution algorithm which calculates the contribution of the touchpoint to the conversion, may be expressed as a function of the attribute importance (e.g., attribute weights) and attribute value lift (e.g., attribute value weights):
  • a curve fitting method is determined for the attribution algorithm selected in step 602.
  • Curve fitting entails determining an equation for approximating a series of data points.
  • the conversion data derived in step 102 (FIG. 1) is modeled as a series of data points for which a set of constraints must be determined through curve fitting. These constraints correspond to the coefficients for the attribution algorithm.
  • the coefficients are determined for the attribution algorithm, using the selected curve fitting technique, the attribute weights, and the attribute value weights.
  • the coefficients are determined using a machine learning technique, such as logistic regression. However, any technique to determine the coefficients may be used without deviating from the spirit or scope of the invention.
  • the attribution algorithm is executed using the determined coefficients, resulting in a true score for each touchpoint encounter of each user.
  • the sum total of the true scores of each touchpoint encounter for each user represents that user's propensity to convert.
  • the scores are normalized such that their sum is a value between 0 and 0.49 for non-converting users and .50 and 1.0 for converting users.
  • the resulting data comprises a score for each touchpoint encountered by each converting user. These scores represent the relative influence of that touchpoint on the user's decision to convert.
  • credit is allocated to the various touchpoints in accordance with each touchpoint score for each converting user, as described above.
  • FIGS. 11A - 11D depict data tables pertaining to user touchpoint encounters in two channels, Channel 1 and Channel 2, respectively. These tables are derived in steps 301 and 302 of the procedure illustrated in flow diagram 300.
  • Channels 1 and 2 may be two distinct content mediums— television and print, for example. Data from any content medium may be used without deviating from the spirit or scope of the invention.
  • each data table lists the timestamp of the encounter, attributes of the touchpoint, attribute values of the touchpoint, a unique ID corresponding to the user, and whether or not the user converted upon encountering the touchpoint.
  • a converting user is one that converted at least once upon encountering any of the touchpoints of an advertising campaign.
  • FIG. 11A that corresponds to channel 1
  • users Ul and U2 are identified as converting users.
  • FIG. 11B that corresponds to channel 2
  • user U5 is identified as a converting user.
  • users Ul and U2 do not show a conversion in the table of FIG. 11B, they are nonetheless converting users because they were identified in the table of FIG. 11A.
  • users Ul, U2, and U5 are converting users whereas users U3 and U4 are non-converting users.
  • FIG. llC depicts a data table in which every user's touchpoint encounters, shown in FIGS. 11A and 11B, from the disparate channels have been correlated and combined.
  • the 'Conversion' columns from FIGS. 11A and 11B has been replaced with an 'Assists' column.
  • the "Assists" column signifies that a particular touchpoint encounter assisted with a conversion.
  • FIG 11D depicts an updated table, ConvertedUserStack, for the example of FIGS. 11A - 1C, with data pertaining to non- converting users removed. This table is derived in steps 605 and 606 of the procedure illustrated in flowchart 600 of FIG. 6.
  • FIG. 12 An exemplary environment 1200 within which some embodiments of the invention may operate is illustrated in FIG. 12.
  • the diagram 1200 of FIG. 12 depicts a channel owner 1201, a channel data provider 1202, and an Attribution Entity 1203.
  • Each of Channel Owner 1201 and Channel Data Provider 1202 includes at least one Server 1210 and at least one Database 1211.
  • Channel Owner 1201 is the operator or administrator of a content medium (e.g., television, internet portal, print publication, etc).
  • Channel Data Provider 1202 is an entity that collects data pertaining to advertising touchpoints that appear within the content medium owned by Channel Owner 1201 and the conversions that result from them.
  • Attribution Entity 803 performs tasks that comprise the embodiments disclosed herein.
  • Channel Data Provider 1202 collects and receives data from Channel Owner 1201 via Network 1204. The data is then transmitted from Channel Data Provider 1202 (or, alternatively, directly from Channel Owner 1201) to Attribution Entity 1203, which stores it within Touchpoint Database 1213 and/or Conversion Database 1214.
  • the operations of the embodiments described herein are executed within Processing Server 1212 using the data stored within Touchpoint Database 1213 and Conversion Database 1214. Data derived from the operations of the embodiments disclosed herein is stored within Results Database 1215.
  • Each of Server 1210 and Processing Server 12 may comprise a single computer system or multiple computer systems that execute operations in a distributed manner.
  • Each of Database 121 1, Touchpoint Database 1213, Conversion Database 1214, and Results Database 1215 comprise a single computer-readable storage medium or multiple computer-readable storage mediums across which the data is distributed.
  • the data stored therein may comprise numerical values and formulae or data related to a visual interface.
  • Data processed by Processing Server 1212 is transmitted via the network 1204 and is received by at least one of Client Devices 1205.
  • Client Devices 1205 may include Desktop PC 806, Laptop PC 807, Smartphone 808, Tablet Device 809, or any other computerized device with a visual display.
  • Client Devices 1205 display the processed data via the devices' visual display.
  • any combination of Channel Owner 1201, Channel Data Provider 1202, Attribution Entity 1203, and Client Devices 1205 may reside on the same machine.
  • Network 1204 may comprise any combination of networks including, without limitation, the web (i.e. the Internet), a local area network, a wide area network, a wireless network, a cellular network, etc.
  • the network 1208 includes signals comprising data and commands exchanged by and among Channel Owner 1201, Channel Data Provider 1202, Attribution Entity 1203, and Client Devices 1205 as well as any intermediate hardware devices used to transmit the signals.
  • FIG. 13 depicts a diagrammatic representation of a machine in the exemplary form of a computer system 1300 within which a set of instructions, for causing the machine to perform any one of the methodologies discussed above, may be executed.
  • the machine may comprise a network router, a network switch, a network bridge, Personal Digital Assistant (PDA), a cellular telephone, a web appliance or any machine capable of executing a sequence of instructions that specify actions to be taken by that machine.
  • PDA Personal Digital Assistant
  • the computer system 1300 includes a processor 1302, a main memory 1304 and a static memory 1306, which communicate with each other via a bus 1308.
  • the computer system 1300 may further include a video display unit 1310 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)).
  • the computer system 1300 also includes an alphanumeric input device 1312 (e.g., a keyboard), a cursor control device 1314 (e.g., a mouse), a disk drive unit 1316, a signal generation device 1318 (e.g., a speaker), and a network interface device 1320.
  • the disk drive unit 1316 includes a machine-readable medium 1324 on which is stored a set of instructions (i.e., software) 1326 embodying any one, or all, of the methodologies described above.
  • the software 1326 is also shown to reside, completely or at least partially, within the main memory 1304 and/or within the processor 1302. The software 1326 may further be transmitted or received via the network interface device 1320.
  • a machine -readable medium includes any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computer).
  • a machine-readable medium includes read-only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; or any other type of media suitable for storing or transmitting information.

Abstract

A system and method for allocating credit for an advertising conversion among various advertising touchpoints encounter by the consumer is provided. The system and method comprise receiving data pertaining to touchpoints and conversions of an advertising campaign across multiple channels. Users are correlated across the channels and the various conversions, touchpoints, and touchpoint attributes are identified. Each touchpoint attribute and touchpoint attribute value is assigned a weight. An attribution algorithm is selected, and coefficients are calculated using the assigned weights. The algorithm is executed and true scores corresponding to the touchpoints encountered by each converting user are computed.

Description

FIELD OF THE INVENTION
[0001] The embodiments disclosed herein relate to bottom up attribution. Specifically, the embodiments disclosed herein comprise a procedure for determining the influence of various advertising touchpoints on a consumer conversion.
BACKGROUND
[0002] Advertising, the practice of promoting a product or service to a particular audience or to the public at large, has changed significantly over the years. Initially, advertising consisted of little more than simple posters or crude messages scrawled on public posting walls. As technology has evolved, however, so too has advertising. The advent of radio and television has allowed advertisers to develop creative messages comprising sound, video, and rich media that can be delivered to consumers as they sit in the privacy of their own homes. The emergence of the Internet has enabled the delivery of interactive advertising that can be presented on multiple platforms and the response to which can be immediately and definitively determined. Perhaps more significantly, the diversification of advertising into private spaces and multiple mediums of communication has allowed advertisers to craft messages that are tailored to a particular medium and audience.
[0003] This has also presented advertisers with the task of determining how advertising money and resources should be allocated. Companies often prefer to place advertisements for the same product, service, or brand across multiple mediums of communication (i.e., channels). Because different media outlets have different effectiveness in delivering different types of messages, an advertisement for the same product may generate a bigger response in one channel than another. The effectiveness of an advertisement may further depend on additional factors such as the time of day during which it appeared, the day of the week on which it appeared, and even the weather. Given limited resources and budgets, advertisers must make intelligent decisions about which forms of advertising to focus on and how the advertisements should be placed.
[0004] Thus, what is needed is a technique for identifying the various advertisements encountered by potential consumers and assigning credit for a purchase in a manner that accounts for each advertisement's influence on the consumer's purchasing decision. As will be shown, the embodiments disclosed herein provide such a technique in an elegant manner. SUMMARY
A computer implemented method allocates credit for conversions among a plurality of advertising touchpoints. A plurality of touchpoint encounters and a plurality of conversions are received. The touchpoint encounters comprise a plurality of attributes and the attributes comprise a plurality of attribute values. The touchpoint encounters and the conversions are correlated to a plurality of users. The users comprise a plurality of converting users correlated to a plurality of assisting touchpoints from among the touchpoint encounters. A plurality of attribute weights are assigned to the attributes of the assisting touchpoints. Also, a plurality of attribute value weights are assigned to the attribute values of the attributes of the assisting touchpoints. A plurality of true scores, which correspond to the assisting touchpoints, are determined using the attribute weights and the attribute value weights. An attribution apportionment is assigned to the assisting touchpoints using the true scores.
BRIEF DESCRIPTION OF THE DRAWINGS
[0005] FIG 1 depicts a flow diagram illustrating the operation of the procedure according to an embodiment.
[0006] FIG. 2 is a chart illustrating the importance of example attributes.
[0007] FIG. 3 is a chart illustrating the weights of example attribute values.
[0008] FIG. 4 is a block diagram illustrating one embodiment of the bottom-up attribution in accordance with one embodiment.
[0009] FIG. 5 illustrates a block diagram 500 illustrating one embodiment of the present technique.
[0010] FIG 6 depicts a flow diagram illustrating an example implementation of the procedure according to an embodiment.
[0011] FIG. 7 illustrates an example data set processed for a user in accordance with one embodiment.
[0012] FIG. 8 illustrates one embodiment for part of the process of bottom-up attribution.
[0013] FIG. 9 is a block diagram illustrating another embodiment to input a time delay factor when computing attribution metrics.
[0014] FIG 10 depicts a flow diagram illustrating an example implementation of the procedure according to one embodiment.
[0015] FIG 11A depicts a table illustrating the operation of the procedure according to an embodiment.
[0016] FIG 11B depicts a table illustrating the operation of the procedure according to an embodiment.
[0017] FIG llC depicts a table illustrating the operation of the procedure according to an embodiment.
[0018] FIG 11D depicts a table illustrating the operation of the procedure according to an embodiment.
[0019] FIG. 12 depicts a diagram illustrating an exemplary environment for the operation of the methods and systems described in the present disclosure according to an embodiment.
[0020] FIG. 13 depicts a diagram illustrating an exemplary hardware implementation for the operation of the methods and systems described in the present disclosure according to an embodiment. DETAILED DESCRIPTION
[0021] Attribution, the process of allocating credit among advertisements for a purchase, has become a critical tool for advertisers. In today's media-rich environment, a consumer may encounter multiple advertisements for the same product across a variety of different mediums. Advertisers and companies often wish to determine and quantify the effectiveness of various forms of advertising. This has highlighted the need for sophisticated analytics to identify which advertisement (i.e., a touchpoint) most influenced a specific consumer's decision to purchase an advertised product or service (i.e., a conversion) and which characteristics of that advertisement (i.e., attributes) were most crucial to its effectiveness. By analyzing the collective data of advertising touchpoints and consumer conversions, advertisers can determine the attributes associated with an advertisement (e.g., placement, frequency, target audience, etc) and the allocation of advertising resources between channels (e.g., breakdown of advertising
expenditures between print, television, radio, internet, etc) that yield optimal conversion rates. This process is known as attribution. Attribution is a methodology for measuring, quantifying, and assigning due credit to each of these touchpoints in a manner that reflects the touchpoint's influence upon the consumer. Thus, attribution provides an advertiser with a detailed perspective on the effectiveness of different forms of advertising
[0022] Previously, attribution consisted primarily of simplistic rules of thumb by which all of the credit for a conversion was assigned to the last touchpoint encountered by a consumer prior to the conversion. These techniques are imprecise and misleading because they assume that the most recent touchpoint encountered by a consumer or the touchpoint that directly lead to a conversion is more important than others whose effect may be more subtle but equally powerful. For example, one such technique, last-click attribution, assigns 100% of the credit for an online conversion to the advertisement clicked on by a user that ultimately led the user to make a purchase. Thus, last-click attribution may lead an advertiser to disregard print advertisements, television advertisements, or other touchpoints that may have influenced the user to click on the online advertisement he encountered and eventually make a purchase. Resource allocation decisions based on such techniques may disproportionately favor online advertisements over other mediums. Conversions resulting from online searches are particularly illustrative of this problem; if all of the credit for a conversion resulting from an online search is assigned to an advertisement on the search results page, the advertising touchpoints that influenced the user to run the search to begin with are completely neglected. [0023] Touchpoints may be classified into three categories: introducers, influences, and converters. Introducers provide the first exposure of a brand, product, or promotion to a consumer. For example, an advertiser may run a television advertisement announcing a new line of products during the Super Bowl. An influencer keeps the advertised brand, product, or promotion at the forefront of the consumer's consciousness. For example, an advertiser may produce advertisements featuring an endorsement by a popular celebrity in order to strengthen a brand's reputation or cultivate a positive association in the mind of the consumer. Converters directly provoke a user to purchase the advertised product or service. For example, an Internet banner advertisement may offer a discount to consumers who purchase the advertised product by clicking the advertisement. Each of these types of touchpoints has unique strengths and weaknesses and is a necessary component of a successful advertising strategy. Internet banner advertisements may be excellent converters but are typically not effective introducers or influencers. Conversely, television advertisements may be effective introducers and influencers but poor converters.
[0024] According to simple attribution methodologies, the most recent advertisement the consumer encounters prior to purchasing an advertised product— i.e., the converter— is often thought of as the touchpoint most responsible for the conversion. This causes many advertisers to devote a disproportionate share of advertising money and resources to converters. For example, many online conversions can be directly traced to search advertisements, which consumers may encounter upon searching for a particular product or type of product using an Internet search engine. According to last-click attribution, an attribution methodology in which all of the credit for a conversion is assigned to the last-encountered touchpoint, a search advertisement would receive 100% of the credit for the conversion. However, the consumer's decision to run the search, and hence the consumer's decision to make a purchase, is actually influenced by all of the touchpoints he encountered prior to the conversion, not just the search advertisement. Thus, a more nuanced attribution methodology that properly accounts for and quantifies the effect of the various touchpoints encountered by a user would be desirable. With a nuanced attribution methodology, an advertiser can develop an advertising strategy with an optimal balance of introducers, influencers, and converters.
[0025] The embodiments disclosed herein provide such a nuanced attribution methodology by utilizing machine learning techniques to determine the effect of various touchpoints on a consumer's purchasing habits. Most advertising campaigns comprise multiple advertising touchpoints that appear across different channels (e.g., print, television, Internet, radio, etc.). Each of these advertising touchpoints comprises a number of attributes. For example, the time of day during which the advertisement appeared, the frequency with which it was repeated, and the type of offer being advertised are all attributes of any advertising touchpoint.
[0026] According to one embodiment, all of the users who encountered the various touchpoints of an advertising campaign are identified. The users are divided between those who converted and those who did not, and the attributes of each touchpoint encountered by the user are identified. Similarly, all of the users who converted are identified. For each touchpoint, this set of users is divided between those who encountered the touchpoint and those who did not. Using this data, the importance of each attribute of the various advertising touchpoints is determined, and the attributes of each touchpoint are ranked according to importance. Similarly, for each attribute of each touchpoint, the likelihood that a potential value of that attribute might influence a conversion is determined. An attribution algorithm is selected and coefficients for the algorithm are computed based on this information. The algorithm is executed to determine the relative influence of each touchpoint upon each conversion.
[0027] In another embodiment, multiple attributes of the touch points are combined to create a composite attribute. For example all possible permutations of the placement and creative of the touch points may be combined to create a single composite attribute.
[0028] The technique of the present disclosure according to an embodiment is illustrated in further detail by the flow diagram 100 depicted in FIG 1. At step 101, raw touchpoint and conversion data is received. According to one embodiment, the data may be received separately for each channel. The data may pertain to various touchpoints comprising an advertising campaign and the consumers who encountered each touchpoint. The data may include entries that list each instance of a consumer's encounter with a touchpoint and whether or not that consumer converted. The data may be gathered from a variety of sources. Internet advertising impressions are easy to track, since every instance of an advertisement being served to a user and the user clicking on the advertisement is recorded in server-side logs. Conversion data pertaining to television, radio, or print advertising may be obtained from research and analytics agencies or other external entities that specialize in the collection of such data. Any means of gathering or obtaining touchpoint and conversion data may be used without deviating from the spirit or scope of the invention.
[0029] At step 102, the raw touchpoint and conversion data is prepared for analysis. To be utilized by one embodiment, the touchpoint and conversion data is grouped, shuffled, or organized into sets of entries. The entries may be grouped according to touchpoint, user, campaign, or any other scheme that facilitates ease of analysis according to embodiments of the invention. Any technique or scheme for preparing the data may be used without deviating from the spirit or scope of the invention.
[0030] At step 103, for each touchpoint, the most important attributes of that touchpoint are determined using the data prepared in step 102. An advertising touchpoint may have numerous attributes ranging from obvious (e.g., time of day, frequency, income of viewer, etc) to subtle (e.g., weather, month of the year, relevance of advertisement to the day's news cycle, etc).
However, not all of these attributes influence the effectiveness of an advertisement. An advertisement may have the same effect on viewers irrespective of the type of publication, television program, or website within which they encounter it. However, the viewers' receptiveness to the advertisement may vary greatly according to, for example, the day of the week on which they encounter it. Thus, in step 103, the influence of each attribute on the effectiveness of an advertising touchpoint is determined.
[0031] According to one embodiment, attribute importance may be modeled, using machine- learning techniques, to generate weights that are assigned to each attribute. In some
embodiments, the weights are determined by comparing data pertaining to converting users and non-converting users. In other embodiments, the importance of each attribute may be determined by comparing conversions to the frequency of exposures to touch points with that attribute relative to others. However, any technique for modeling or determining attribute importance may be used without deviating from the spirit or scope of the invention.
[0032] Each attribute of a touchpoint may have a range of values. This range may be fixed or variable. For example, the range of values for a day of the week attribute would be seven, whereas the range of values for a weather attribute may depend on the level of specificity desired. The values may be objective (e.g., timestamp) or subjective (e.g., the relevance of the advertisement to the day's news cycle). At step 104, in parallel with determining the influence of each attribute, the importance of each potential value of each attribute of each touchpoint is determined using the data prepared in step 102. The importance of each potential value of an attribute corresponds to the likelihood of that value leading to a conversion. For example, viewers may be much more receptive to an advertisement if they encounter it on a Monday than if they encounter it on a Wednesday. Thus, for a day of the week attribute, the Monday value would be assigned a greater importance than the Wednesday value. According to one embodiment, using machine-learning techniques, weights are generated and assigned to each attribute value by comparing data pertaining to converters and non-converters. However, any technique for modeling or determining attribute value importance may be used without deviating from the spirit or scope of the invention.
[0033] At steps 105 and 106, an attribution algorithm is selected and coefficients are assigned for the algorithm, respectively, using the weights determined in steps 103 and 104. The relative effect of each touchpoint in influencing each conversion can be identified using machine- learning techniques, according to some embodiments. In some embodiments, logistic regression techniques are used to determine the influence of each attribute and to determine the importance of each potential value of each attribute. Any machine-learning algorithm may be used without deviating from the spirit or scope of the invention. At step 107, the algorithm selected at step 105 is executed using the coefficients or weights calculated at steps 103 and 104. According to one embodiment, for each conversion, the attribution algorithm outputs a score for every touchpoint that a user encountered prior to converting, wherein the score represents the touchpoint' s relative influence on the user's decision to convert. At step 108, credit is allocated to the various touchpoints for each conversion in accordance with the algorithm output. In some embodiments, to allocate attribution across the touchpoints, the scores are summed and normalized as a percentage. For example, four touchpoints (TPls TP2, TP3 and TP4) may have raw scores of 80, 100, 150 and 20, respectively. For this example, attribution, as a percentage, is assigned to the touchpoints as follows: TPj = 22.85%, TP2 = 28.58%, TP3 = 42.86% and TP4 = 5.71%.
[0034] FIG. 2 is a chart illustrating the importance of example attributes. For this example, several attributes are listed (e.g., "Frequency", "Recency", "Placement/Keyword", "Coupon Bucket", "Publisher", "Creative", "Channel", "Product", "Campaign", "Coupon Code", "Size" and "Business Unit"). As discussed above, the attribute importance weight ascribes a value to the attribute that measures the importance of the attribute with regard to a conversion. For example, the importance of the "Publisher" attribute measures the importance of the publisher of an advertisement to a conversion. For the example of FIG. 2, the attributes are listed in descending order of importance such that the "Frequency" attribute is the most important and the "Business Unit" attribute is the least importance in their respective contribution in determining a conversion. To this end, the attributes are assigned weights to quantify their relative importance. For the example shown in FIG. 2, the "frequency" attribute has a weight of "1", and the
"Business Unit" attribute has a weight less than ".2." Although in the example of FIG. 2 the weights for the importance of the attributes are normalized between "0" and "1", the weights may be scaled to any range without deviating from the spirit or scope of the invention.
[0035] FIG. 3 is a chart illustrating the weights of example attribute values. For this example, chart 310 identifies attribute values for the "Publisher" attribute. As discussed above, some values of an attribute may have more significance in influencing a conversion than other values. As such, some attribute values, when encountered by a user, are weighted more heavily than others in touchpoint analysis. As shown in chart 310 of FIG. 3, for the "Publisher" attribute example, some of the attribute values are "Yahoo! Inc.", "WSI.com", "Seeking Alpha", "NY Times Online", "CBS Matchwatch", "MSN Money", "CBS Interactive", "YuMe" and "IH Remnant." As shown in the example of chart 310, the largest lift from the Publisher attribute is ascribed to the publisher "Yahoo, Inc." and the smallest lift for the publisher attribute is ascribed to the value "IH Remnant." Similarly, chart 320 of FIG. 3 illustrates the "lift" generated by certain advertisement creatives for the "Creative" attribute. For this example, the creatives are identified by file name. The creative value "MOX_l_Plate_300x250 swf ' creates the greatest lift for the "Creative" attribute while the creative value "4-FE15_SP_Introducing" creates the lowest lift for the "Creative" attribute.
[0036] FIG. 4 is a block diagram illustrating one embodiment of the bottom-up attribution in accordance with one embodiment. The bottom-up attribution process includes accumulating touchpoint and conversion data for analysis (block 102, FIG. 1). User-level data 401 of FIG. 4 illustrates various types of data for input to touchpoint processing. For this embodiment, user- level data comprises "Campaign Goals" 412, "User-level Online Media Data" 414, "User-level Site Data" 416 and "User-level Customer Transaction Data" 418. Although the embodiment of FIG. 4 illustrates four types of data for input to touchpoint processing, other types of data may be integrated in the system without deviating from the spirit or scope of the invention. In some embodiments, the User-level Data 410 may be stored in one or more databases and loaded into memory of a computer system for processing by one or more processors. [0037] Touchpoint processing 420, receives as input, User-level data 410, and generates, as output, true metric calculations for the various touchpoints. The data is processed in data preparation module 430 for input to the attribute importance model 440 and the attribute weight age model 450. The attribute importance model 440 and the attribute weightage model 450 are trained, using machine-learning techniques, to assign weights to attributes (attribute importance model 440) and to attribute values (attribute weightage model 450). The data preparation 430 outputs, for each touchpoint, a plurality of attributes and attribute values associated with the corresponding touchpoints. In turn, the attribute importance model 440 assigns weights to those attributes of the touchpoint in accordance with the model, and the attribute weightage model 450 assigns weights to attribute values of the touchpoint in accordance with the model. The true metrics calculation model 460 calculates a true score for each touchpoint based on an attribution model. The true scores, output from the true metrics calculations 460, are input to the true metrics 470. The true metrics 470 aggregates the conversion among the touchpoints encountered by the user.
[0038] FIG. 5 illustrates a block diagram 500 illustrating one embodiment of the present technique .. Block diagram 500 illustrates modules to train models for use in bottom-up attribution processing. In some embodiments, the modules are implemented with one or more processors and memory (See FIG. 13). For the embodiment shown in FIG. 5, the unit includes a Data Receiving module 501, at which conversion and touchpoint data from third parties or other external entities is received. In general, Data Processing Module 502 sorts correlates, and reorganizes the data for analysis. The data (e.g., training data set), from the data processing module 502, is input to machine learning module 509. The attribute weight computation module 503 is trained, using the input data and a machine learning technique, to generate the weights for the attributes. Similarly, the attribute value weight computation module 504 is also trained, using the input data and a machine learning technique, to generate the attribute value weights. In one embodiment, the attribute weight computation module 503 and the attribute value weight computation module 504 utilize a logistic regression technique to generate the weights from the training data set. In general, logistic regression is a type of regression analysis used to generate correlations between variables and a binary result. For this embodiment, the logistic regression algorithm is used to correlate the attributes, and the attribute values, associated with each touchpoint, exposed to a user to a conversion or non-conversion of the user. For this embodiment, the logistic regression utilizes a binomial or binary logistic regression technique to determine whether the attribute and/or attribute value contributes to a conversion or a non- conversion.
[0039] The machine-learning module 509 also include coefficient module 507. Similar to the attribute weight computation module 503 and the attribute value weight computation module 504, the coefficient module 507 uses a machine learning technique to compute the coefficients for the attribution algorithm. Specifically, a machine learning technique (e.g., logistic regression) is applied to a training set in order to determine the coefficients for the attribution algorithm.
[0040] Step 102 of FIG. 1 is illustrated in further detail according to one embodiment illustrated in the flow diagram 600 depicted in FIG. 6. At step 601, all of the user encounters with a particular touchpoint are identified. In one embodiment, this step may be carried out for all of the touchpoints that comprise a particular advertising campaign. This may entail collecting touchpoint data from every channel in which an advertisement of a particular campaign ran. At step 602, all of the attributes for each of these touchpoints are further identified. At step 603, all of the users are correlated across the disparate data from different channels. Because the data pertaining to different channels may come from different sources, the touchpoint encounters from distinct channels that correspond to the same user are identified. At step 604, a single data set is created from the identified touchpoint encounters. At step 605, amongst the touchpoint encounters identified in step 602, all of the conversions are identified. At step 606, a new data set is created comprising all of the touchpoints encountered by the converting users identified in step 604.
[0041] FIG. 7 illustrates an example data set processed for a user in accordance with one embodiment. As shown in FIG. 7, there are several touchpoints (e.g., seven) associated with a conversion. The example dataset of FIG. 7 correlates the various touchpoints with a plurality of attributes associated with those touchpoints. Specifically, the first column (column 1) identifies the attribute, columns 2 - 7 identify attribute values for attributes of column 1 for various touchpoints. For example, the first attribute (row 1) identifies the type of event for the touchpoint. The first touchpoint (column 2) was an impression presented to the user, while the second and third touchpoints (columns 3 and 4) were items the user clicked-on. Similarly, the other entries of the table of FIG. 7 identify attribute values for the attributes of column 1 for the various touchpoints. [0042] FIG. 8 illustrates one embodiment for part of the process of bottom-up attribution. As shown in FIG. 8, engagement stack 800 comprises a plurality of touchpoints for a plurality of users. For example, engagement 800 may comprise the output dataset created by aggregating all the touchpoints for multiple users across channels (e.g., step 604, FIG. 6). As shown in FIG. 8, engagement 810 includes attributes (e.g., publisher - WSJ, creative - "creative A", and the time of the engagement is "weekday"). The processes identifies, from the engagement stack 800, conversions or non-conversions. The identification of conversions and non-conversions is illustrated in process step 605 of FIG. 6.
[0043] FIG. 8 also conceptually illustrates the process of determining attribution by first generating a matrix of users and attributes. Specifically, for this embodiment, a "User Feature Vector", which includes a value for each attribute, is generated for each user (e.g., "p" attributes for "n" users in FIG. 8). The User Feature Vector is used in the attribution algorithm (e.g., y = ΐ(μ;Θ)) to generate a binary response (e.g., conversion or non-conversion).
[0044] FIG. 9 is a block diagram illustrating another embodiment to input a time delay factor when computing attribution metrics. For the example of FIG. 9, an engagement stack 900 includes a plurality of touchpoints (e.g., 910, 920 and 930). Each touchpoint comprises a plurality of attributes, as described above. For this embodiment, a "forgetting factor" is calculated based on the amount of time elapsed since the touchpoint occurred. For the example of engagement stack 900, a time "Ti" elapsed since touchpoint 910 occurred, a time "T2" elapsed since touchpoint 920 occurred, and a time "T3" elapsed since touchpoint 930 occurred. For this embodiment, a true score may be calculated as:
Score = a (WSJ, Creative A, Weekday) x λ (Τλ) +
a (Bloomberg, Creative B, Weekday) x λ (Γ2) +
a (Yahoo, Creative A, Weekend) x λ (Γ3)
where a (attributes and attribute values) are estimated via machine learning and λ(Τ) is the forgetting factor calculated by multiplying a value by the time elapsed.
[0045] Steps 105-107 of FIG. 1 are illustrated in further detail according to an embodiment by the flow diagram 1000 depicted in FIG. 10. At step 1001, an attribution algorithm is selected. The attribution algorithm determines the relative effect of each touchpoint in influencing each conversion given the attribute weights and the attribute value weights determined in steps 103 and 104 of FIG. 1. The attribution algorithm, which calculates the contribution of the touchpoint to the conversion, may be expressed as a function of the attribute importance (e.g., attribute weights) and attribute value lift (e.g., attribute value weights):
Credit Fraction = / (attribute importancea, attribute value lifta) wherein, "a" represents the attribute and "n" represents the number of attributes.
[0046] At step 1002 of FIG. 10, a curve fitting method is determined for the attribution algorithm selected in step 602. Curve fitting entails determining an equation for approximating a series of data points. In this series of embodiments, the conversion data derived in step 102 (FIG. 1) is modeled as a series of data points for which a set of constraints must be determined through curve fitting. These constraints correspond to the coefficients for the attribution algorithm. At step 1003, the coefficients are determined for the attribution algorithm, using the selected curve fitting technique, the attribute weights, and the attribute value weights. According to one embodiment, the coefficients are determined using a machine learning technique, such as logistic regression. However, any technique to determine the coefficients may be used without deviating from the spirit or scope of the invention.
[0047] At step 1004 of FIG. 10, the attribution algorithm is executed using the determined coefficients, resulting in a true score for each touchpoint encounter of each user. The sum total of the true scores of each touchpoint encounter for each user represents that user's propensity to convert. According to one embodiment, the scores are normalized such that their sum is a value between 0 and 0.49 for non-converting users and .50 and 1.0 for converting users.
[0048] The resulting data comprises a score for each touchpoint encountered by each converting user. These scores represent the relative influence of that touchpoint on the user's decision to convert. At step 1005 of FIG. 10, credit is allocated to the various touchpoints in accordance with each touchpoint score for each converting user, as described above.
[0049] An example iteration of the procedure illustrated by the flow diagram 600 of FIG. 6 is depicted in FIGS 11A - 11D. FIG 11A and 11B depict data tables pertaining to user touchpoint encounters in two channels, Channel 1 and Channel 2, respectively. These tables are derived in steps 301 and 302 of the procedure illustrated in flow diagram 300. Channels 1 and 2 may be two distinct content mediums— television and print, for example. Data from any content medium may be used without deviating from the spirit or scope of the invention. As shown in FIGS. 11A - 11D, each data table lists the timestamp of the encounter, attributes of the touchpoint, attribute values of the touchpoint, a unique ID corresponding to the user, and whether or not the user converted upon encountering the touchpoint. As defined herein, a converting user is one that converted at least once upon encountering any of the touchpoints of an advertising campaign. In FIG. 11A that corresponds to channel 1, users Ul and U2 are identified as converting users. In FIG. 11B that corresponds to channel 2, user U5 is identified as a converting user. Although users Ul and U2 do not show a conversion in the table of FIG. 11B, they are nonetheless converting users because they were identified in the table of FIG. 11A. Thus, for this example, users Ul, U2, and U5 are converting users whereas users U3 and U4 are non-converting users.
[0050] FIG. llC depicts a data table in which every user's touchpoint encounters, shown in FIGS. 11A and 11B, from the disparate channels have been correlated and combined. The derivation of the data, shown in the table of FIG. 11C, corresponds to steps 603 and 604 of the procedure illustrated in flow diagram 600 of FIG. 6. In the table of FIG. 11C, which depicts an "AllUserStack", the 'Conversion' columns from FIGS. 11A and 11B has been replaced with an 'Assists' column. The "Assists" column signifies that a particular touchpoint encounter assisted with a conversion. Because one goal of the embodiments disclosed herein is to determine the effect of each touchpoint in influencing a conversion, the conversion is no longer attributed to a single touchpoint as in the tables depicted in FIGS. 11A and 11B; rather, the conversion is associated with all of the touchpoints that the user encountered. FIG 11D depicts an updated table, ConvertedUserStack, for the example of FIGS. 11A - 1C, with data pertaining to non- converting users removed. This table is derived in steps 605 and 606 of the procedure illustrated in flowchart 600 of FIG. 6.
[0051] An exemplary environment 1200 within which some embodiments of the invention may operate is illustrated in FIG. 12. The diagram 1200 of FIG. 12 depicts a channel owner 1201, a channel data provider 1202, and an Attribution Entity 1203. Each of Channel Owner 1201 and Channel Data Provider 1202 includes at least one Server 1210 and at least one Database 1211. Channel Owner 1201 is the operator or administrator of a content medium (e.g., television, internet portal, print publication, etc). Channel Data Provider 1202 is an entity that collects data pertaining to advertising touchpoints that appear within the content medium owned by Channel Owner 1201 and the conversions that result from them. Attribution Entity 803 performs tasks that comprise the embodiments disclosed herein. [0052] According to one implementation of the exemplary environment, Channel Data Provider 1202 collects and receives data from Channel Owner 1201 via Network 1204. The data is then transmitted from Channel Data Provider 1202 (or, alternatively, directly from Channel Owner 1201) to Attribution Entity 1203, which stores it within Touchpoint Database 1213 and/or Conversion Database 1214. The operations of the embodiments described herein are executed within Processing Server 1212 using the data stored within Touchpoint Database 1213 and Conversion Database 1214. Data derived from the operations of the embodiments disclosed herein is stored within Results Database 1215. Each of Server 1210 and Processing Server 12may comprise a single computer system or multiple computer systems that execute operations in a distributed manner. Each of Database 121 1, Touchpoint Database 1213, Conversion Database 1214, and Results Database 1215 comprise a single computer-readable storage medium or multiple computer-readable storage mediums across which the data is distributed. The data stored therein may comprise numerical values and formulae or data related to a visual interface.
[0053] Data processed by Processing Server 1212 according to embodiments disclosed herein is transmitted via the network 1204 and is received by at least one of Client Devices 1205. Client Devices 1205 may include Desktop PC 806, Laptop PC 807, Smartphone 808, Tablet Device 809, or any other computerized device with a visual display. Client Devices 1205 display the processed data via the devices' visual display. Alternatively, any combination of Channel Owner 1201, Channel Data Provider 1202, Attribution Entity 1203, and Client Devices 1205 may reside on the same machine.
[0054] Network 1204 may comprise any combination of networks including, without limitation, the web (i.e. the Internet), a local area network, a wide area network, a wireless network, a cellular network, etc. The network 1208 includes signals comprising data and commands exchanged by and among Channel Owner 1201, Channel Data Provider 1202, Attribution Entity 1203, and Client Devices 1205 as well as any intermediate hardware devices used to transmit the signals.
[0055] FIG. 13 depicts a diagrammatic representation of a machine in the exemplary form of a computer system 1300 within which a set of instructions, for causing the machine to perform any one of the methodologies discussed above, may be executed. In alternative embodiments, the machine may comprise a network router, a network switch, a network bridge, Personal Digital Assistant (PDA), a cellular telephone, a web appliance or any machine capable of executing a sequence of instructions that specify actions to be taken by that machine.
[0056] The computer system 1300 includes a processor 1302, a main memory 1304 and a static memory 1306, which communicate with each other via a bus 1308. The computer system 1300 may further include a video display unit 1310 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)). The computer system 1300 also includes an alphanumeric input device 1312 (e.g., a keyboard), a cursor control device 1314 (e.g., a mouse), a disk drive unit 1316, a signal generation device 1318 (e.g., a speaker), and a network interface device 1320.
[0057] The disk drive unit 1316 includes a machine-readable medium 1324 on which is stored a set of instructions (i.e., software) 1326 embodying any one, or all, of the methodologies described above. The software 1326 is also shown to reside, completely or at least partially, within the main memory 1304 and/or within the processor 1302. The software 1326 may further be transmitted or received via the network interface device 1320.
[0058] It is to be understood that various embodiments may be used as or to support software programs executed upon some form of processing core (such as the CPU of a computer) or otherwise implemented or realized upon or within a machine or computer readable medium. A machine -readable medium includes any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computer). For example, a machine-readable medium includes read-only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; or any other type of media suitable for storing or transmitting information.
[0059] In the present specification, the invention has been described with reference to specific exemplary embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention as set forth in the appended claims. The specification and drawings are, accordingly, to be regarded in an illustrative sense rather than a restrictive sense.
[0060] While the invention has been described with reference to numerous specific details, one of ordinary skill in the art will recognize that the invention can be embodied in other specific forms without departing from the spirit of the invention. Thus, one of ordinary skill in the art would understand that the invention is not to be limited by the foregoing illustrative details, but rather is to be defined by the appended claims.

Claims

CLAIMS What is claimed is:
1. A computer implemented method for allocating credit for conversions among advertising touchpoints, the computer implemented method comprising:
receiving a plurality of touchpoint encounters and a plurality of conversions, wherein the touchpoint encounters comprise a plurality of attributes and the attributes comprise a plurality of attribute values;
correlating the touchpoint encounters and the conversions to a plurality of users, wherein the users comprise a plurality of converting users correlated to a plurality of assisting touchpoints from among the touchpoint encounters;
assigning a plurality of attribute weights to the attributes of the assisting touchpoints; assigning a plurality of attribute value weights to the attribute values of the attributes of the assisting touchpoints;
determining a plurality of true scores corresponding to the assisting touchpoints using the attribute weights and the attribute value weights; and
determining a plurality of true metrics corresponding to the assisting touchpoints using the true scores.
2. The computer implemented method of Claim 1, wherein the touchpoint encounters correspond to a plurality of media channels.
3. The computer implemented method of Claim 2, further comprising receiving the touchpoint encounters from a plurality of channel data providers.
4. The computer implemented method of Claim 1, further comprising executing a machine learning technique to determine the attribute weights.
5. The computer implemented method of Claim 1, further comprising executing a machine learning technique to determine the attribute value weights.
6. The computer implemented method of Claim 1, further comprising determining scores of the touchpoint encounters using an attribution algorithm.
7. The computer implemented method of Claim 6, further comprising determining a plurality of coefficients for the attribution algorithm.
8. The computer implemented method of Claim 8, wherein the coefficients are determined using a curve-fitting technique.
9. A computer implemented method for determining a value of importance for each of a plurality of touchpoint encounters, the computer implemented method comprising:
receiving a plurality of touchpoint encounters and a plurality of conversions, wherein the touchpoint encounters comprise a plurality of attributes and the attributes comprise a plurality of attribute values;
correlating the touchpoint encounters and the conversions to a plurality of users, wherein the users comprise a plurality of converting users correlated to a plurality of assisting touchpoints from among the touchpoint encounters;
assigning an attribute weight to each of the attributes of the assisting touchpoint
encounters based on the level of contribution of each attribute to the conversion; assigning an attribute value to each of the attribute values of an attribute in the assisting touchpoint encounters based on the level of importance of the attribute to the conversion;
assigning a plurality of attribute value weights to the attribute values of the attributes of the assisting touchpoint ecounters based on the level of importance of the attribute value to the conversion; and
using the using the attribute weights and the attribute value weights to determine a value of importance for each of the assisting touchpoint encounters to assess a fair attribution of the assisting touchpoint to the conversion.
10. The computer implemented method of Claim 9, wherein the touchpoint encounters correspond to a plurality of media channels.
11. The computer implemented method of Claim 10, further comprising receiving the touchpoint encounters from a plurality of channel data providers.
12. The computer implemented method of Claim 9, further comprising executing a machine learning technique to determine the attribute weights.
13. The computer implemented method of Claim 9, further comprising executing a machine learning technique to determine the attribute value weights.
14. The computer implemented method of Claim 9, further comprising determining scores of the touchpoint encounters using an attribution algorithm.
15. The computer implemented method of Claim 14, further comprising determining a plurality of coefficients for the attribution algorithm.
16. The computer implemented method of Claim 15, wherein the coefficients are determined using a curve-fitting technique.
17. A computer-implemented method for determining a propensity of a user to convert based on touchpoint encounters, the computer implemented method comprising:
receiving a plurality of touchpoint encounters that correspond to a plurality of
conversions, wherein the touchpoint encounters comprise a plurality of attributes and the attributes comprise a plurality of attribute values;
determining an attribute importance for the attributes and an attribute value lift for the attribute values based on the relative effect of the attributes and the attribute values in influencing the conversions;
determining an attribution algorithm by calculating a plurality of coefficients for the attribution algorithm based on the attribute importance of the attributes and the attribute value lift for the attribute values;
generating a true score for each of the touchpoint encounters by executing the attribution algorithm; and
determining a propensity of a user to convert by summing the true scores from the
touchpoints encounters experienced by the user.
18. The computer implemented method of Claim 17, wherein calculating a plurality of coefficients comprises using a machine learning technique to calculate the coefficients.
19. The computer implemented method of Claim 17, wherein using a machine learning technique to calculate the coefficients comprises using a logistic regression technique.
20. The computer implemented method of Claim 17, wherein determining an attribution algorithm by calculating a plurality of coefficients comprises using a curve fitting technique to calculate the coefficients.
21. The computer implemented method of Claim 17, wherein the touchpoint encounters correspond to a plurality of media channels.
22. The computer implemented method of Claim 17, further comprising correlating the touchpoint encounters and the conversions to a plurality of users, wherein the users comprise a plurality of converting users correlated to a plurality of assisting touchpoints from among the touchpoint encounters.
23. The computer implemented method of Claim 17, wherein determining an attribute importance for the attributes and an attribute value lift for the attribute values comprises:
assigning an attribute weight to each of the attributes of the assisting touchpoint
encounters based on the level of contribution of each attribute to the conversion; and
assigning an attribute value to each of the attribute values of an attribute in the assisting touchpoint encounters based on the level of importance of the attribute to the conversion.
PCT/US2013/043924 2012-06-08 2013-06-03 Method and system for determining touchpoint attribution WO2013184588A1 (en)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US13/492,493 US9183562B2 (en) 2012-06-08 2012-06-08 Method and system for determining touchpoint attribution
US13/492,493 2012-06-08
US13/789,459 US20170300959A9 (en) 2012-06-08 2013-03-07 Method, computer readable medium and system for determining true scores for a plurality of touchpoint encounters
US13/789,453 2013-03-07
US13/789,459 2013-03-07
US13/789,453 US20180005261A9 (en) 2012-06-08 2013-03-07 A method , computer readable medium and system for determining touchpoint attribution

Publications (1)

Publication Number Publication Date
WO2013184588A1 true WO2013184588A1 (en) 2013-12-12

Family

ID=49712531

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2013/043924 WO2013184588A1 (en) 2012-06-08 2013-06-03 Method and system for determining touchpoint attribution

Country Status (1)

Country Link
WO (1) WO2013184588A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3675016A1 (en) 2018-12-31 2020-07-01 Adoptomedia Oü System and method for calculating grp ratings

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070027753A1 (en) * 2005-07-29 2007-02-01 Collins Robert J System and method for optimizing the delivery of advertisements
US20080300977A1 (en) * 2007-05-31 2008-12-04 Ads Alliance Data Systems, Inc. Method and System for Fractionally Allocating Transactions to Marketing Events
US20090119172A1 (en) * 2007-11-02 2009-05-07 Soloff David L Advertising Futures Marketplace Methods and Systems
US20110035272A1 (en) * 2009-08-05 2011-02-10 Yahoo! Inc. Feature-value recommendations for advertisement campaign performance improvement

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070027753A1 (en) * 2005-07-29 2007-02-01 Collins Robert J System and method for optimizing the delivery of advertisements
US20070033104A1 (en) * 2005-07-29 2007-02-08 Collins Robert J Advertiser reporting system and method in a networked database search system
US20080300977A1 (en) * 2007-05-31 2008-12-04 Ads Alliance Data Systems, Inc. Method and System for Fractionally Allocating Transactions to Marketing Events
US20090119172A1 (en) * 2007-11-02 2009-05-07 Soloff David L Advertising Futures Marketplace Methods and Systems
US20110035272A1 (en) * 2009-08-05 2011-02-10 Yahoo! Inc. Feature-value recommendations for advertisement campaign performance improvement

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3675016A1 (en) 2018-12-31 2020-07-01 Adoptomedia Oü System and method for calculating grp ratings

Similar Documents

Publication Publication Date Title
US9183562B2 (en) Method and system for determining touchpoint attribution
US10817931B2 (en) Systems and methods for selecting third party content based on feedback
US10679260B2 (en) Cross-device message touchpoint attribution
AU2011205137B2 (en) Social media variable analytical system
US8788339B2 (en) Multiple attribution models with return on ad spend
US8396742B1 (en) System and method for optimizing paid search advertising campaigns based on natural search traffic
US20140257972A1 (en) Method, computer readable medium and system for determining true scores for a plurality of touchpoint encounters
US8543518B2 (en) Deducing shadow user profiles for ad campaigns
US20170091810A1 (en) Brand engagement touchpoint attribution using brand engagement event weighting
US20170337578A1 (en) Dynamic media buy optimization using attribution-informed media buy execution feeds
US8732015B1 (en) Social media pricing engine
US20120046996A1 (en) Unified data management platform
US20170323330A1 (en) Media spend management using real-time predictive modeling of touchpoint exposure effects
US20120253927A1 (en) Machine learning approach for determining quality scores
US20110238486A1 (en) Optimizing Sponsored Search Ad Placement for Online Advertising
US20170300939A1 (en) Optimizing promotional offer mixes using predictive modeling
US20160210656A1 (en) System for marketing touchpoint attribution bias correction
US20140257966A1 (en) Method , computer readable medium and system for determining weights for attributes and attribute values for a plurality of touchpoint encounters
JP2008529190A (en) Advertisement management method, shadow campaign system, and advertisement management system
US10559004B2 (en) Systems and methods for establishing and utilizing a hierarchical Bayesian framework for ad click through rate prediction
US9280749B1 (en) Determining an attribute of an online user using user device data
US20120166259A1 (en) Adjusting Demand Parameters To Reduce Allocation Errors in Display Advertising
US20160125454A1 (en) Systems and methods for managing advertising campaigns
WO2013116105A1 (en) Alterations of calculations in attribution modeling
US20160055519A1 (en) Apportioning a media campaign contribution to a media channel in the presence of audience saturation

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13800531

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13800531

Country of ref document: EP

Kind code of ref document: A1