Calculating bids for content items based on value of a product associated with the content item

An online system calculates bids for content items to display to users based on the value of a product described in the content item and the likelihood of a viewing user purchasing the product. The online system identifies an impression opportunity for an ad request and computes an expected value of the conversion and a likelihood of the conversion. The online system computes a bid amount based on the expected conversion value and the likelihood of the conversion. Bids based on the value of the conversion allow a third party system offering the product to optimize for the value of each conversion instead of the conversion rate.

BACKGROUND

This invention relates generally to presenting content to users of an online system and more specifically to determining bids content items in an auction.

Online systems, such as social networking systems, allow users to connect to and communicate with other users of the online system. Users may create profiles on an online system that are tied to their identities and include information about the users, such as interests and demographic information. The users may be individuals or entities, such as corporations or charities. Online systems allow users to easily communicate and share content with other online system users by providing content to the online system for presentation to other users. Content provided by a user to an online system may be declarative information, such as status updates, check-ins to locations, images, photographs, videos, text data, or any other information a user wishes to share with additional users of the online system. An online system may also generate content for presentation to a user, such as content describing actions taken by other users on the online system.

Additionally, many online systems commonly allow publishing users (e.g., businesses) to sponsor presentation of content on an online system to gain public attention for a user's products or services or to persuade other users to take an action regarding the publishing user's products or services. Content for which the online system receives compensation in exchange for presenting to users is referred to as “sponsored content.” Many online systems receive compensation from a publishing user for presenting online system users with certain types of sponsored content provided by the publishing user. Frequently, online systems charge a publishing user for each presentation of sponsored content to an online system user or for each interaction with sponsored content by an online system user. For example, an online system receives compensation from a publishing user each time a content item provided by the publishing user is displayed to another user on the online system or each time another user is presented with a content item on the online system and interacts with the content item (e.g., selects a link included in the content item), or each time another user performs another action after being presented with the content item.

Various publishing users or third party systems may provide the online system with content items identifying products associated with the publishing users or third party systems, such as products a publishing user or a third party system offers for sale. However, different users may have varying levels of interest in different products associated with a publishing user or a third party system. For example, if various products are offered for sale by a publishing user, if the publishing user selects content about a particular product for inclusion in a content item, users who are uninterested in the particular product may be less inclined to view or to interact with the content item. Thus, online systems generate revenue by targeting content to users of the online system. Content targeting provides users with more relevant content and is more cost-effective than traditional forms of content delivery because a targeted content item is only shown to a viewing user likely to be interested in the content item. Online systems use an auction process to select a content item for each impression (i.e. an instance that a content item can be shown to the viewing user). The auction process selects a content item based on a bid associated with the content item. The value of the bids associated with the content item are based on the conversion rate, or the number of times the content item leads to a successful objective, such as the viewing user clicking on a link or purchasing a product associated with the content item. However, bids based on conversion rates do not take into account the value of a product or service being described in the content item. Thus, content items with high conversion values that also have low conversion rates are often overlooked by conventional online systems or are not as competitive in the auction process since bids associated with content items are optimized for the number of conversions.

SUMMARY

An online system optimizes bids for content items based on return on content item spend, or how much the user is likely to spend in a conversion of the content item. The system receives an content item request from a third party system to present an content item to users of an online system. The system also receives bidding input from the third party system that can be used, for example, to determine the minimum ROI or ratio representing the amount per unit value. When an impression opportunity to provide the content item to a viewing user of the online system arises, the online system determines how much the user is likely to spend in a conversion of the content item for that impression opportunity. In one embodiment, the online system computes a bid amount based on the how much the user is likely to spend in a conversion of the content item scaled by the minimum ROI. In one embodiment, the bid amount is computed as based on a product of the minimum ROI, the likelihood of a conversion for the content item, and how much the user is likely to spend in a conversion of the content item. The computed bid amount for the content item can then be used in a content item selection process or auction in which content items are selected for presentation to the viewing user.

