[IMP] marketing automation: audience targeting

closes odoo/documentation#8475

X-original-commit: 31bfb0c693
Signed-off-by: Samuel Lieber (sali) <sali@odoo.com>
Co-authored-by: ksc-odoo <73958186+ksc-odoo@users.noreply.github.com>
This commit is contained in:
Sam Lieber (sali) 2024-03-05 12:59:27 -05:00
parent 45efd8c90d
commit b298744499
8 changed files with 70 additions and 109 deletions

View File

@ -20,7 +20,7 @@ with a :ref:`campaign template <marketing-automation/campaign-templates>`.
.. cards::
.. card:: Target an audience
.. card:: Audience targeting
:target: marketing_automation/target_audience
Configure the target audience for a campaign.
@ -148,7 +148,7 @@ The number of participants engaged in a running, or stopped, campaign are shown
*Participants* smart button at the top of the campaign form.
.. seealso::
:doc:`Target an audience <marketing_automation/target_audience>`
:doc:`Audience targeting <marketing_automation/target_audience>`
Workflow
========

View File

@ -1,123 +1,84 @@
==================
Target an audience
Audience targeting
==================
Delivering marketing campaigns to the right audience is paramount when trying to grow a business.
The Odoo *Marketing Automation* application helps marketers to do just that by providing detailed
filtering tools, which can be as simple (or as complex) as necessary, to reach the right customers
at the right time.
The :guilabel:`Target` and :guilabel:`Filter` fields on the campaign form, also referred to as the
*domain*, contain the parameters used to define the target audience for the campaign's reach (i.e.,
the unique contact records in the database, and imported list, etc.).
Configure target filters
========================
- :guilabel:`Target`: specifies the type of records available for use in the campaign, such as
:guilabel:`Lead/Opportunity`, :guilabel:`Event Registration`, :guilabel:`Contact`, The assigned
records model determines the fields that are available throughout the campaign, including the
fields available in the :guilabel:`Filter` section, and in dynamic placeholders.
- :guilabel:`Save as Favorite Filter`: saves the current :guilabel:`Filter` for future use with the
current :guilabel:`Target` model, and can be managed from the :menuselection:`Marketing Automation
app --> Configuration --> Favorite Filters` menu.
- :guilabel:`Unicity based on`: specifies the :guilabel:`Target` model field where duplicates should
be avoided. Traditionally, the :guilabel:`Email` field is used, but any available field can be
used.
- :guilabel:`Filter`: contains an interactive form with configurable logic to further refine the
targeting parameters under the chosen :guilabel:`Target` model. See more details in the
:ref:`marketing_automation/defining-filters` section.
- :guilabel:`Include archived`: allows or disallows the inclusion of archived records in the target
audience.
When configuring the target filters on a marketing campaign, there are some options that have an
:guilabel:`> (arrow)` icon beside them. The :guilabel:`> (arrow)` icon signifies that the particular
filter has more refined parameters within it that can be customized.
.. tip::
A :guilabel:`Responsible` user can be assigned to the campaign by activating
:ref:`developer-mode`.
.. image:: target_audience/marketing-filters.png
.. note::
Each activity in a campaign's workflow can target a subset of the target audience; see the
:doc:`workflow_activities` documentation for more information.
.. _marketing_automation/defining-filters:
Defining filters
================
The default campaign :guilabel:`Filter` configuration is set to :guilabel:`Match all records`,
indicating that the campaign is targeting **all** records of the :guilabel:`Target` model.
To refine the :guilabel:`Filter` rules of a campaign, click the :guilabel:` Add condition` button
to reveal a new row with configurable rule parameters. See the :ref:`Search, filter, and group
records <search/custom-filters>` documentation for more information on how to create filter rules.
.. image:: target_audience/domain-filters.png
:align: center
:alt: The drop-down filter menu in the Marketing Automation application.
:alt: A new filter rule row on the campaign form Filters.
Filters can be extended by adding *branches* and *nodes*. A *node* adds another filtering parameter
to a group of targeting conditions (e.g. a new line), and a *branch* creates a narrowly refined
cluster of parameters, allowing filters to be grouped with :guilabel:`ANY` or :guilabel:`ALL`
statements.
At the bottom of the filter rules is a :guilabel:`# record(s)` button, which indicates the total
number of records targeted by this domain. Select the :guilabel:`# record(s)` button to open a
:guilabel:`Selected records` pop-up window, in which the targeted records can be viewed.
Every time a new branch is created, there are two options:
.. tip::
Activate :ref:`developer-mode` to reveal each field's technical name and data type, as well as
the :guilabel:`# Code editor` text area below the filter rules, to view and edit the domain
manually.
- Either the records can match :guilabel:`ALL` criteria for the upcoming rules (creating an AND
statement where *all* criteria must match).
- Or, the records can match :guilabel:`ANY` criteria for the upcoming rules (creating an OR
statement where *only one* of the criteria must match).
.. example::
To target all leads and opportunities from the *CRM* app that are in the *New* stage, and have an
expected revenue greater than $1,000, the following should be entered:
To change between these two options, simply click the drop-down arrow icon in the green box and
select :guilabel:`ANY` or :guilabel:`ALL`.
- :guilabel:`Target`: `Lead/Opportunity`
- :guilabel:`Unicity based on`: `Email (Lead/Opportunity)`
- :guilabel:`Filter`: :guilabel:`Match` :guilabel:`all 🔽 (down arrow)` :guilabel:`of the
following rules:`
To add a node, click on the :guilabel:` (plus sign)` icon, and to add another branch click on the
:guilabel:`⋯ (ellipses)` icon. To exclude a node or a branch, click on :guilabel:`✖ (delete)` icon
to delete it.
#. :guilabel:`Stage` :guilabel:`is in` :guilabel:`New`
#. :guilabel:`Expected Revenue` :guilabel:`>` `1,000`
#. :guilabel:`any 🔽 (down arrow)` :guilabel:`of:`
.. image:: target_audience/marketing-filter-nodes.png
:align: center
:alt: The drop-down filter menu in the Marketing Automation application.
- :guilabel:`Type` :guilabel:`=` :guilabel:`Lead`
- :guilabel:`Type` :guilabel:`=` :guilabel:`Opportunity`
Use cases
=========
With the above configuration, the campaign targets :guilabel:`157 record(s)`.
The following scenarios outline different combinations of filters a marketing campaign might
commonly use.
.. image:: target_audience/filter-scenario-one.png
:align: center
:alt: A domain configuration in a Marketing Automation campaign.
Scenario #1: Narrow target down to new opportunities in the pipeline
--------------------------------------------------------------------
While in *Edit mode* on a campaign template form (by clicking the :guilabel:`Edit` button), select
the :guilabel:`Target` field, and click :guilabel:`Search More` from the drop-down menu. Then,
search for :guilabel:`Lead/Opportunity`, and select it.
Next, click :guilabel:`Add Filter` in the :guilabel:`Filter` field. Then, click on the default
:guilabel:`ID` filter option in the first portion of the filter equation. Doing so reveals a
drop-down menu full of filter options. From this drop-down, scroll down (or search for)
:guilabel:`Type`.
Keep the second portion of the filter equation on the default :guilabel:`🟰 (equal sign)` icon.
Next, change the third (and final) portion of the filter equation from :guilabel:`Lead` to
:guilabel:`Opportunity`. The number of :guilabel:`Records` that fit this specific filter equation
changes as the equation is customized.
Add another node to this filter by clicking the :guilabel:` (plus sign)` icon to the right of the
equation.
With "new" opportunities being the target of this filter, the second node will focus on *only*
locating opportunities that are in the :guilabel:`New` stage of the pipeline. To do that, select
the default :guilabel:`ID` from the first portion of the second filter equation, and scroll down (or
search for) :guilabel:`Stage` from the field drop-down menu.
Once again, leave the second portion of the filter equation on :guilabel:`🟰 (equal sign)` icon.
Lastly, highlight the default value in the third (and final) portion of the second filter equation,
and type in `New`. With that in place, Odoo only targets opportunities that are in the "New" stage
of the pipeline.
.. image:: target_audience/filters-opportunities.png
:align: center
:alt: A standard scenario using filters in the Odoo Marketing Automation app.
Scenario #2: Narrow down target to event attendees who purchased a specific ticket
----------------------------------------------------------------------------------
While in *Edit mode* on a campaign template form (by clicking the :guilabel:`Edit` button), select
the :guilabel:`Target` field, and click :guilabel:`Search More` from the drop-down menu. Then,
scroll down (or search for) :guilabel:`Event`, and select it.
Next, click :guilabel:`Add Filter` in the :guilabel:`Filter` field. Click on the default
:guilabel:`ID` filter option in the first portion of the filter equation. Doing so reveals a
drop-down menu full of filter options. From this drop-down, scroll down (or search for)
:guilabel:`Event`.
Click the default :guilabel:`🟰 (equal sign)` icon in the second portion of the filter equation. This
reveals a drop-down menu. From this drop-down menu, select :guilabel:`contains`.
In the third (and final) empty portion of the filter equation, type in the name of the event(s) that
Odoo should consider for this campaign filter.
Then, add another node to this filter by clicking the :guilabel:` (plus sign)` icon to the right of
the equation.
The second node will focus on targeting this campaign to attendees who purchase a specific type of
ticket to the aforementioned event(s) mentioned in the first filter equation.
To do that, select the default :guilabel:`ID` from the first portion of the second filter equation,
and scroll down (or search for) :guilabel:`Event Ticket` from the field drop-down menu. Then, in
that same drop-down menu, select :guilabel:`Name`.
Once again, click the default :guilabel:`🟰 (equal sign)` icon in the second portion of the filter
equation, and select :guilabel:`contains`.
Lastly, in the third (and final) portion of the second filter equation, which is blank, type in the
name of the ticket type that should be used for the filter. In this case, :guilabel:`Standard` is
the name of the event ticket type for this sample filter.
.. image:: target_audience/filters-event-ticket.png
:align: center
:alt: An event ticket filter in the Odoo Marketing Automation application.
.. seealso::
- :ref:`Domain developer documentation <reference/orm/domains>`
- :doc:`workflow_activities`
- :doc:`testing_running`
- :doc:`understanding_metrics`

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB