# US 8,788,336 B1 · Estimating cost and/or performance information for an advertisement in an advertising system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,788,336 B1
- Document ID: US8788336B1
- Status: Granted
- Kind: B1
- Application number: 10/749,115
- Filed: 2003-12-30
- Granted: 2014-07-22
- Earliest claimed: 2003-12-30
- Assignees: Google Inc.
- Applicants: Arash Baratloo; Monika H. Henzinger; Ming-Yee Iu; Wilburt Labio; Zhe Qian; Keith Randall; Robert J. Stets
- Inventors: Arash Baratloo; Monika H. Henzinger; Ming-Yee Iu; Wilburt Labio; Zhe Qian; Keith Randall; Robert J. Stets
- Web page: https://patentgrep.com/patent/US8788336B1

## CPC

- G06Q 30/08: Auctions
- G06Q 30/0242: Determining effectiveness of advertisements
- G06Q: INFORMATION 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

## Abstract

An advertiser may be provided with fast and accurate estimates of the future cost and/or performance information for one or more actual or hypothetical ads (generally referred to as “proto-ads”). Past auction information may be used to simulate auctions that the proto-ad would have competed in. The proto-ad may then participate in a “replay” of such past auctions.

## Claims

### Claim 1

A method comprising:
receiving, by at least one processor, proto-ad information for a proto-ad, the proto-ad information including a plurality of offer amounts corresponding to the proto-ad;
receiving, by at least one processor, past auction information corresponding to past auctions based on the received proto-ad information;
receiving, by at least one processor, traffic trend information based on the received proto-ad information;
replaying, by at least one processor, past auctions using a first offer amount associated with the received proto-ad information and the received past auction information to generate first auction result information;
determining, by at least one processor and based on the first auction result information, a first performance estimate for the proto-ad associated with the first offer amount;
adjusting, by at least one processor, the first performance estimate associated with the first offer amount for the proto-ad based on the received traffic trend information;
replaying, by at least one processor, past auctions using a second offer amount different from the first offer amount and associated with the received proto-ad information and the received past auction information to generate second auction result information;
determining, by at least one processor and based on the second auction result information, a second performance estimate for the proto-ad associated with the second offer amount;
adjusting, by at least one processor, the second performance estimate for the second offer amount for the proto-ad based on the received traffic trend information; and
forwarding, by at least one processor, the adjusted first performance estimate associated with the first offer amount and the adjusted second performance estimate associated with the second offer amount.

### Claim 2 (depends on 1)

The method of claim 1 wherein the proto-ad information includes a targeting keyword, and wherein the past auction information is received using the targeting keyword.

### Claim 3 (depends on 1)

The method of claim 1 wherein the proto-ad information includes a targeting topic, and wherein the past auction information is received using the targeting topic.

### Claim 4 (depends on 1)

The method of claim 1 wherein the proto-ad information includes a set of one or more serving constraints, and wherein the past auction information is received using the set of one or more serving constraints.

### Claim 5 (depends on 1)

The method of claim 1 wherein the traffic trend information includes at least one of (a) a seasonality of general traffic on the Web, (b) a seasonality of general traffic at a search Website, (c) a seasonality of general traffic at a Website with which the ad will be rendered, (d) a seasonality of keyword-specific traffic at a search Website, and (e) a seasonality of keyword-specific traffic at a Website with which the ad will be rendered.

### Claim 6 (depends on 1)

The method of claim 1 wherein the at least one processor comprises at least two processors, wherein replaying the past auctions using the first offer amount associated with the received proto-ad information and the received past auction information to generate the first auction result information comprises each of the at least two processors:
receiving a portion of the past auction information using the received proto-ad information,
replaying past auctions using the first offer amount associated with the received proto-ad information and the received portion of the past auction information to generate auction result information, and
generating the first auction result information using the auction result information.

### Claim 7 (depends on 1)

The method of claim 1 wherein each of the first offer amount and the second offer amount is a price per selection.

### Claim 8 (depends on 1)

The method of claim 1 wherein each of the first offer amount and the second offer amount is a price per conversion.

### Claim 9 (depends on 1)

The method of claim 1 wherein each of the first offer amount and the second offer amount is a maximum price per selection.

### Claim 10 (depends on 1)

The method of claim 1 wherein each of the first offer amount and the second offer amount is a maximum price per conversion.

### Claim 11 (depends on 1)

The method of claim 1 further comprising:
adjusting the first estimate and the second estimate for the proto-ad using other proto-ad information.

### Claim 12