How much the user is likely to spend in a conversion of the content item may be based on any number of user and content item-specific features. For example, the online system may generate and apply a machine learned module that considers both historical organic spending for a user and attributed spending. In one embodiment, the online system provides as inputs to the model features associated with organic spending (e.g., a user's top websites by total spend over number of days, a user's number of purchase events, etc.) and labels associated with attributed spending (e.g., impression occurrences, a monetary amount spent after each impression occurrence, etc.). The output of the model, in one embodiment, is an estimate of amount the viewing user is likely to spend per conversion. The estimated amount the viewing user is likely to spend per conversion can then be added as a term to the bid determination equation to set the bid for the viewing user for a given content item such that the bid includes return on spend as part of the calculation. Accordingly, the online system allows third party systems to optimize for the monetary value of conversions of a content item, rather than merely the number of conversions.

DETAILED DESCRIPTION

System Architecture

FIG.1is a high level block diagram of a system environment100for an online system140. The system environment100shown byFIG.1comprises one or more client devices110and a network120, a third party system130, and the online system140. In alternative configurations, different and/or additional components may be included in the system environment100. The embodiments described herein can be adapted to a generic online system or to an advertising system that is part of a social networking system.

One or more third party systems130are coupled to the network120. The third party system130, which may be embodied as a device of a third party system, such as an advertising entity (e.g., a server hosted by an online advertising entity, a mobile device used by an advertiser, etc.), communicates with the online system140, which is further described below in conjunction withFIG.2. In one embodiment, the third party system130is an application provider communicating information describing applications for execution by a client device110or communicating data to client devices110for use by an application executing on the client device. A third party system130may communicate information to the online system140, such as advertisements, content items, or information for publication to one or more client devices110.

FIG.2is an example block diagram of an architecture of the online system140. The online system140shown inFIG.2includes a user profile store205, a content store210, an action logger215, an action log220, and edge store225, an ad request module230, a bidding input module235, an impression identifier module240, a conversion value module245, a conversion likelihood module250, an expected spend module255, a bid computing module260, an auction module265, a value attribution module270, and a web server275. In other embodiments, the online system140may include additional, fewer, or different components for various applications. Conventional components such as network interfaces, security functions, load balancers, failover servers, management and network operations consoles, and the like are not shown so as to not obscure the details of the system architecture.

Each user profile includes user identifying information allowing the online system140to uniquely identify users corresponding to different user profiles. For example, each user profile includes an electronic mail (“email”) address, allowing the online system140to identify different users based on their email addresses. However, a user profile may include any suitable user identifying information associated with users by the online system140that allows the online system140to identify different users.

One or more content items included in the content store210include a creative and bidding input information. The creative includes content for presentation to a user, such as text, image, audio, video, or any other suitable data presented to a user. In various embodiments, the creative also specifies a page of content. For example, a content item includes a landing page specifying a network address of a page of content to which a user is directed when the content item is accessed. The bidding input information is included in a content item by a user and is used to determine monetary compensation provided by an advertiser or third party system130to the online system140responsive to content in the content item being presented to a viewing user, responsive to the content in the content item receiving a user interaction when presented, or responsive any suitable condition being satisfied when content in the content item is presented to a viewing user.

Various content items may include an objective identifying an interaction that a user associated with a content item desires other users to perform when presented with content included in the content item. Example objectives include: installing an application associated with a content item, indicating a preference for a content item, sharing a content item with other users, interacting with an object associated with a content item, or performing any other suitable interaction. As content from a content item is presented to online system users, the online system140logs interactions between users presented with the content item or with objects associated with the content item. Additionally, the online system140receives compensation from a user associated with content item as online system users perform interactions with a content item that satisfy the objective included in the content item.

Additionally, a content item may include one or more targeting criteria specified by the user who provided the content item to the online system140. Targeting criteria included in a content item request specify one or more characteristics of users eligible to be presented with the content item. For example, targeting criteria are used to identify users having user profile information, edges, or actions satisfying at least one of the targeting criteria. Hence, targeting criteria allow a user to identify users having specific characteristics, simplifying subsequent distribution of content to different users.

In one embodiment, targeting criteria may specify actions or types of connections between a user and another user or object of the online system140. Targeting criteria may also specify interactions between a user and objects performed external to the online system140, such as on a third party system130. For example, targeting criteria identifies users that have taken a particular action, such as sent a message to another user, used an application, joined a group, left a group, joined an event, generated an event description, purchased or reviewed a product or service using an online marketplace, requested information from a third party system130, installed an application, or performed any other suitable action. Including actions in targeting criteria allows users to further refine users eligible to be presented with content items. As another example, targeting criteria identifies users having a connection to another user or object or having a particular type of connection to another user or object.

The action log220may be used by the online system140to track user actions on the online system140, as well as actions on third party systems130that communicate information to the online system140. Users may interact with various objects on the online system140, and information describing these interactions is stored in the action log220. Examples of interactions with objects include: commenting on posts, sharing links, checking-in to physical locations via a client device110, accessing content items, and any other suitable interactions. Additional examples of interactions with objects on the online system140that are included in the action log220include: commenting on a photo album, communicating with a user, establishing a connection with an object, joining an event, joining a group, creating an event, authorizing an application, using an application, expressing a preference for an object (“liking” the object), and engaging in a transaction. Additionally, the action log220may record a user's interactions with content items and advertisements on the online system140as well as with other applications operating on the online system140. In some embodiments, data from the action log220is used to infer interests or preferences of a user, augmenting the interests included in the user's user profile and allowing a more complete understanding of user preferences.

The action log220may also store user actions taken on a third party system130, such as an external website, and communicated to the online system140. For example, an e-commerce website may recognize a user of an online system140through a social plug-in enabling the e-commerce website to identify the user of the online system140. Because users of the online system140are uniquely identifiable, e-commerce web sites, such as in the preceding example, may communicate information about a user's actions outside of the online system140to the online system140for association with the user. Hence, the action log220may record information about actions users perform on a third party system130, including webpage viewing histories, advertisements or other content with which the user engaged, purchases made, and other patterns from shopping and buying. Hence, the action log220may include information identifying content provided by one or more third party systems130that a user of the online system140has accessed or content provided by one or more third party systems130with which the user of the online system140otherwise interacted. Additionally, actions a user performs via an application associated with a third party system130and executing on a client device110may be communicated to the action logger215by the application for recordation and association with the user in the action log220.

In one embodiment, the action log220uses a tracking pixel or piece of HTML code placed on third-party websites to monitor users visiting the websites that have not opted out of tracking. A tracking pixel might be included on various pages, including on a product page describing a product, on a shopping cart page that the user visits upon putting something into a shopping cart, on a checkout page that the user visits to checkout and purchase a product, etc. For example, a tracking pixel results in a transparent 1×1 image, an iframe, or other suitable object being created for third party pages. When a user's browser loads a page having the tracking pixel, the tracking pixel results in the user's browser attempting to retrieve the content for that pixel, and the browser contacts the online system140to retrieve the content. The request sent to the online system140, however, actually includes data corresponding to the user's actions taken on the third party website. The third party website can control what data is sent to the online system140. For example, information may be included about a page the user is loading (e.g., is it a product page, a shopping cart page, a checkout page, etc.), about information on the page or about a product on the page of interest to the user (e.g., the SKU number of the product, the color, the size, the style, the current price, any discounts offered, the number of products requested, etc.), about the user (e.g., the third party's user identifier (UID) for the user, contact information for the user, etc.), and other data. In some embodiments, a cookie set by the online system140can also be retrieved by the online system140, which can include data for the user, such as the online systems' UID for the user, information about the client device and the browser, such as the Internet Protocol (IP) address of the client device, among other data. Tracking can also be performed on mobile applications of content providers by using a software development kit (SDK) of the online system140or via an application programming interface (API) of the online system140to track events (e.g., purchases) that occur by users on the content provider's app that are reported to the online system140.

The online system100can then use this data received about the user to serve better content to the user in the future (e.g., since the online system has further data about products purchased or browsed that might be of interest), and can also use this in retargeting of that product to the user (e.g., where the user went to the product page on a third party site by clicking on content from the third party system130presented to the user in the online system140). The online system140can also use this data in conversion tracking and reporting results of advertising campaigns to the third party system130. For example, if the third party system130has paid the online system140to serve content (e.g., content item for products being offered for sale by the third party system130), and a particular user views content on the online system140and then purchases a product described in the content (possibly at some point later, and possibly on a different device), the online system140can link the purchase/conversion to the content originally shown on the online system140, as described further below with respect to value attribution module270. Thus, the online system140can include this data in its reporting to the third party system130with respect to a number of conversions associated with the content item.

The edge store225stores information describing connections between users and other objects on the online system140as edges. Some edges may be defined by users, allowing users to specify their relationships with other users. For example, users may generate edges with other users that parallel the users' real-life relationships, such as friends, co-workers, partners, and so forth. Other edges are generated when users interact with objects in the online system140, such as expressing interest in a page on the online system140, sharing a link with other users of the online system140, and commenting on posts made by other users of the online system140.

The request module230receives a request from a third party system130. The request includes a content item for presentation to a viewing user. The content item can include text, image, audio, video, or any other suitable data describing a product or service and that can be presented to the viewing user. In various embodiments, the content item also includes a landing page specifying a network address to which the viewing user is directed when the content item is accessed.

Additionally, the request may include one or more targeting criteria specified by the third party system130. Targeting criteria included in a request may specify one or more characteristics of viewing users eligible to be presented with content in the request. As discussed above, targeting criteria can be a filter to apply to fields of a user profile and/or actions associated with a viewing user to identify users having user profile information or actions satisfying at least one of the targeting criteria. The user profile and/or actions may be tracked by the online system140or by a social networking system connected through the network120to the online system140. Hence, the targeting criteria allow a third party system to identify groups of users matching specific targeting criteria, simplifying subsequent distribution of content to groups of users.

In various embodiments, the online system140is a social networking system and the targeting criteria may specify actions or types of connections between a user and another user or object of the social networking system. The targeting criteria may also specify interactions between a user and objects performed external to the social networking system, such as objects on a server associated with an third party system130. For example, the targeting criteria identifies users that have taken a particular action, such as sending a message to another user, using an application, joining a group, leaving a group, joining an event, generating an event description, purchasing or reviewing a product or service using an online marketplace, requesting information from an third party system130, or any other suitable action. Including actions in the targeting criteria allows advertisers to further refine users eligible to be presented with content from a request. As another example, targeting criteria may identify users having a connection to another user or object or having a particular type of connection to another user or object.

The bidding input module210determines a minimum ROI for the request. The minimum ROI is a target amount that the third party130is willing to pay per unit value of a conversion of the content item associated with the request. The minimum ROI can be a ratio, a percentage, a dollar value, or any other indication of an amount relative to the value of the conversion of the content item. For example, the minimum ROI can be a ratio that specifies what the third party system130is willing to pay 100 per dollar value of a conversion or that the advertiser130will pay 10% of the value of the conversion. In other examples, the minimum ROI is an amount that specifies what the third party system130is willing to pay per the total value of the conversion or user spend associated with a conversion of the content item. For example, the minimum ROI can specify that the third party system130will pay $1 for a conversion worth $10.

The bidding input module235determines the minimum ROI based on a bidding input received from the third party system130. The bidding input indicates an amount that the third party system130is willing to spend on the bid. In some embodiments, the bidding input is the a budget for a campaign (i.e., the third party system130is willing to spend $10 per conversion). The bidding input module235determines the minimum ROI by scaling the budget by the value of a conversion. In some embodiments, the bidding input is a minimum ROI provided by the third party system130or a minimum ROI from a previous request associated with the same content. The bidding input can depend on the impression opportunity. For example, the bidding input for an impression opportunity that meets all of the request's targeting criteria may be valued more than an impression opportunity that meets a lower number of targeting criteria. In some embodiments, the bidding input module235determines the minimum ROI using a formula, algorithm, or equation provided by the third party system130. For example, the third party system130might provide a bid using a standard bidding model in which the bid is optimized for the number of conversions and not the value of the conversions, and the bidding input module235can determine the minimum ROI based on this bidding input. In this example, the bidding input module235might determine the minimum ROI using information such as past history of bidding for the third party system130, past indications by the third party system130of the value of various types of conversions, based on general information provided by the third party system130about conversion values for different impression opportunities or information obtained by observing conversions for the third party system130over time from many different users of the online system140, among other data and any combination of these data.

The impression identifier module240identifies an impression opportunity to deliver the content item to a viewing user of the online system140. For example, the module240can identify an impression opportunity for the content item associated with the request. The impression opportunity is an instance during which the online system140can display a content item to a viewing user. For example, the impression opportunity can occur when a user accesses a web page with space to display the content item. The impression identifier module240selects content items for the impression opportunity based on the targeting criteria and/or content associated with various requests, including the request received by the third party system130. In some embodiments, the impression identifier module240selects a content item for the impression opportunity if the viewing user matches a threshold number of targeting criteria.

The conversion value module245estimates a value of the conversion (“estimated conversion value”). The estimated conversion value is a prediction of the monetary worth of a single conversion for the content item. In one embodiment, this is the estimated conversion value for a conversion is the estimated amount a particular viewing user will spend converting on the content item or for a conversion involving a particular impression opportunity (since there can be more than one impression opportunity with a given viewing user). The value of a conversion of a content item can differ for different viewing users or across different impression opportunities. For example, a conversion of a content item for a social game application involving a viewing user that frequent plays social games might be more valuable than a conversion of the content item involving a viewing user that rarely uses social games, even though the third party system130may realize the same amount of money from each user's purchase of the game as a result of the content item. Since the game user plays games frequently, this user is much more likely to share this game with others, possibly resulting in multiple additional purchases of the game and more overall value to the third party system130. Further, some social games include in app purchases and the estimated amount the user will spend on a conversion for the game user who frequently plays social games will likely be a higher value relative to the user who rarely plays games. Similarly, out of two impression opportunities for the game user, conversions associated with certain impression opportunities may be more valuable than others. For example, a conversion that occurs for an impression opportunity on a social networking website versus a news website might be more likely to result in the game user more immediately playing the social game and immediately sharing with others that might buy the game.

The estimated conversion value typically is the value of the product or service described in the content item, but it can also be the revenue generated per conversion, the profit per conversion, the monetary impact of the conversion on the advertiser's competitor, or any other value associated with the conversion for the content item. The third party system130can provide the estimated conversion value or the estimated amount the viewing user will spend on a conversion to the conversion value module245. In some embodiments, the third party system130includes the estimated conversion value for the content item or the price of a product described in the content item in the request. For example, an third party system130may specify in the request that the conversion value is $65 for a $65 video game. The estimated conversion value can be based on other content item-specific information. In other embodiments, the online system140determines the estimated conversion value automatically or without input from the advertiser.

In some embodiments, the conversion value module245calculates the estimated conversion value based on information about the viewing user, since as explained above, the estimated conversion value may be different for different viewing users. The conversion value module245can use a statistical formula, a machine learning model, or any other formula to calculate the estimated conversion value, and the formula or algorithm used can be provided by the advertiser or set by the conversion value module245. Where the formula or algorithm is set by the conversion value module245, the module245may receive the inputs to the formula from the third party system130or may determine the inputs itself.

The formulas used by the conversion value module245can be a function of user-specific information known by the online system140. For example, in embodiments in which the online system140interfaces with a social networking system, the conversion value module245receives profile information that describes viewing user characteristics, social connections, and online interactions associated with the viewing user. The conversion value module220calculates the estimated conversion value based on the received profile information. In some embodiments, the estimated conversion value can be based on the time of day the content item is displayed, the content item, the viewing user's geographic location, or certain characteristics of or information about the viewing user. The conversion value module245can use information about the product or service known by the third party system130to calculate the estimated conversion value. For example, the conversion value module245can use the price of the good or service or other financial information not provided in the request to calculate the determined conversion value. Other examples of the conversion value module245use a machine learning algorithm, based on information specific to the viewing user, to determine the estimated conversion value.

In one embodiment, the conversion value module245applies machine learning techniques to generate a model that when applied to a set of content items, can select the optimal content item or set of content items that will provide the content provider with the highest return on the content provider's investment, spend, or conversion value for presenting that content item to a particular user or group of users.FIG.3shows a flow diagram of model training process in accordance with various embodiments. The conversion value module245generates a model315that selects the optimal content item that will provide the third party system130with the highest return on investment, expect amount of user spend, or conversion value for presenting that content item to a particular user. The model315uses obtaining organic spending305for users of the online system140as inputs for predicting or estimating whether a user will purchase a product or how much a user will spend as a result of performing a conversion (e.g., from in-app purchases upon installing an application). As described above, the organic spending305information can be obtained via tracking pixels or reported from the third party system130. The conversion value module245additionally uses attributed spending310, as further described with respect to value attribution module270.

Accordingly, conversion value module245extracts feature values from the content items associated with the organic spending305and attributed spending310including characteristics of users making the individual purchases to determine the expect amount a particular viewing user will spend upon being presented with a given content item. An ordered list of the features for a content item is herein referred to as the feature vector for the content item. In one embodiment, the content delivery module applies dimensionality reduction (e.g., via linear discriminant analysis (LDA), principle component analysis (PCA), or the like) to reduce the amount of data in the feature vectors for content items to a smaller, more representative set of data. The model315, when given a particular viewing user, will therefore output the expected user spend320by comparing the spending habits and characteristics of the particular viewing user to the characteristics and spending habits of other users of the online system140. In one embodiment, the conversion value module245uses supervised machine learning to train the model with the feature vectors of the positive training set and the negative training set serving as the inputs. Different machine learning techniques—such as linear support vector machine (linear SVM), boosting for other algorithms (e.g., AdaBoost), neural networks, logistic regression, naïve Bayes, memory-based learning, random forests, bagged trees, decision trees, boosted trees, or boosted stumps—may be used in different embodiments that make use of a machine learned model. The model, when applied to the feature vector extracted from a content item, outputs an indication of whether the content item has the property in question, such as a Boolean yes/no estimate, or a scalar value representing a probability.

The conversion likelihood module250calculates a likelihood or probability of the conversion, herein referred to as the “conversion likelihood,” of the content item by the viewing user. The conversion likelihood module225calculates the conversion likelihood based on user-specific information known by the online system140. In one embodiment, the conversion likelihood module225receives profile information associated with the viewing user. The profile information can be from the viewing user's profile on a social networking system and may include characteristics of the viewing user, social networking connections of the viewing user, and interactions the viewing user has performed in the social networking system. The conversion likelihood module250calculates the conversion likelihood based on user-specific information known about the viewing user, such as the viewing user's profile information. For example, viewing user's with certain characteristics (e.g., users of certain age ranges, certain demographics, in certain locations, having certain likes and dislikes, among other characteristics) might be known to be more likely to click on an ad and buy a product based on the click than other users. Another factor that might be considered in by the conversion likelihood module250is historical information about a given user's clicks on content items, since users who click frequently on content items might be more likely to click again. Similarly, a user might be more likely to click on content items of a certain type (e.g., content items with images versus those without, content items on a particular topic, content items that include social context about friends or social networking connections who may have liked the product, content items shown at particular times of day or days of the week, etc.). The conversion likelihood is calculated separately for each viewing user or impression opportunity and can be specific to each viewing user or impression opportunity.

The expected value module255calculates the expected value of the conversion of the content item (“expected conversion value”). The expected conversion value is the estimated conversion value (or estimated amount a particular viewing user will spend) adjusted for the likelihood of the conversion. The expected conversion value is based on both the estimated conversion value and the conversion likelihood. In some embodiments, the expected conversion value is the product of the conversion likelihood and the estimated conversion value. However, the expected value module255can use other equations, formulas, or algorithms based on the estimated value of the conversion to calculate the expected value of the conversion.

The bid computing module260computes a bid amount for the impression opportunity. The bid amount is based on both the expected conversion value and on the minimum ROI. In some embodiments, the bid amount is computed by scaling the expected conversion value by the minimum ROI, such as by multiplying the expected conversion value by the minimum ROI.

The auction module265receives the bid amount and associates the bid amount with the request. The request is submitted to an auction process. The online system140uses the auction process to select a content item to display to the viewing user. The content item selection is based on the bid amount and may additionally be based on the tracking criteria associated with the content item. In embodiments in which the third party system is connected to a social network, the content item may be displayed on a social network interface, such as a newsfeed.

The value attribution module270attributes a portion of the expected value of the conversion to the content item selected by the auction module265. The value attribution module270tracks subsequent actions by the viewing user after the online system140provides the content item for display to the viewing user or after the user clicks on the content item. The value attribution module270receives an indication of a conversion by the viewing user (e.g., determines that the user purchased the product described in the content item). Based on the tracked actions, the value attribution module270attributes a portion of the expected conversion value to the content item. The portion of the expected conversion value can be a binary number (1=conversion attributed to the content item|0=conversion not attributed to the content item), a percentage (e.g., 30% of the expected conversion value is attributed to the content item), or a dollar value (e.g., $20 is attributed to the content item). Conversion attribution information may be sent to the conversion value module245to improve the formula or algorithm that calculates the estimated conversion value and thus the expected conversion value. For example, this information can be used in a machine learning process to improve the ability of the conversion value module245to determine the estimated conversion value for each viewing user or impression opportunity.

The web server275links the online system140via the network120to the one or more client devices110, as well as to the one or more advertisers130. The web server275serves web pages, as well as other web-related content, such as JAVA®, FLASH®, XML and so forth. The web server275may receive and route messages among the third party systems130, the online system140, and the client device110, for example, ad content, messages, or other information. Additionally, the web server275may provide application programming interface (API) functionality to send data directly to native client device operating systems, such as IOS®, ANDROID™, WEBOS® or RIM®.

Method for Calculating Bids for Content Items Based on Expected User Spend

FIG.4is a flowchart of a process for calculating a bid for a content item based on the estimated amount a user will spend on a product associated with the content item, in accordance with an embodiment of the invention. Unless otherwise noted, the process ofFIG.4is performed by the online system140, which may store instructions that cause a processor on the online system140to execute the process described inFIG.4. The process ofFIG.4may include additional or alternative steps.

The online system140receives410an request from the third party system130. The request includes content describing a product offered for sale by the third party system. The content includes but is not limited to text, image, audio, video, or any other data suitable for presentation to a viewing user. The request can also include targeting criteria, which specifies one or more characteristics of viewing users eligible to be presented with content in the request. The targeting criteria specify actions, profile information, or connections of a viewing user associated with eligible viewing users.

The online system140may receive a bidding input from the third party system130. The bidding input indicates how much the third party system130is willing to pay to display the content item. The bidding input can be a maximum or minimum value for a bid for the request, a budget for the content item, or a minimum ROI for the content item. The bidding input can be received from the third party system130(e.g., as part of the content item request). In some embodiments, in which the online system is connected to a social networking system, the online system140determines the bidding input based on tracked interactions of the viewing user in the social networking system and profile information of the viewing user.

