Register or Login To Download This Patent As A PDF
| United States Patent Application |
20090187477
|
| Kind Code
|
A1
|
|
Bardin; Ariel H.
;   et al.
|
July 23, 2009
|
Universal Ad Creative
Abstract
Methods for generating one or more advertisement creatives for multiple
advertisement types. In one aspect, a method includes receiving a
selection and data entered in an electronic form, the selection being for
two or more different advertisement types, the entered data being of one
or more data types, the data types including text, image, audio, or
video, generating two or more advertisement creatives using the entered
data, the two or more advertisement creatives being for the selected two
or more different advertisement types, and presenting the two or more
advertisement creatives.
| Inventors: |
Bardin; Ariel H.; (Belmont, CA)
; Garb; Rachel; (Mountain View, CA)
; Abdoolcarim; Mohammed; (Palo Alto, CA)
; Shen; Si; (San Francisco, CA)
|
| Correspondence Address:
|
FISH & RICHARDSON P.C.
PO BOX 1022
MINNEAPOLIS
MN
55440-1022
US
|
| Serial No.:
|
016606 |
| Series Code:
|
12
|
| Filed:
|
January 18, 2008 |
| Current U.S. Class: |
705/14.69; 715/771; 715/780 |
| Class at Publication: |
705/14; 715/780; 715/771 |
| International Class: |
G06Q 30/00 20060101 G06Q030/00; G06F 3/048 20060101 G06F003/048 |
Claims
1. A computer-implemented method, comprising:receiving creative data and a
creative type selection from a user device, the creative data being data
that defines content of a first creative, the creative type selection
defining a first media type for the first creative;generating the first
creative based on the creative data, the first creative being of the
first media type;providing the first creative to the user device;
andproviding a recommendation for a second creative of a second media
type based on the creative data.
2. The method of claim 1, wherein each of the first and second creative is
for one of a local business advertisement, a mobile advertisement, a text
advertisement, an image advertisement, an audio advertisement, or a video
advertisement.
3. The method of claim 1, further comprising:presenting an electronic form
for receiving data.
4. The method of claim 3, wherein presenting the electronic form for
receiving data further comprises presenting a sample advertisement.
5. The method of claim 4, wherein the electronic form includes one or more
fields for receiving data, the one or more fields corresponding to sample
data in the sample advertisement.
6. The method of claim 3, wherein presenting the electronic form for
receiving data further comprises presenting one or more user interface
elements for selection, the user interface elements operable for
receiving user input.
7. The method of claim 6, further comprising:receiving input selecting a
user interface element, the user interface element associated with a
media type; andpresenting a sample creative, the sample creative being of
the media type associated with the selected user interface element.
8. The method of claim 1, wherein providing a recommendation for a second
creative of a second media type is based on the creative data and
additional data.
9. The method of claim 8, further comprising:determining a user type of a
first user entering data in the electronic form; andselecting the
additional data based on the user type of the first user, the additional
data being associated with one or more other users, the one or more other
users being of the user type of the first user.
10. The method of claim 8, wherein the creative data includes an
identifier for a content source, and the additional data includes content
from the content source.
11. The method of claim 10, wherein the identifier is one of a Uniform
Resource Identifier, a Uniform Resource Locator, or an alias address.
12. (canceled)
13. (canceled)
14. The method of claim 1, further comprising:receiving input to accept or
reject the second creative.
15. A method, comprising:receiving input from an advertiser specifying a
first advertisement having a first media type;providing to the advertiser
a first advertisement creative for the first media type; andrecommending
to the advertiser a second advertisement creative for a second media type
that differs from the first media type based on the input.
16. The method of claim 15, further comprising:presenting an electronic
form for receiving input from the advertiser.
17. The method of claim 15, wherein each of the first and second
advertisement creatives is for one of a local business advertisement, a
mobile advertisement, a text advertisement, an image advertisement, an
audio advertisement, or a video advertisement.
18. The method of claim 15, wherein recommending to the advertiser a
second advertisement creative for a second media type further
comprises:presenting a sample advertisement having the second media type.
19. The method of claim 15, further comprising:receiving data from the
advertiser for generating the first advertisement; andgenerating the
first and second advertisement creatives based on the entered data and
additional data.
20. The method of claim 19, further comprising:determining a user type of
the advertiser; andselecting the additional data based on the user type
of the advertiser, the additional data being associated with one or more
other advertisers of the same user type.
21. The method of claim 19, wherein the received data includes an
identifier for a content source, and the additional data includes content
from the content source.
22. The method of claim 21, wherein the identifier is one of a Uniform
Resource Identifier, a Uniform Resource Locator, or an alias address.
23. The method of claim 15, further comprising:receiving data from the
advertiser for generating the first advertisement; anddetermining the
second media type based on one or more data types of the received data.
24. The method of claim 15, further comprising:receiving input from the
advertiser accepting, modifying, or rejecting at least one of the first
and second advertisement creatives.
25. The method of claim 1, wherein providing a recommendation for a second
creative comprises:determining whether the creative data includes data
for providing a recommendation for a second creative of a second media
type;in response to determining that the creative data does not include
the data necessary to provide the recommendation:requesting additional
data for providing the recommendation;receiving the additional data;
andgenerating the recommendation based on the creative data and the
additional data;in response to determining that the creative data does
include the data for providing the recommendation:generating the
recommendation based on the creative data; andproviding the
recommendation to the user device.
26. The method of claim 25, wherein receiving the additional data
comprises extracting the additional data from a historical data
repository, the historical data repository including data that
corresponds to the first creative.
27. The method of claim 25, wherein receiving the additional data
comprises extracting the additional data from a network location
associated with the first creative.
Description
TECHNICAL FIELD
[0001]The subject matter of this specification is generally related to
user interfaces.
BACKGROUND
[0002]Interactive media (e.g., the Internet) has great potential for
improving the targeting of advertisements ("ads") to receptive audiences.
For example, some websites provide information search functionality that
is based on keywords entered by the user seeking information. This user
query can be an indicator of the type of information of interest to the
user. By comparing the user query to a list of keywords specified by an
advertiser, it is possible to provide targeted ads to the user. An
example of such a system is AdWords.TM. offered by Google, Inc. (Mountain
View, Calif.).
[0003]In a conventional advertisement creation process, an advertiser
selects a type of advertisement (e.g., a text advertisement, an image
advertisement, or a video advertisement) and provides content specific to
the selected advertisement type. The content can be entered, for example,
in a form presented to the advertiser by an advertising system.
Generally, if the advertiser wishes to generate another advertisement of
a second advertisement type, the advertiser needs to repeat the
advertisement creation process using a different form for the second
advertisement type. Requiring the advertiser to repeat the advertisement
creation process for each advertisement type is inefficient and typically
means the advertiser has to provide the same content multiple times.
Repeating unnecessary steps may deter an advertiser from buying multiple
advertisements of different advertisement types.
SUMMARY
[0004]In general, one aspect of the subject matter described in this
specification can be embodied in methods that include the actions of
receiving a selection and data entered in an electronic form, the
selection being for two or more different advertisement types, the
entered data being of one or more data types, the data types including
text, image, audio, or video, generating two or more advertisement
creatives using the entered data, the two or more advertisement creatives
being for the selected two or more different advertisement types, and
presenting the two or more advertisement creatives.
[0005]These and other embodiments can optionally include one or more of
the following features. Each advertisement creative can be for one of a
local business advertisement, a mobile advertisement, a text
advertisement, an image advertisement, an audio advertisement, or a video
advertisement. The electronic form can be presented for entering data.
Presenting the electronic form for entering data can include presenting a
sample advertisement. The electronic form can include one or more fields
for entering data, where the one or more fields correspond to sample data
in the sample advertisement. Presenting the electronic form for entering
data can include presenting one or more user interface elements for
selection, where the user interface elements are operable for receiving
user input. Input selecting a user interface element can be received,
where the user interface element is associated with an advertisement
type, and a sample advertisement can be presented, where the sample
advertisement is of the advertisement type associated with the selected
user interface element. Generating two or more advertisement creatives
using the entered data can include generating the two or more
advertisement creatives based on the entered data and additional data. A
user type of a first user entering data in the electronic form can be
determined, and the additional data can be selected based on the user
type of the first user, where the additional data is associated with one
or more other users, and the one or more other users are of the user type
of the first user. The entered data can include an identifier for a
content source, and the additional data can include content from the
content source. The identifier can be one of a Uniform Resource
Identifier, a Uniform Resource Locator, or an alias address. Generating
two or more advertisement creatives using the entered data can include
generating the two or more advertisement creatives based on the one or
more data types of the entered data. Input can be received to modify at
least one advertisement creative of the two or more presented
advertisement creatives, and the at least one advertisement creative can
be modified according to the received input. Input can be received to
accept or reject at least one advertisement creative of the two or more
presented advertisement creatives.
[0006]In general, in one aspect, a method is provided. The method includes
receiving input from an advertiser specifying a first advertisement
having a first media type, providing to the advertiser a first
advertisement creative for the first media type, and recommending to the
advertiser a second advertisement creative for a second media type that
differs from the first media type.
[0007]These and other embodiments can optionally include one or more of
the following features. An electronic form for receiving input from the
advertiser can be presented. Each of the first and second advertisement
creatives can be for one of a local business advertisement, a mobile
advertisement, a text advertisement, an image advertisement, an audio
advertisement, or a video advertisement. Recommending to the advertiser a
second advertisement creative for a second media type can include
presenting a sample advertisement having the second media type. Data from
the advertiser can be received for generating the first advertisement,
and the first and second advertisement creatives can be generated based
on the entered data and additional data. A user type of the advertiser
can be determined, and the additional data can be selected based on the
user type of the advertiser, where the additional data can be associated
with one or more other advertisers of the same user type. The received
data can include an identifier for a content source, and the additional
data can include content from the content source. The identifier can be
one of a Uniform Resource Identifier, a Uniform Resource Locator, or an
alias address. Data from the advertiser can be received for generating
the first advertisement, and the second media type can be determined
based on one or more data types of the received data. Input can be
received from the advertiser accepting, modifying, or rejecting at least
one of the first and second advertisement creatives.
[0008]Particular embodiments of the subject matter described in this
specification can be implemented to realize one or more of the following
advantages. A unified user interface for receiving content for one
advertisement can be used to generate multiple advertisements of
different advertisement types. The unified user interface simplifies the
advertisement creation process by minimizing the amount of data that an
advertiser needs to provide to generate different types of
advertisements. The streamlined user interface provides a user-friendly
way of opting into multiple advertisement types. An advertiser can
provide content without specifying the type of advertisement to be
generated. If an advertiser specifies a particular advertisement type,
additional advertisement types can be recommended to the advertiser. The
additional advertisement types can be identified based on content
provided by the advertiser, the type of content provided by the
advertiser, content available on the advertiser's webpage, or historical
data associated with the advertiser or other advertisers.
[0009]The details of one or more embodiments of the subject matter
described in this specification are set forth in the accompanying
drawings and the description below. Other features, objects, and
advantages of the subject matter will be apparent from the description,
the drawings, and the claims.
DESCRIPTION OF DRAWINGS
[0010]FIG. 1 is a block diagram of an example system that can be used to
generate one or more advertisements corresponding to one or more
advertisement creatives.
[0011]FIG. 2 is an example block diagram of the recommendation engine of
FIG. 1.
[0012]FIG. 3 is a flow chart of an example process for recommending
multiple advertisement creatives.
[0013]FIGS. 4 and 5 are screen s
hots of example user interfaces that can
be used to enter advertisement data.
[0014]FIG. 6 is a flow chart of an example process for generating two or
more advertisement creatives.
[0015]FIG. 7 is a block diagram of generic computing devices.
[0016]Like reference symbols in the various drawings indicate like
elements.
DETAILED DESCRIPTION
[0017]FIG. 1 is a block diagram of an example system 100 that can be used
to generate one or more advertisements corresponding to one or more
advertisement creatives. In general, when a user enters an internet
search, results are displayed. For example, a user can enter a keyword
search to locate web sites corresponding to the entered keywords. As
another example, a user can search for a location on an online map using
an address, name, keywords, or other search parameters. In some
implementations, relevant advertisements can also be displayed with the
corresponding search results. Typically, an advertisement creative
(referred to herein as an "ad creative") is the content of an
advertisement as the content will appear in the completed advertisement.
For example, an ad creative can be used to generate an advertisement that
includes a portion of text, an image, audio, a video, other data types,
or combinations thereof. An ad creative can also define a layout for the
completed advertisement. In general, the ad creative can be used for a
local business advertisement, a mobile advertisement, a text
advertisement, an image advertisement, an audio advertisement, a video
advertisement, or other types of advertisements.
[0018]Referring to FIG. 1, an advertiser can use a device 102 that
includes a user interface 104. The device 102 can be a mobile device,
desktop computer, laptop computer, handheld computer, or any other
computing device or display device that can display the user interface
104. Typically, the user interface 104 is presented to a user (e.g., an
advertiser) of device 102 by an advertising system 106. For example, the
advertising system 106 can present a web page that presents the user
interface 104. In general, the user interface 104 includes one or more
user interface forms that can be used to enter data. For example, the
user interface 104 can include one or more user interface elements
operable for receiving user input, such as text fields, check boxes,
buttons (e.g., radio buttons and other buttons), or sliders, and preview
areas that the advertiser can utilize to enter data corresponding to an
ad creative. Moreover, the user interface 104 allows the advertiser to
view one or more proposed advertisements generated from the entered data.
The user interface 104 is described in more detail in reference to FIGS.
4 and 5.
[0019]The advertising system 106 can be configured to receive data
corresponding to one or more ad creatives from the user interface 104.
For example, the device 102 can connect to a network (e.g., a LAN, MAN,
WAN, or the Internet) and transmit data provided to the user interface
104, such as text, an audio clip, a video clip, or other data. In
response to receiving data corresponding to an ad creative, the
advertising system 106 can identify relevant advertisements by using one
or more of an ad/content repository 108, a recommendation engine 110, a
historical data repository 112, and a crawler 114.
[0020]The ad/content repository 108 can be used to store advertisements
and other relevant content. In general, the ad/content repository 108 can
store one or more advertisements generated by the advertising system 106
corresponding to data received from the device 102. For example, the
ad/content repository 108 can store a local business advertisement
corresponding to data entered into the user interface 104. The
advertisement or content from the advertisement can be stored as a
fragment of source code (e.g., Hypertext Markup Language (HTML),
JavaScript.TM., or other source code), an image, text, or other forms of
data. Though reference is made to advertisements, other forms of content
can be served.
[0021]The recommendation engine 110 is an optional component that can
recommend additional advertisement types based on information stored in
the historical data repository 112 or information provided by the crawler
114, to name two examples. In general, the recommendation engine 110 can
analyze various information sources and determine if one or more
additional advertisement types may be useful to the advertiser. For
example, if the advertiser provides text with an icon by way of device
102 for a text advertisement, the recommendation engine may additionally
recommend an image advertisement. As another example, if an advertiser
submits data for an image advertisement, the recommendation engine 110
can recommend other advertisements types (e.g., an audio advertisement, a
video advertisement, or both), based on information stored in the
historical data repository 112. The recommendation engine 110 is
described in more detail in reference to FIG. 2.
[0022]The historical data repository 112 contains information regarding
various advertisements. For example, the historical data repository 112
can include information regarding types of advertisements, the
information contained in each advertisement or types of advertisements,
the number of times an advertisement has been displayed, the number of
times an advertisement has been selected (e.g., clicked on), and other
information about advertisements. In some implementations, the stored
information can be used to reduce the amount of effort needed by the
advertisers to generate a particular advertisement. For example, the
historical data repository 112 can automatically provide contact
information for an advertiser based on stored information (e.g., for a
previously created advertisement for the same advertiser) in the
historical data repository 112. In this way, the advertiser is not
required to enter the information a second time. As another example, the
historical data repository 112 can provide information to the
recommendation engine 110 regarding the types of advertisements used in a
particular industry. The recommendation engine 110 can use this
information to provide recommendations regarding additional advertisement
types. For example, the historical data repository 112 can provide the
number of clicks generated by different types of advertisements, which
the recommendation engine 110 can use to generate recommendations for
additional advertising types to an advertiser submitting ad data using
system 100.
[0023]The crawler 114 can generate requests for webpage content
corresponding to a universal resource locator (URL), e.g., for an
advertiser's web page. In general, the crawler 114 can extract relevant
information from one or more web pages and automatically provide missing
data in ad creatives or populate some or all of one or more sample
advertisements. For example, if the advertiser only enters a URL into
user interface 104, the crawler can access the web page specified by the
URL and extract text, images, audio, video, or other relevant webpage
content. The crawler 114 can provide the extracted content to either the
advertising system 106 or the recommendation engine 110, or both.
[0024]FIG. 2 is an example block diagram of the recommendation engine 110
of FIG. 1. In general, the recommendation engine 110 can communicate with
the advertising system 106, the historical data repository 112, and the
crawler 114 through interfaces 202, 204, and 206, respectively. The
interfaces 202-206 can be programmatic interfaces, such as an application
program interface (API), for example. Typically, these interfaces 202-206
allow a data analyzer 208 to receive information, determine one or more
recommendations regarding additional potential advertisement types, and
transmit the one or more recommendations to the advertiser by way of the
advertising system 106. In some implementations, recommendations of
advertisement types are presented to an advertiser as one or more
proposed advertisement creatives for the recommended advertisement types.
The advertising system 106 can receive input from the advertiser
accepting or rejecting one or more of the advertisement creatives.
[0025]By way of a non-limiting example, when new data (e.g., form data)
corresponding to an advertisement are received from the advertising
system 106, the advertising system 106 can transmit the form data using
interface 202 to the data analyzer 208. The data analyzer 208 can
determine if there is enough information to generate a recommendation. In
general, the data analyzer 208 can process the form data received from
the advertising system 106 to determine possible additional advertisement
types. For example, if the data analyzer 208 receives a video clip for a
video advertisement, the data analyzer 208 can process the video's
metadata to determine if text-based or imaged-based advertisement data or
both are available and whether a text advertisement or an image
advertisement or both can be recommended.
[0026]In some scenarios, there may not be enough relevant information to
generate a recommendation. If a recommendation cannot be made from form
data alone, then the data analyzer 208 can retrieve additional
information from the historical data repository 112, the crawler 114, or
both which can be combined with the form data to generate a
recommendation. For example, if the data analyzer 208 determines that
additional related information is needed to generate a recommendation,
the data analyzer 208 can parse the received form data and transmit text
corresponding to a type of business, location, or other text to the
historical data repository 112 using interface 208. The data analyzer 208
can determine related information (e.g., related ad data) and retrieve
the related information from the historical data repository 112. The data
analyzer 208 can use the related information to generate a
recommendation. In some implementations, the data analyzer 208 may
receive information corresponding to advertisements used by other
advertisers of the same or similar business types and may recommend
additional advertisement types corresponding to the received information.
For example, if many restaurants include one or more image advertisements
displaying food offerings, the data analyzer 208 may recommend a similar
advertisement to a restaurant advertiser that submits data corresponding
to a text ad.
[0027]In some implementations, the data analyzer 208 may also determine
that additional information regarding an advertiser's webpage content may
be useful for generating a recommendation. For example, if the data
analyzer 208 determines that more information for a particular
advertisement type is needed and might be available from the webpage, the
data analyzer can transmit the URL to the crawler 114 using interface
206. In response, the crawler 114 can extract information from the
respective webpage and transmit webpage content to the data analyzer 208
using interface 206. The data analyzer 208 can use the extracted webpage
content to generate a recommendation. For example, if data for a text
advertisement are received, and an image is located on the corresponding
webpage, the data analyzer 208 may recommend an additional image
advertisement to the advertiser.
[0028]The data analyzer 208 may determine an order to retrieve information
from the advertising system 106, the historical data repository 112, and
the crawler 114 based on the type and the level of detail of the
information retrieved. For example, if the form data are sparse, or is
otherwise lacking in information, the data analyzer 208 can use the
available information to obtain additional information. For example, if
the available form data include a URL, the data analyzer 208 may
determine to first request webpage content from the crawler 114 and then
use the received content to generate a second request for historical data
from the historical data repository 112. In other words, the data
analyzer 208 can use the received webpage content to determine a
location, business type, or other information as the basis for the
request to the historical data repository 112. As another example, if the
available form data does not include a URL, but includes other
identifying information such as a business name, address, phone number,
or other relevant information, the data analyzer 208 may determine to
first request additional information (e.g., URL or other information)
from the historical data repository 112, using the identifying
information. In response, the data analyzer 208 can transmit the received
URL as a second request for webpage content from the crawler 114.
[0029]FIG. 3 is a flow chart of an example process 300 for recommending
multiple advertisement creatives. In general, the example process 300 can
be executed any number of times to provide multiple advertisement
recommendations. In step 302, input is received (e.g., at the advertising
system 106 from an advertiser) specifying a first advertisement having a
first media type. Media types for an advertisement include, for example,
text, image, audio, and video. Typically, the input is received from a
user interface. For example, form data can be received by advertising
system 106 by way of user interface 104.
[0030]In step 304, in response to receipt of the received input, an
advertising creative is produced of a first media type (e.g., the
advertising system 106 can produce and provide the ad creative to the
advertiser). In general, the first advertisement creative is generated
from the data received from the advertiser. In other words, the
advertising system 106 can use the form data to generate an advertisement
creative. For example, the advertising system 106 can use received data
to generate an advertisement creative for a local business advertisement,
a mobile advertisement, a text advertisement, an image advertisement, an
audio advertisement, a video advertisement, or other types of
advertisements. In some implementations, the advertisement creative is
generated from any or all of the data entered by the advertiser, and
information obtained from the historical data repository 112, the crawler
114, and combinations thereof.
[0031]In step 306, a recommendation is made for a second advertisement
creative of a second media type (e.g., the advertising system 106
recommends a second advertisement creative for a second media type to the
advertiser) that differs from the first media type. For example, the data
analyzer 208 can reference the historical data repository 112 to
determine ads of other advertisers in substantially similar industries
and recommend advertisement types that those businesses have submitted to
the advertising system 106. As another example, the data analyzer 208 can
determine from webpage content obtained from the crawler 114 if
additional advertisement materials are available on the webpage and
recommend additional advertisement types corresponding to the materials
located therein.
[0032]In some implementations, certain steps of the example process 300
can be executed more than once based on the amount of information
received in step 302. For example, if the data entered includes enough
information for recommendation engine 208 to generate multiple
advertisement recommendations each with a different advertisement type,
then step 306 can be iteratively executed until the recommendation engine
208 has determined that all potential advertisement types, based on the
available information, have been recommended. In some implementations,
the steps can be batch processed. For example, in step 302, more than one
input specifying more than one advertisement can be received
corresponding to more than one media type. In subsequent steps 304 and
306, the batched input can be used to iteratively execute the respective
steps. For example, step 304 can be iteratively executed to provide
advertisement creatives to the advertiser corresponding to each of the
batched inputs. As another example, in step 306, the data analyzer 208
can iteratively analyze each of the inputs before generating a
recommendation of an advertisement having a media type that is different
than the media type of the batched inputs. In some implementations, the
steps can be executed in parallel. For example, in step 304, while the
advertising system 106 provides the advertiser with the first
advertisement creative, step 306 can be executed in parallel by the
recommendation engine 110.
[0033]FIGS. 4 and 5 are screen s
hots of example user interfaces 400 and
500, respectively. The user interfaces 400 and 500 can be used to enter
ad data, preview sample advertisements, or both. In general, the user
interfaces 400 and 500 can be generated in a web browser (e.g., using
HTML) or in an application running on device 102, to name two examples.
The example user interfaces 400 and 500 illustrate the entry of data
related to text ads; however, other substantially similar user interfaces
can be used to enter data corresponding to audio advertisements, video
advertisements, image advertisements, and other advertisements.
[0034]In reference to FIG. 4, the user interface 400 includes a form 402
(e.g., an electronic form). The form 402 can include an advertisement
creative, e.g., for a text advertisement. In some implementations, the
form 402 is a universal form for any or all advertisement types. This
universal form can be presented to a user, for example, if the user has
not specified an advertising type. The form includes various user
interface components that can be used to display a preview advertisement
and enter data corresponding to an advertisement. For example, preview
area 404 displays a sample advertisement based on information entered
into data entry components 406. Typically, the preview area 404 is
updated in real-time as data in components 406 are added or amended. In
addition, user interface form 402 includes check boxes 408 and 412 and
buttons 410 and 414 that can display expandable forms (e.g., the
expandable form 502 described in reference to FIG. 5) when selected. The
check boxes 408 and 412 specify the additional ways in which data entered
in the form 402 can be presented as an advertisement. For example, check
box 408 can be used to specify if an advertisement using the entered data
should be shown on maps (e.g., shown when a user searches an interactive
map, such as Google Maps.TM.). As another example, check box 412 can be
used to specify if an advertisement using the entered data should be
shown on mobile devices. In some implementations, these check boxes
modify the expense associated with publishing the advertisement. If the
user selects the save ad button 416, the device 102 transmits the form
data to the advertising system 106, which in turn can use the received
form data to generate recommendations, as described in reference to FIG.
3.
[0035]In reference to FIG. 5, the user interface 500 can be displayed by
selecting the check box 408 for a map advertisement. For example, the
form 402 expands to display a user interface form 502. The form 502 can
include a second advertisement creative, e.g., for a map advertisement.
The user interface form 502 can include a preview area 504 that displays
a sample of how the map advertisement may appear when displayed with a
map. For example, preview area 504 can display a map advertisement that
may appear as part of a list along with other map advertisements
displayed next to a map. In addition, the preview area 506 can display
another sample map advertisement that corresponds to the previously
entered information. For example, the preview area 506 can display a map
advertisement that may appear as an overlay over a displayed map, e.g.,
when a user selects the associated map advertisement from the list of map
advertisements displayed next to the map. Moreover, the user interface
form 502 has additional user interface components 508 that can be used to
modify data corresponding to the map advertisement. In general, some or
all of the displayed data in components 508 may be derived from
information entered in form 402. For example, component 508a includes
data that was derived from a similar data entry field (e.g., data entry
field 406a) in data entry components 406. In some implementations, the
component 508a is disabled (e.g., as indicated by shading) if the
included data is not allowed to differ from the corresponding data in
data entry components 406. The advertiser can modify component 508a by
modifying the contents of component 406a. As another example, the
optional components displayed with components 508 can be used to modify
information that was determined by using information from the historical
data repository 112, retrieved by the crawler 114, or determined in other
ways.
[0036]FIG. 6 is a flow chart of an example process 600 for generating two
or more advertisement creatives. In general, the example process 600 can
be executed any number of times to generate any number of advertisement
creatives. Typically, the example process 600 is implemented in an
advertising system, e.g., advertising system 106 of FIG. 1.
[0037]In step 602, an electronic form is presented that can be used to
enter data, e.g., content for an advertisement, data specifying a layout
for an advertisement, or both. For example, the advertising system 106
can present form 402 to a user (e.g., an advertiser) on device 102 in
user interface 104.
[0038]In step 604, a selection and data entered in the electronic form is
received. The selection is for two or more different advertisement types.
The entered data is of one or more data types, including text, image,
audio, or video.
[0039]In step 606, two or more advertisement creatives are generated using
the received data. The two or more advertisement creatives are for the
selected two or more different advertisement types. For example, each
advertisement creative can be for one of a local business advertisement
(e.g., a map advertisement), a mobile advertisement, a text
advertisement, an image advertisement, an audio advertisement, or a video
advertisement. The advertising system 106 can transmit the received data
to the recommendation engine 110. The recommendation engine 110 can
determine additional advertisement types and provide recommendations to
the advertising system 106. In response, the advertising system 106 can
generate additional advertisement creatives from the received
recommendations.
[0040]In step 608, the two or more advertisement creatives are presented,
e.g., to the user. For example, the advertising system 106 can transmit
the advertisement creatives to device 102 which displays the
advertisement creatives in user interface 104. In response, the user can
select any or all of the advertisement creatives. In some
implementations, the user can modify any or all of the advertisement
creatives. In some implementations, an advertisement corresponding to
each of the two or more advertisement creatives is automatically
generated, and the user is allowed to opt-out of (e.g., reject) any or
all of the generated advertisements.
[0041]In some implementations, only one advertisement creative is
generated using the entered data, where the one advertisement creative is
for two or more different advertisement types. For example, the one
advertisement creative can be a universal advertisement creative that
includes content for the two or more different advertisement types. As an
example, the user interface 500 of FIG. 5 can include a universal
advertisement creative. A universal advertisement creative can include
sample advertisements for multiple advertisement types.
[0042]In some implementations, a user type of the user entering the data
is determined. For example, the advertising system 106 can determine that
the user is a real estate agent or a restaurant owner. The two or more
advertisement creatives can be generated based on the entered data and
additional data, where the additional data is selected based on the user
type. For example, the additional data can be associated with one or more
other users that are of the same user type or a similar user type as the
user. In one example, if the user entering the data is a real estate
agent, additional data used for generating the advertisement creatives
might include a graphic of a "sold" sign that other real estate agents
have used in their advertisements. The additional data associated with
the other users can also include, for example, advertisement statistics,
advertisement keywords, advertisement types, and advertisement layouts.
[0043]FIG. 7 is a block diagram of computing devices 700, 750 that may be
used to implement the systems and methods described in this document, as
either a client or as a server or plurality of servers. Computing device
700 is intended to represent various forms of digital computers, such as
laptops, desktops, workstations, personal digital assistants, servers,
blade servers, mainframes, and other appropriate computers. Computing
device 750 is intended to represent various forms of mobile devices, such
as personal digital assistants, cellular tele
phones, smart
phones, and
other similar computing devices. The components shown here, their
connections and relationships, and their functions, are meant to be
exemplary only, and are not meant to limit implementations of the subject
matter described and/or claimed in this document.
[0044]Computing device 700 includes a processor 702, memory 704, a storage
device 706, a high-speed interface 708 connecting to memory 704 and
high-speed expansion ports 710, and a low speed interface 712 connecting
to low speed bus 714 and storage device 706. Each of the components 702,
704, 706, 708, 710, and 712, are interconnected using various busses, and
may be mounted on a common motherboard or in other manners as
appropriate. The processor 702 can process instructions for execution
within the computing device 700, including instructions stored in the
memory 704 or on the storage device 706 to display graphical information
for a GUI on an external input/output device, such as display 716 coupled
to high speed interface 708. In other implementations, multiple
processors and/or multiple buses may be used, as appropriate, along with
multiple memories and types of memory. Also, multiple computing devices
700 may be connected, with each device providing portions of the
necessary operations (e.g., as a server bank, a group of blade servers,
or a multi-processor system).
[0045]The memory 704 stores information within the computing device 700.
In one implementation, the memory 704 is a computer-readable medium. In
one implementation, the memory 704 is a volatile memory unit or units. In
another implementation, the memory 704 is a non-volatile memory unit or
units.
[0046]The storage device 706 is capable of providing mass storage for the
computing device 700. In one implementation, the storage device 706 is a
computer-readable medium. In various different implementations, the
storage device 706 may be a floppy disk device, a
hard disk device, an
optical disk device, or a tape device, a flash memory or other similar
solid state memory device, or an array of devices, including devices in a
storage area network or other configurations. In one implementation, a
computer program product is tangibly embodied in an information carrier.
The computer program product contains instructions that, when executed,
perform one or more methods, such as those described above. The
information carrier is a computer- or machine-readable medium, such as
the memory 704, the storage device 706, memory on processor 702, or a
propagated signal.
[0047]The high speed controller 708 manages bandwidth-intensive operations
for the computing device 700, while the low speed controller 712 manages
lower bandwidth-intensive operations. Such allocation of duties is
exemplary only. In one implementation, the high-speed controller 708 is
coupled to memory 704, display 716 (e.g., through a graphics processor or
accelerator), and to high-speed expansion ports 710, which may accept
various expansion cards (not shown). In the implementation, low-speed
controller 712 is coupled to storage device 706 and low-speed expansion
port 714. The low-speed expansion port, which may include various
communication ports (e.g., USB, Bluetooth, Ethernet, wireless Ethernet)
may be coupled to one or more input/output devices, such as a keyboard, a
pointing device, a scanner, or a networking device such as a switch or
router, e.g., through a network adapter.
[0048]The computing device 700 may be implemented in a number of different
forms, as shown in the figure. For example, it may be implemented as a
standard server 720, or multiple times in a group of such servers. It may
also be implemented as part of a rack server system 724. In addition, it
may be implemented in a personal computer such as a laptop computer 722.
Alternatively, components from computing device 700 may be combined with
other components in a mobile device (not shown), such as device 750. Each
of such devices may contain one or more of computing device 700, 750, and
an entire system may be made up of multiple computing devices 700, 750
communicating with each other.
[0049]Computing device 750 includes a processor 752, memory 764, an
input/output device such as a display 754, a communication interface 766,
and a transceiver 768, among other components. The device 750 may also be
provided with a storage device, such as a microdrive or other device, to
provide additional storage. Each of the components 750, 752, 764, 754,
766, and 768, are interconnected using various buses, and several of the
components may be mounted on a common motherboard or in other manners as
appropriate.
[0050]The processor 752 can process instructions for execution within the
computing device 750, including instructions stored in the memory 764.
The processor may also include separate analog and digital processors.
The processor may provide, for example, for coordination of the other
components of the device 750, such as control of user interfaces,
applications run by device 750, and wireless communication by device 750.
[0051]Processor 752 may communicate with a user through control interface
758 and display interface 756 coupled to a display 754. The display 754
may be, for example, a TFT LCD display or an OLED display, or other
appropriate display technology. The display interface 756 may comprise
appropriate circuitry for driving the display 754 to present graphical
and other information to a user. The control interface 758 may receive
commands from a user and convert them for submission to the processor
752. In addition, an external interface 762 may be provide in
communication with processor 752, so as to enable near area communication
of device 750 with other devices. External interface 762 may provide, for
example, for wired communication (e.g., via a docking procedure) or for
wireless communication (e.g., via Bluetooth or other such technologies).
[0052]The memory 764 stores information within the computing device 750.
In one implementation, the memory 764 is a computer-readable medium. In
one implementation, the memory 764 is a volatile memory unit or units. In
another implementation, the memory 764 is a non-volatile memory unit or
units. Expansion memory 774 may also be provided and connected to device
750 through expansion interface 772, which may include, for example, a
SIMM card interface. Such expansion memory 774 may provide extra storage
space for device 750, or may also store applications or other information
for device 750. Specifically, expansion memory 774 may include
instructions to carry out or supplement the processes described above,
and may include secure information also. Thus, for example, expansion
memory 774 may be provide as a security module for device 750, and may be
programmed with instructions that permit secure use of device 750. In
addition, secure applications may be provided via the SIMM cards, along
with additional information, such as placing identifying information on
the SIMM card in a non-hackable manner.
[0053]The memory may include for example, flash memory and/or MRAM memory,
as discussed below. In one implementation, a computer program product is
tangibly embodied in an information carrier. The computer program product
contains instructions that, when executed, perform one or more methods,
such as those described above. The information carrier is a computer- or
machine-readable medium, such as the memory 764, expansion memory 774,
memory on processor 752, or a propagated signal.
[0054]Device 750 may communicate wirelessly through communication
interface 766, which may include digital signal processing circuitry
where necessary. Communication interface 766 may provide for
communications under various modes or protocols, such as GSM voice calls,
SMS, EMS, or MMS messaging, CDMA, TDMA, PDC, WCDMA, CDMA2000, or GPRS,
among others. Such communication may occur, for example, through
radio-frequency transceiver 768. In addition, short-range communication
may occur, such as using a Bluetooth, WiFi, or other such transceiver
(not shown). In addition, GPS receiver module 770 may provide additional
wireless data to device 750, which may be used as appropriate by
applications running on device 750.
[0055]Device 750 may also communication audibly using audio codec 760,
which may receive spoken information from a user and convert it to usable
digital information. Audio codex 760 may likewise generate audible sound
for a user, such as through a speaker, e.g., in a handset of device 750.
Such sound may include sound from voice telephone calls, may include
recorded sound (e.g., voice messages, music files, etc.), and may also
include sound generated by applications operating on device 750.
[0056]The computing device 750 may be implemented in a number of different
forms, as shown in the figure. For example, it may be implemented as a
cellular telephone 780. It may also be implemented as part of a
smartphone 782, personal digital assistant, or other similar mobile
device.
[0057]The features described can be implemented in digital electronic
circuitry, or in computer hardware, firmware, software, or in
combinations of them. The features can be implemented in a computer
program product tangibly embodied in an information carrier, e.g., in a
machine-readable storage device or in a propagated signal, for execution
by a programmable processor; and method steps can be performed by a
programmable processor executing a program of instructions to perform
functions of the described implementations by operating on input data and
generating output.
[0058]The described features can be implemented advantageously in one or
more computer programs that are executable on a programmable system
including at least one programmable processor coupled to receive data and
instructions from, and to transmit data and instructions to, a data
storage system, at least one input device, and at least one output
device. A computer program is a set of instructions that can be used,
directly or indirectly, in a computer to perform a certain activity or
bring about a certain result. A computer program can be written in any
form of programming language (e.g., Objective-C, Java), including
compiled or interpreted languages, and it can be deployed in any form,
including as a stand-alone program or as a module, component, subroutine,
or other unit suitable for use in a computing environment.
[0059]Suitable processors for the execution of a program of instructions
include, by way of example, both general and special purpose
microprocessors, and the sole processor or one of multiple processors or
cores, of any kind of computer. Generally, a processor will receive
instructions and data from a read-only memory or a random access memory
or both. The essential elements of a computer are a processor for
executing instructions and one or more memories for storing instructions
and data. Generally, a computer will also include, or be operatively
coupled to communicate with, one or more mass storage devices for storing
data files; such devices include magnetic disks, such as internal hard
disks and removable disks; magneto-optical disks; and optical disks.
Storage devices suitable for tangibly embodying computer program
instructions and data include all forms of non-volatile memory, including
by way of example semiconductor memory devices, such as EPROM, EEPROM,
and flash memory devices; magnetic disks such as internal
hard disks and
removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. The
processor and the memory can be supplemented by, or incorporated in,
ASICs (application-specific integrated circuits).
[0060]To provide for interaction with a user, the features can be
implemented on a computer having a display device such as a CRT (cathode
ray tube) or LCD (liquid crystal display) monitor for displaying
information to the user and a keyboard and a pointing device such as a
mouse or a trackball by which the user can provide input to the computer.
[0061]The features can be implemented in a computer system that includes a
back-end component, such as a data server, or that includes a middleware
component, such as an application server or an Internet server, or that
includes a front-end component, such as a client computer having a
graphical user interface or an Internet browser, or any combination of
them. The components of the system can be connected by any form or medium
of digital data communication such as a communication network. Examples
of communication networks include, e.g., a LAN, a WAN, and the computers
and networks forming the Internet.
[0062]The computer system can include clients and servers. A client and
server are generally remote from each other and typically interact
through a network. The relationship of client and server arises by virtue
of computer programs running on the respective computers and having a
client-server relationship to each other.
[0063]A number of implementations have been described. Nevertheless, it
will be understood that various modifications may be made. For example,
elements of one or more implementations may be combined, deleted,
modified, or supplemented to form further implementations. As yet another
example, the logic flows depicted in the figures do not require the
particular order shown, or sequential order, to achieve desirable
results. In addition, other steps may be provided, or steps may be
eliminated, from the described flows, and other components may be added
to, or removed from, the described systems. Accordingly, other
implementations are within the scope of the following claims.
* * * * *