A method comprising:
receiving, by at least one processor, proto-ad information for a proto-ad;
receiving, by at least one processor, sets of past auction information based on the received proto-ad information;
receiving, by at least one processor, traffic trend information based on the received proto-ad information;
for each of the sets of past auction information:
replaying, by at least one processor, a past auction included in a set of past auction information using a first offer amount associated with the received proto-ad information to generate first auction result information,
determining, by at least one processor and based on the first auction result information, a number of times that the proto-ad would have been presented for the first offer amount, and
updating, by at least one processor and based on the number of times that the proto ad would have been presented for the first offer amount, first proto-ad estimate information;
determining, by at least one processor and based on the first proto ad estimate information, a first performance estimate for the proto-ad associated with the first offer amount;
adjusting, by at least one processor, the first performance estimate associated with the first offer amount for the proto-ad based on the received traffic trend information;
for each of the sets of past auction information:
replaying, by at least one processor, a past auction included in a set of past auction information using a second offer amount different from the first offer amount and associated with the received proto-ad information to generate second auction result information,
determining, by at least one processor and based on the second auction result information, a number of times that the proto-ad would have been presented for the second offer amount, and
updating, by at least one processor and based on the number of times that the proto ad would have been presented for the second offer amount, second proto-ad estimate information;
determining, by at least one processor and based on the second proto ad estimate information, a second performance estimate for the proto-ad associated with the second offer amount;
adjusting, by at least one processor, the second performance estimate associated with the second offer amount for the proto-ad based on the received traffic trend information; and
forwarding, by at least one processor, the adjusted first performance estimate associated with the first offer amount and the adjusted second performance estimate associated with the second offer amount.

### Claim 13 (depends on 12)

The method of claim 12 wherein updating the first proto ad estimate information and the second proto-ad estimate information comprises incrementing an impression count.

### Claim 14 (depends on 12)

The method of claim 12 wherein updating the first proto ad estimate information and the second proto-ad estimate information comprises determining a sum of cost if selected to be a previous sum of cost if selected plus a cost if selected of the proto-ad in the replayed past auction.

### Claim 15 (depends on 14)

The method of claim 14 wherein updating the first proto ad estimate information and the second proto-ad estimate information further comprises incrementing an impression count, and wherein an estimate of cost is determined using the impression count, the sum of the cost if selected, and an estimated selection rate.

### Claim 16 (depends on 12)

The method of claim 12 wherein updating the first proto ad estimate information and the second proto-ad estimate information comprises determining a position sum to be a previous position sum plus a position of the proto-ad in the replayed past auction.

### Claim 17 (depends on 16)

The method of claim 16 wherein updating the first proto ad estimate information and the second proto-ad estimate information further comprises incrementing an impression count, and wherein an estimate of average position is determined using the impression count and the position sum.

### Claim 18

An apparatus comprising one or more processors connected to a storage device, wherein the one or more processors are configured to:
receive proto-ad information for a proto-ad;
receive past auction information based on the received proto-ad information;
receive traffic trend information based on the received proto-ad information;
replay past auctions using a first offer amount associated with the received proto-ad information and the received past auction information to generate first auction result information;
determine, based on the first auction result information, a first performance estimate for the proto-ad associated with the first offer amount,
adjust the first performance estimate associated with the first offer amount for the proto-ad based on the received traffic trend information;
replay past auctions using a second offer amount different from the first offer amount and associated with the received proto-ad information and the received past auction information to generate second auction result information;
determine, based on the second auction result information, a second performance estimate for the proto-ad associated with the second offer amount;
adjust the second performance estimate for the second offer amount for the proto-ad based on the received traffic trend information; and
forward the adjusted first performance estimate associated with the first offer amount and the adjusted second performance estimate associated with the second offer amount.

### Claim 19 (depends on 18)

The apparatus of claim 18 wherein the proto-ad information includes a targeting keyword, and wherein the one or more processors are configured to receive the past auction information using the targeting keyword.

### Claim 20 (depends on 18)

The apparatus of claim 18 wherein the proto-ad information includes a targeting topic, and wherein the one or more processors are configured to receive the past auction information using the targeting topic.

### Claim 21 (depends on 18)

The apparatus of claim 18 wherein the proto-ad information includes a set of one or more serving constraints, and wherein the one or more processors are configured to receive the past auction information using the set of one or more serving constraints.

### Claim 22 (depends on 18)

The apparatus of claim 18 wherein the traffic trend information includes at least one of (a) a seasonality of general traffic on the Web, (b) a seasonality of general traffic at a search Website, (c) a seasonality of general traffic at a Website with which the ad will be rendered, (d) a seasonality of keyword-specific traffic at a search Website, and (e) a seasonality of keyword-specific traffic at a Website with which the ad will be rendered.

### Claim 23 (depends on 18)

The apparatus of claim 18 wherein the one or more processors comprise at least two processors, wherein each of the processors is configured to replay the past auctions using the first offer amount associated with the received proto ad information and the received past auction information to generate first auction result information by:
receiving a portion of the past auction information using the received proto-ad information,
replaying past auctions using the first offer amount associated with the received proto-ad information and the received portion of the past auction information to generate auction result information, and
generating the first auction result information using the auction result information.

### Claim 24 (depends on 18)

The apparatus of claim 18 wherein each of the first offer amount and the second offer amount is a price per selection.

### Claim 25 (depends on 18)

The apparatus of claim 18 wherein each of the first offer amount and the second offer amount is a price per conversion.

### Claim 26 (depends on 18)

The apparatus of claim 18 wherein each of the first offer amount and the second offer amount is a maximum price per selection.

### Claim 27 (depends on 18)

The apparatus of claim 18 wherein each of the first offer amount and the second offer amount is a maximum price per conversion.

### Claim 28 (depends on 18)

The apparatus of claim 18, wherein the one or more processors are further configured to:
adjust the first estimate and the second estimate for the proto-ad using other proto-ad information.

### Claim 29

An apparatus comprising one or more processors connected to a storage device, wherein the one or more processors are configured to:
receive proto-ad information for a proto-ad,
receive sets of past auction information based on the received proto-ad information, and
receive traffic trend information based on the received proto-ad information;
for each of the sets of past auction information:
replay a past auction included in a set of past auction information using a first offer amount associated with the received proto-ad information to generate first auction result information,
determine, based on the first auction result information, a number of times that the proto-ad would have been presented for the first offer amount, and
update, based on the number of times that the proto ad would have been presented for the first offer amount, first proto-ad estimate information;
determine, based on the first proto ad estimate information, a first performance estimate for the proto-ad associated with the first offer amount;
adjust the first performance estimate associated with the first offer amount for the proto-ad based on the received traffic trend information;
for each of the sets of past auction information:
replay a past auction included in a set of past auction information using a second offer amount different from the first offer amount and associated with the received proto-ad information to generate second auction result information,
determine, based on the second auction result information, a number of times that the proto-ad would have been presented for the second offer amount, and
update, based on the number of times that the proto ad would have been presented for the second offer amount, second proto-ad estimate information;
determine, based on the second proto ad estimate information, a second performance estimate for the proto-ad associated with the second offer amount;
adjust the second performance estimate associated with the second offer amount for the proto-ad based on the received traffic trend information; and
forward the adjusted first performance estimate associated with the first offer amount and the adjusted second performance estimate associated with the second offer amount.

### Claim 30 (depends on 29)

The apparatus of claim 29 wherein the one or more processors are configured to update the first proto ad estimate information and the second proto-ad estimate information by incrementing an impression count.

### Claim 31 (depends on 29)

The apparatus of claim 29 wherein the one or more processors are configured to update the first proto ad estimate information and the second proto-ad estimate information by determining a sum of cost if selected to be a previous sum of cost if selected plus a cost if selected of the proto-ad in the replayed past auction.

### Claim 32 (depends on 31)

The apparatus of claim 31 wherein the one or more processors are configured to update the first proto ad estimate information and the second proto-ad estimate information by incrementing an impression count, and wherein an estimate of cost is determined using the impression count, the sum of the cost if selected, and an estimated selection rate.

### Claim 33 (depends on 29)

The apparatus of claim 29 wherein the one or more processors are configured to update the first proto ad estimate information and the second proto-ad estimate information by determining a position sum to be a previous position sum plus a position of the proto-ad in the replayed past auction.

### Claim 34 (depends on 33)

The apparatus of claim 33 wherein the one or more processors are configured to update the first proto ad estimate information and the second proto-ad estimate information by incrementing an impression count, and wherein an estimate of average position is determined using the impression count and the position sum.

### Claim 35 (depends on 1)

The method of claim 1, wherein:
replaying the past auctions using the first offer amount associated with the received proto-ad information and the received past auction information to generate the first auction result information comprises:
comparing the first offer amount to other offer amounts included in the received past auction information, and
determining, based on the comparison of the first offer amount to the other offer amounts included in the received past auction information, a number of times that the proto-ad would have been presented for the first offer amount;
determining, based on the first auction result information, the first performance estimate comprises determining, based on the number of times that the proto-ad would have been presented for the first offer amount, the first performance estimate;
replaying the past auctions using the second offer amount associated with the received proto-ad information and the received past auction information to generate the second auction result information comprises:
comparing the second offer amount to the other offer amounts included in the received past auction information, and
determining, based on the comparison of the second offer amount to the other offer amounts included in the received past auction information, a number of times that the proto-ad would have been presented for the second offer amount; and
determining, based on the second auction result information, the second performance estimate comprises determining, based on the a number of times that the proto-ad would have been presented for the second offer amount, the second performance estimate.

### Claim 36 (depends on 35)

The method of claim 35, wherein:
determining, based on the number of times that the proto-ad would have been presented for the first offer amount, the first performance estimate comprises determining, only based on the a number of times that the proto-ad would have been presented for the first offer amount, the first performance estimate; and
determining, based on the number of times that the proto-ad would have been presented for the second offer amount, the second performance estimate comprises determining, only based on the a number of times that the proto-ad would have been presented for the second offer amount, the second performance estimate.

### Claim 37 (depends on 1)

The method of claim 1, wherein the first performance estimate associated with the first offer amount comprises at least of an average cost if selected, an average cost if converted, an average position, per position counts, an impression count, a cost per time period, selections per time period, conversions per time period, a cost over sample, selections over sample, and conversions over sample.

### Claim 38 (depends on 1)

The method of claim 1, wherein the second performance estimate associated with the second offer amount comprises at least of an average cost if selected, an average cost if converted, an average position, per position counts, an impression count, a cost per time period, selections per time period, conversions per time period, a cost over sample, selections over sample, and conversions over sample.

### Claim 39 (depends on 1)

The method of claim 1, wherein forwarding the adjusted first performance estimate associated with the first offer amount and the adjusted second performance estimate associated with the second offer amount comprises enabling display of the adjusted first performance estimate associated with the first offer amount and the adjusted second performance estimate associated with the second offer amount.

### Claim 40 (depends on 39)

The method of claim 39, wherein enabling display of the adjusted first performance estimate associated with the first offer amount and the adjusted second performance estimate associated with the second offer amount comprises simultaneously enabling display of the adjusted first performance estimate relative to the first offer amount and the adjusted second performance estimate relative to the second offer amount.

### Claim 41 (depends on 18)

The apparatus of claim 18, wherein the first performance estimate associated with the first offer amount comprises at least of an average cost if selected, an average cost if converted, an average position, per position counts, an impression count, a cost per time period, selections per time period, conversions per time period, a cost over sample, selections over sample, and conversions over sample.

### Claim 42 (depends on 18)

The apparatus of claim 18, wherein the second performance estimate associated with the second offer amount comprises at least of an average cost if selected, an average cost if converted, an average position, per position counts, an impression count, a cost per time period, selections per time period, conversions per time period, a cost over sample, selections over sample, and conversions over sample.

### Claim 43 (depends on 5)

The method of claim 5, wherein (a) the seasonality of general traffic on the Web comprises a trend of general traffic on the Web over a predetermined time period, (b) the seasonality of general traffic at the search Website comprises a trend of general traffic at the search Website over a predetermined time period, (c) the seasonality of general traffic at the Website with which the ad will be rendered comprises a trend of general traffic at the Website with which the ad will be rendered over a predetermined time period, (d) the seasonality of keyword-specific traffic at the search Website comprises a trend of keyword-specific traffic at the search Website over a predetermined time period, and (e) the seasonality of keyword-specific traffic at the Website with which the ad will be rendered comprises a trend of keyword-specific traffic at the Website with which the ad will be rendered over a predetermined time period.

### Claim 44 (depends on 37)

The method of claim 37 wherein the estimated cost per time period for the proto-ad is determined using an estimated average cost if selected, an estimated impression count, an estimated selection rate, and a sample period.

### Claim 45 (depends on 37)

The method of claim 37 wherein the estimated cost per time period for the proto-ad is determined using an estimated average cost if selected, an estimated impression count over a number of auctions, an estimated selection rate, and an estimated number of auctions per time period.

### Claim 46 (depends on 41)

The apparatus of claim 41 wherein the one or more processors are configured to determine the estimated cost per time period for the proto-ad using an estimated average cost if selected, an estimated impression count, an estimated selection rate, and a sample period.

### Claim 47 (depends on 41)

The apparatus of claim 41 wherein the one or more processors are configured to determine the estimated cost per time period for the proto-ad using an estimated average cost if selected, an estimated impression count over a number of auctions, an estimated selection rate, and an estimated number of auctions per time period.