The online system140may then additionally determine a minimum ROI based on the bidding input. The minimum ROI is an amount that the third party system is willing to pay per unit of value of a conversion of the content item. The minimum ROI can be expressed as a ratio, a percentage, a dollar amount, or any other suitable expression of value. For example, the minimum ROI can indicate the third party system130is willing to pay 25 ¢ per dollar value of the conversion for the content item. The minimum ROI can be submitted as part of the content item request by the third party system130or can be determined by the online system140using a formula, algorithm, or other equation provided by the third party system130. The equation may be a function of the targeting criteria for the content item and user-specific information about the viewing user.

The online system140identifies420an impression opportunity to present the content item to a viewing user. For example, a viewing user may have just refreshed a page or navigated to a new page, and hence there is an opportunity to provide content to the viewing user. The online system140might also identify420that the impression opportunity is one that is appropriate for the content item of the third party system that was received410, since it may match the targeting criteria of that content item request. The impression opportunity is an instance during which the online system140can provide an content item for display to a viewing user. The online system140can identify420that the impression opportunity is one that matches the content item request by using an affinity score representing the affinity of the viewing user for the content item or content item request. The affinity score is a measure of the viewing user's affinity for the content item associated with the content item request and may be based on profile information belonging to the viewing user, such as profile information from a social network. Further description of affinity scores is provided in U.S. Pat. No. 8,402,094, which is hereby referenced in its entirety. Furthermore, the online system140can identify420that the impression opportunity is a match for the content item request based on other factors related to the impression opportunity, such as the time of day of the impression, the web page the impression is displayed on, and the placement of the content item.

The online system140obtain430spending data from third party systems for users of the online system. The spending data includes organic spending and attributed spending with characteristic of the users who engaged in the spending. The spending data and associated characteristics of the users are used to train a machine learning model that predicts a likelihood of a user taking a desired action with respect to the content item. In one embodiment, the desired action is the expected (or estimated) amount that a particular given user will spend on a product in response to being shown a content item describing the product.

Accordingly, the online system140determines440an expected amount that a user will spend on a product in response to being shown the content item. The expected amount can be the value of the conversion associated with the value of a product or service described by the content item, the revenue generated by the conversion, the profit generated by the conversion, the impact of the conversion on a competitor of the third party system130, or any other value. The expected amount that a user will spend in a conversion can be provided by the third party system130or determined by the online system140using a statistical formula, a machine learning algorithm, or any other relevant function or equation. The online system140can use user-specific information known by the online system140to calculate the expected amount that a user will spend in a conversion. For example, if the online system140is connected to a social networking system, the online system140can use profile information, social connections, or tracked interactions to calculate the expected amount that a user will spend. Furthermore, the online system140can use information about the product or service to determine450the expected value of the conversion. For example, the online system140can determine the expected value of the conversion based on the price of the good or service. The online system140can also take into account the likelihood of the conversion when determining440the expected amount that a user will spend.

The online system140computes450a bid amount. The bid amount is the amount bid by the third party system130to display the content item during the impression opportunity and is based on the expected amount that a user will spend. In one embodiment, the bid amount is based on both the expected amount that a user will spend in the conversion as well as the minimum ROI. In some embodiments, the bid amount is the product of the expected amount that a user will spend and the minimum ROI. Accordingly, this provides the online system140with a mechanism to increase the bid amount for higher price products with low conversion rates relative to lower priced products with comparatively higher conversion rates.

The online system140provides460the bid amount to an content item selection process. The content item selection process can be an advertising auction performed by the online system140or performed by another system. The bid amount is provided with the content item request to the advertising auction. Based on the bid amounts of the provided content item requests, the online system140selects an content item to provide for display to the viewing user.

The online system140may track actions by the viewing user after providing the viewing user with the selected content item. While tracking the actions of the viewing user, the third party system can receive an indication that the content item conversion occurred. The indication of the conversion can be any tracked action by the viewing user, such as following a link, making a purchase, viewing an content item, visiting a landing page, or any other relevant action. Based on the tracked actions by the viewing user, the online system140attributes a portion of the expected conversion value to the content item. The online system140can use any statistical formula, machine learning algorithm, or other apparent function to calculate the attributed portion of the expected value of the conversion.

ADDITIONAL CONSIDERATIONS