The presently disclosed embodiments are directed toward methods and systems for generating a marketing campaign. More particularly, the teachings disclosed herein are applicable to methods and apparatuses for capturing a user's intent when generating a marketing campaign. It will be appreciated that the described systems and methods may find application in other fields.
Data suggests that somewhere between 30-40% of marketing campaigns are personalized, most of which only vary content based on the recipient's name. First-name and last-name are simple textual data values that can be leveraged in a limited capacity on a personalized document (e.g., embedded in textual message or in an image). As CRM (customer relations management) systems become more sophisticated, much more data becomes available in which campaigns can be personalized for customers or prospects. The data (e.g. first-name, last-name, age, gender) and logic (a.k.a “business rules”—e.g. “if gender is male and age is less than 30, then special offer=iPhone otherwise special offer=Blackberry) aspects of a variable data publishing (VDP) plan creation are difficult and time consuming. Marketing Service Providers (MSPs) invest large amounts of time understanding the desires of the campaign customer, testing the specific campaign requirements, and creating the logic necessary to fulfill the campaign intent.
There is a need in the art for systems and methods that facilitate identifying the intent of a user designing a marketing campaign while overcoming the aforementioned deficiencies.
In one aspect, a computer-implemented method for personalizing a variable data publishing (VDP) marketing campaign pattern comprises receiving user input related to an intended campaign purpose from a non-expert user, automatically selecting a VDP pattern from a plurality of a pre-generated VDP pattern as a function of the intended campaign purpose, retrieving product information to be presented on campaign documents for distribution to a plurality of recipients, and receiving recipient information to appear on the campaign documents. The method further comprises prompting the user, as a function of the intended campaign purpose, to specify personalization parameters for personalizing the campaign documents, receiving user-specified personalization parameter information, and outputting a personalized VDP pattern instance for use in generating the campaign documents.
In another aspect, a system that facilitates personalizing a variable data publishing (VDP) marketing campaign pattern comprises a graphical user interface (GUI) via which a user interacts with a campaign creation application that is persistently stored on a computer-readable medium, and a processor that executes the campaign creation application and is configured to receive user input related to an intended campaign purpose from a non-expert user and automatically select a VDP pattern from a plurality of a pre-generated VDP patterns as a function of the intended campaign purpose. The processor is further configured to retrieve product information to be presented on campaign documents for distribution to a plurality of recipients, the product information being retrieved from a product data source provided by the user, and to receive recipient information to appear on the campaign documents, the recipient information being provided in a recipient data source provided by the user. Additionally, the processor is configured to prompt the user, as a function of the intended campaign purpose, to specify personalization parameters for personalizing the campaign documents, to receive user-specified personalization parameter information, and to output a personalized VDP pattern instance for use in generating the campaign documents.
In yet another aspect, a computer-readable medium having persistently stored thereon computer-executable instructions for personalizing a variable data publishing (VDP) marketing campaign pattern comprises instructions for receiving user input related to an intended campaign purpose from a non-expert user, and automatically selecting a VDP pattern from a plurality of a pre-generated VDP patterns as a function of the intended campaign purpose. The computer-readable medium further comprises instructions for retrieving product information to be presented on campaign documents for distribution to a plurality of recipients, receiving recipient information to appear on the campaign documents, prompting the user, as a function of the intended campaign purpose, to specify personalization parameters for personalizing the campaign documents, receiving user-specified personalization parameter information, and outputting a personalized VDP pattern instance for use in generating the campaign documents.
The file of this patent contains at least one drawing executed in color. Copies of this patent with color drawing(s) will be provided by the U.S. Patent and Trademark Office upon request and payment of the necessary fee.
The above-described problem is solved by providing a knowledge-assisted method in which a VDP (variable data printing/publishing) non-expert can express his or her desired VDP logic for a VDP campaign. The technique is supported by a knowledge-base (e.g., a database+entity logic) of common types of VDP campaigns. Through the semantic expression of VDP elements and logic, the MSP can more easily and accurately convey the desired campaign intent to the team members collaborating on the campaign. Additionally, the MSP can more accurately align the execution of the campaign as expected by the client, as the patterns provide a more natural nomenclature for expressing campaign intent. Expression of campaign intent can automatically be reified into an executable campaign plan and corresponding data schema.
Highly personalized marketing can be significantly more successful by making the most effective use of customer data for creating an exceptional personalized experience, whether acquiring new customers or retaining and up-selling existing customers. The potential complexity of personalization grows with the amount of data resources accessible by the MSP. Thereby the logic involved in driving a personalized campaign can become very complicated. Larger available data sources cause complexity to grow in two directions: first, the implicit knowledge that can be derived from the explicit data in the data source; and second, the number and quality of decisions needed to be made based on the implicit and explicit data in order to create the highly personalized document.
As CRM systems become more sophisticated, they will not only incorporate more customer static and historical data, but will also be able to learn much more about a customer or prospect via web queries, real-time data, and interaction with online social media, as well as targeting via psychographics. As more customer data, both explicit and implicit, becomes available, there will emerge a need to express the logic of a marketing campaign using more robust automated knowledge techniques. As a result, many campaigns may be prone to either ignoring marketing opportunities hidden in the data due to the complexity of mining the data (resulting in less-effective campaigns) or requiring highly skilled database programming experts (resulting in high campaign costs). The subject innovation provides systems and methods that facilitate meeting the above-described needs in order to take advantage of more complex data and to improve marketing campaign personalization.
At 18, customer information to appear on the campaign documents is received. For instance, the designer can download or import customer data from a source, such as a spreadsheet or the like. At 20, campaign information to appear in the document(s) is received. Campaign information may include, for instance, a coupon or reward, a sale data and location, or any other information the designer wishes to disseminate to one or more customers. At 22, the user is prompted to specify personalization parameters for the campaign. User prompts are a function of the selected VDP pattern, which in turn has been selected as a function of the user's specified campaign intent. At 24, user-specified campaign personalization is performed. For instance, a user may wish to personalize the VDP pattern to include variable data such as name, nearest store to the named customer, and coupon size (e.g., which may be a function of an amount the named customer spent at the store in a previous time period or the like). At 26, the personalized VDP pattern and campaign content are output (e.g., on a graphical user interface, via a print-out, via email, or some other suitable means) for review and verification and for generating the campaign documents (e.g., personalized emails, post cards, mailers, web-based advertisements, etc.). Examples of the personalization of the campaign as developed through user interaction with the herein-described campaign creation wizard application and through execution of the method of
It will be appreciated that the method of
The computer 30 can be employed as one possible hardware configuration to support the systems and methods described herein. It is to be appreciated that although a standalone architecture is illustrated, that any suitable computing environment can be employed in accordance with the present embodiments. For example, computing architectures including, but not limited to, stand alone, multiprocessor, distributed, client/server, minicomputer, mainframe, supercomputer, digital and analog can be employed in accordance with the present embodiment.
The computer 30 can include a processing unit (see, e.g.,
The computer 30 typically includes at least some form of computer readable media. Computer readable media can be any available media that can be accessed by the computer. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of any of he above can also be included within the scope of computer readable media.
A user may enter commands and information into the computer through an input device (not shown) such as a keyboard, a pointing device, such as a mouse, stylus, voice input, or graphical tablet. The computer 30 can operate in a networked environment using logical and/or physical connections to one or more remote computers, such as a remote computer(s). The logical connections depicted include a local area network (LAN) and a wide area network (WAN). Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets and the Internet.
The VDP pattern 40 also includes an originator element 46 that originates the offer or marketing campaign, as well as a message element 48 that includes a message for the recipient. The recipient may be a customer of the campaign designer (e.g., a merchant), and therefore the pattern 40 includes a customer element 50. Each customer has a status level 52 and a purchase history 54, which can be analyzed to generate a status-based discount 56 and/or a frequent-buy-based discount 58. Information from the status-based discount element 56 and/or the frequent-buyer-based discount element 58 is provided to a discount element 60, which in turn provides information to a reward element 62 that generates a reward for inclusion in the product offer 44. An age-based discount element 64 can provide age-based discount information to the discount element 60. A customer's age 66 is stored or determined by an age element 66, such as by analyzing or storing a vcard 68 or the like.
The VDP pattern 40 also includes elements associated with an agent who can help the campaign designer design the marketing campaign. For instance, an agent element 70 comprises information regarding the identity of the agent, which may be collected from a group element 72 that identifies multiple agents, from a person element 74 that identifies a single agent, and/or from an organization element 76 that identifies an organization that acts as an agent. A business element 78 includes information related to the business of the organization acting as an agent. The agent element has is populated with a desired level of information describing the identity of the agent, and is associated with a role element 80 that includes information related to one of more functions or services provided by the agent.
The message element 48 can include one or more message types such as one or more restrictions on the product offer, which are stored in a restrictions element 82. The message may also include a marketing message that is stored in a marketing message element 84. The marketing message may include marketing imagery obtained from a marketing imagery element 86 that stores images, as well as testimonial information (i.e., testimonials for satisfied customers or the like) that are stored in a testimonial element 88. Additionally, the message 48 can include one or more calls to action that are stored in a call to action element 90. In one example, the call to action includes a request for additional information 92, in which case a contact element 94 is executed to contact either the recipient of the product offer or an agent (e.g., via the role element 80) who then contacts the recipient. In another example, the call to action includes an offer deadline, e.g., stored in a “purchase product before specific date” element 96. The deadline information for a given product offer is stored in an expiration date element 98.
The product offer 44 may also include product information, which is stored in a product element 100, and which may include, without limitation, one or more of product price, an image of the product, UPC information for the product, etc. A good element 102 includes product information for one or more goods, such as dimension and the like, while a service element 104 includes information related to a service that is to be offered. A warranty element 106 includes information related to product warranty, which can be included in the product offer 44.
The memory persistently stores data and computer-executable instructions for performing the described functions, methods, techniques, and the like. For instance, the memory 208 stores a campaign creation wizard module that is executed by the processor to receive information from the user, analyze received information, and output the business logic for a marketing campaign for to the user. In this manner, the wizard module 208 walks the non-expert user through the campaign design process in order to generate the business logic for the marketing campaign that targets the user's customers with personalized campaign documents 209 (e.g., post cards, mailers, emails, web-based ads, or any other suitable campaign media.
As stated above, the system 200 comprises the processor 202 that executes, and the memory 204 that stores one or more computer-executable modules (e.g., programs, computer-executable instructions, etc.) for performing the various functions, methods, procedures, etc., described herein. Additionally, “module,” as used herein, denotes a set of computer-executable instructions, software code, program, routine, or other computer-executable means for performing the described function, or the like, as will be understood by those of skill in the art. Additionally, or alternatively, one or more of the functions described with regard to the modules herein may be performed manually.
The memory may be a computer-readable medium on which a control program is stored, such as a disk, hard drive, or the like. Common forms of non-transitory computer-readable media include, for example, floppy disks, flexible disks, hard disks, magnetic tape, or any other magnetic storage medium, CD-ROM, DVD, or any other optical medium, RAM, ROM, PROM, EPROM, FLASH-EPROM, variants thereof, other memory chip or cartridge, or any other tangible medium from which the processor can read and execute. In this context, the systems described herein may be implemented on or as one or more general purpose computers, special purpose computer(s), a programmed microprocessor or microcontroller and peripheral integrated circuit elements, an ASIC or other integrated circuit, a digital signal processor, a hardwired electronic or logic circuit such as a discrete element circuit, a programmable logic device such as a PLD, PLA, FPGA, Graphical card CPU (GPU), or PAL, or the like.
A knowledge-base 210 (i.e., a computer-readable medium) of VDP patterns 212 is pre-constructed, e.g., by a knowledge engineer, and provided to such a system. The VDP patterns are represented using the vocabulary of the non-expert. Additionally, given a starting knowledge-base, the VDP patterns are also amenable to extension by the campaign designer (non-expert), graphic artist, VDP logic developer, or other campaign developer.
The systems and methods described herein are supported by the wizard module 208, which can accept the campaign designer's desired campaign intent and automatically express and store the campaign intent as one or more instances of VDP patterns 212 and VDP elements 214 (see, e.g.,
The campaign designer first expresses (e.g., via the GUI 206) the type of VDP campaign they would like to create. This can occur in various ways. For instance, one approach is that all VDP patterns 212 stored in the knowledge-base 210 are presented to the campaign designer for them to choose from. To help select and instantiate a VDP pattern, the campaign designer may be presented with one or more examples in the form of a natural language (NL) sentence. The scope of the natural language used in this embodiment corresponds to the vocabulary of the VDP patterns, which represents the knowledge of the non-expert. Sentence examples may include, without limitation:
Each VDP pattern 212 is supported by a natural language description that consists of all high-level VDP elements 214 associated with that VDP pattern. The associated VDP elements are “parameterizable” pieces of the NL description. Some examples include:
Product Offer:
Announcement:
Event Invitation:
Each VDP element parameter (shown above in brackets < >) is provided as a semantic placeholder for the user to define VDP content. The campaign designer selects the VDP element from the sentence and may then enter any number of options to use as VDP content. For example, a pet store campaign designer selects the <Product> concept and inputs to the system the following product descriptions:
Each product description is automatically created as a product instance in the knowledge-base of VDP patterns. In cases where multiple values are entered, it is inferred that the VDP element “Product” is variable content, and that a rule is desirable to determine which specific product description to use for each recipient. The campaign designer is then requested to enter the semantics of the data source that will determine the variable content of product for a particular recipient. To further the present example, the campaign designer specifies “pet preference” and assigns data values “cat,” “dog,” “hamster,” and “fish,” respectively. The “Product” VDP element in this case is denoted as “variable” in the knowledge base and each instance of the Product is tagged with the data value that is used to select it as variable content.
The data value may be implicit or explicit, and may come from any number of sources. Examples of data value extraction sources include, without limitation: the value may come from a database expert who mines customer purchase history to determine “pet preference’; from a specific pre-existing data field available in a data source; or from automated techniques for determining available data implicit in a given data source.
Continuing the example, the campaign designer selects the <Reward> concept and is offered choices for the type of Reward such as a Frequent-Buyer-Based Discount. The designer may then choose to vary such a discount based on the amount of purchases (e.g., number of purchases, total amount spent on all purchases, etc.) for the past predetermined period (e.g., 12-months). Variable rewards are specified of e.g. “30%”, “20%”, and “10%” and are offered to customers who have specified “spend level” of values e.g. “over $1000”, “between $500 and $1000”, and “less than $500” respectively. The Reward VDP element of Product Offer in the knowledge base is then denoted as “variable” and instantiated with these values, as was done for the Product VDP element above.
In a related example, the campaign designer wants the Call To Action element to be the same for all customers. The designer selects the <Call To Action> concept and enters a single value of “Redeem this offer at our store before June 30th” The Call To Action VDP element in the knowledge base is set to “static” and instantiated with a single value. It will be appreciated that any VDP Pattern can be extended to include additional Promotional Messages, whether they are text or images. One option that the campaign designer may select is to include variable or static Promotional Messages in the VDP document. Continuing with the above pet store example, the campaign designer may provide various sets of graphic assets that they will use to provide an attractive marketing “feel” or aesthetic quality to the campaign document.
In some instances, the designer may desire to reuse the “pet preference” semantic data in which he desires to use imagery from a “cat” graphic asset folder or database when the pet preference is “cat”, a “dog” graphic asset folder when the pet preference is “dog,” etc. The graphic assets can also be pulled from a content management system that is connected to the wizard application. The designer can also specify variable text messages that include testimonials from cat-owners for the “cat” pet preference, testimonials from dog-owners for the “dog” pet preference, etc.
Once the knowledge base is populated with all desired instances that represent the campaign for a particular VDP pattern, the full instantiation of the campaign is then transformed into a partially-populated or, in some cases, a fully-executable, VDP plan. The transformation automatically creates all the content objects, the logic for determining the variable content, and the data schema needed to support the campaign plan, as well as stores the graphic asset files so they are accessible by the VDP environment. In a specific example in which Xerox's XMPie™ suite is employed, this feature creates an XMPie plan file for the uPlan™ logic definition application.
The VDP elements in the knowledge base may also contain various attributes 216 specific to a given element. For instance, a Product element may have single- and multi-valued attributes such as “price,” “image,” universal product code or “UPC,” etc. In one embodiment, a means for the campaign designer to specify values for the attributes of a VDP element is provided. The attribute values for the element are then made available as content when the corresponding VDP element is selected for a particular dynamic document. In one embodiment, the campaign designer downloads or otherwise generates a product data source 218 (e.g., a list, spreadsheet, or other data source comprising information relating to the products to be included on the campaign documents).
For instance, as the campaign designer is inputting the <Products> for the pet store campaign, he can specify a price and an image of each Product that is to appear on the marketing documents. In one example, upon entering the Product description, the campaign designer indicates a price and image that the product (e.g., a hamster habitat) will have, as associated attribute values. When providing associated values, known values are encoded directly into the knowledge base associated with the <Product> instance. Additionally or alternatively, an attribute value lookup is performed to identify the associated attribute value(s). In another embodiment, the associated value is initially left blank for later value assignment. A VDP element's attributes list may be obtained through various means with the GUI. Entries are made in the knowledge base that capture the campaign intent that the selected attributes represent variable content, as well as whether the selected attributes are graphics or text.
Continuing with the example, the campaign designer specifies known <Product> attribute values using the methods described herein. Table 1 shows examples of product attribute values 216, such as can be extracted from the product data source 218 by the processor 202 when executing the wizard 208, and/or entered directly by the campaign designer.
The wizard 208 employs campaign intent that may include references to images. It will be appreciated by those of skill that any suitable image type or format may be employed by the subject systems and methods. While Table 1 illustrates four image file formats (jpeg, TIFF, GIF, and PNG), it will be understood that the herein-described systems are not limited thereto.
If the campaign designer desires the recipient's first name to appear on the dynamic document, then the designer indicates that they want the ‘firstName’ of the recipient to be variable and designate the assignment be to set up by a data specialist. The data specialist and/or logic developer then use this designer-specified campaign intent knowledge to modify the automatically created plan file to extract the appropriate value for the recipient's first name out of a recipient data source 220, which may be provided by the designer (e.g., a spreadsheet comprising a list of the designer's customers or a subset thereof, a database, a comma-delimited list of customers, etc.).
The knowledge base 210 also includes graphic assets 222 (e.g., images, icons, logos, etc.), that the user can select to personalize the campaign documents. Additionally, the expert suggestions are stored in the knowledge base and can be retrieved and presented to the user when the wizard determines that the user's VDP pattern can benefit from automatic suggestions of meaningful actions for the user to take. Additionally, the knowledge base 210 includes a data source auto-categorization module 226 that automatically determines the semantic categories of the data values (e.g., first name, last name, zip code, spend level, pet type, etc.) in each column or row of a downloaded data source. An example of a data source auto-categorization technique that may be employed in conjunction with various aspects described herein is found in U.S. patent application Ser. No. 12/857,997, filed on Aug. 17, 2010 and entitled “Semantic Classification of Variable Data Campaign Information,” which is hereby incorporated by reference herein in its entirety. An automated campaign validation module 228 continuously or periodically checks the campaign pattern during the design states for errors. If an error is detected, the wizard application prompts the user to correct the errors and walk the user through the corrective actions.
With continued reference to the preceding Figures,
The ad 300 includes several variable data fields that have been populated using the described wizard application. For instance, a recipient's name 302 is personalized, and a personalized discount 304 is also presented in the advertisement. In the illustrated example, the first recipient has a first name of “Michael,” has a pet fish, and has a high spend level relative to other recipients in the data source. Since it is known from data provided by the marketing campaign designer (i.e., the merchant or proprietor of the store, or the like) that the particular recipient keeps pet fish, a pet image 306 of goldfish is included in the personalized advertisement. Additionally, since the recipient is known to have a pet fish, an aquarium is selected as a potential product for sale, and an image 308 of the product is presented on the ad 300. The product name 310 is also presented, along with the product price 312 (the discounted price and the original price, which is also variable as a function of the given recipient's spend level, customer status level, etc.)
In one example, the product data source includes information related to product identity and price, as shown in Table 3.
The system thus applies the discount (i.e., 30% in the example of
The exemplary embodiments have been described with reference to the preferred embodiments. Obviously, modifications and alterations will occur to others upon reading and understanding the preceding detailed description. It is intended that the exemplary embodiments be construed as including all such modifications and alterations insofar as they come within the scope of the appended claims or the equivalents thereof.