Customer Segmentation Suite
v1.2.9

Segmenting Customers

Customer segmentation is the practice of dividing a store's customers into groups based on similarities among them. The goal of segmenting customers is to decide which strategy apply to customers in-large, and provide customers with maximum available services.

Segmentation has the potential to allow you to work with customers most effectively. The more data on customers gathered and the conditions for segmentation diverse, the more precise the segmentation and accuracy of marketing analysis will be, which allows you to plan your marketing strategy with maximum efficiency.

All Segments, defined in our extension, are located at their respective grid Customers -> Customers Segment -> Segments. You can create, view, and even delete unnecessary segments (using mass Delete action).

Segments can be refreshed both by cron and manually. For more information refer to segment refreshing subsection.

How to define Customer Segment

Go to Customers -> Customers Segment -> Segments, and press Add New Segment button. You will be directed to complex segment creation page, which divides into five separate tabs:

  • General Information - contains general parameters of segment
  • Rules - contains conditions, which customers should apply to.
  • Actions - defines actions, which will be performed, when customer applies to segment.
  • Matched Customers - contains grid of customers, which are fit to conditions, defined in Rules tab.
  • History - contains history of actions, performed on current segment.

General Information

This subsection contains the most basic parameters of the customer segment:

  • Segment Title - the sensical name of segment, for example Male Customers or Female Customers.
  • Description - the description of this segment, its purpose and overview, etc.
  • Website - the website, where this segment should apply.
  • Status - defines whether this segment is active and should be refreshed.
  • Apply to - defines a customer macro scope, which shall apply to this segment. It allows you to flexibly position your segment and make the analysis more accurate. There are three possible values:
    • Registered and Guest Customers - default scope, which includes all customers on a given website.
    • Registered Customers - apply to this segment only registered customers.
    • Guest Customers - apply to this segment only guest customers.

Rules

This is the most important part of Segment definition. Here conditions are defined, which decide whether a customer is eligible for the current segment.

They have four possible global modes of applying, shown in special header If *[apply mode]* of these conditions are *[validation mode]*:

Applying modes define, when rule shall be triggered:

  • ALL - implies, that rule will be executed only when strictly all conditions were met;
  • ANY - implies, that rule will be executed only when one or more (but not all) of conditions were met;

Validation modes define, which result can produce each condition to be counted as "met":

  • TRUE - implies. that conditions should be valid.
  • FALSE - implies, that conditions should be invalid.

You can also define multiple nested mode blocks by selecting Conditions Combination option. These modes allow creating flexible condition sets to satisfy a policy of any complexity.

Once you had selected global mode (or left it as default), press the green (+) button, and pick up a condition type. There are many possible options, combined into the following categories:

  • Customer Address

    This option opens a special mode block with a header of type If Customer [Address Type] Address match [Applying Mode] of these Conditions:. Applying mode is the same as described above. Address types are:

    • Billing - default billing address of the customer. Applies only to registered customer.
    • Shipping - default shipping address of the customer. Applies only to registered customer.
    • Any - any of addresses, registered by current customer.

    Address options, available for checking, are the same as address defines, including VAT number and its validation status and date.

  • Customer

    Contains all properties of standard registered customer. However, there's also some unique of them are:

    • Is Confirmed - allows filtering customers, which have confirmed/declined their account.
    • Create In - allows to check, on which store customer was actually created. It is extremely useful for multi-stores.
    • First Failure Date - allows to check, when a customer for the first time made failed login attempt.
    • Failures Number - allows to check, how many failed login attempts customers have.
  • Sales

    Allows checking customer's shopping details. This section is useful for creating threshold segments (e. q. with sales over $1000, etc.). Includes the following:

    • Last Order Date - checks date of last order, placed by the current customer.
    • Order Address - checks address of the last-placed order.
    • Sales Amount - lifetime total of all orders placed by the customer.
    • Number of Orders - lifetime number of all orders placed by the customer.
    • Purchased Quantity - totals lifetime quantity of all products bought by the customer.
  • Shopping Cart

    Allows analyzing the last shopping cart of the customer (or last created, but unfinished to order). Contains the following:

    • Shopping Cart Total - the total amount of last cart contents.
    • Shopping Cart Products Qty - the number of products in the last cart contents.
  • Products

    It allows analyzing customer's interests in shopping. Contains the following options:

    • Products List - analyzes last shopping, and opens block of type If Product is [Existence Mode] in the [Product List] with [Applying Mode] of these Conditions match:.
      • Existence Mode - defines whether the product was Found or Not Found in the list.
      • Product List - defines where to search for the product - in the Shopping Cart or Wishlist (the last one applies only to a registered customer). If Mirasvit Gift Registry is installed, you can also use Gift Registries as a product list. Read more on this at Integrations section.
      • Applying Mode is described as above.
    • Products History - analyzes all shoppings, and opens block of type If Product [Action Mode] [Action] and matches [Applying Mode] of these Conditions:.
      • Action Mode - defines, whether product Was or Was Not involved in actions.
      • Action - defines, whether product was Ordered or just Viewed.
      • Applying Mode is described as above.
    • Ordered Item History - same as Products History, except it validates the data of the purchased items. It can be useful if you want to validate SKU values of the products that were already removed from your store or whose SKUs have already been changed over time.
      • Action Mode - defines, whether product Was or Was Not involved in actions.
      • Action - for now only Ordered option is available.
      • Applying Mode is described as above.

    Example

    FIXME: Add examples

    Note

    If you cannot find a product attribute in the list of available conditions, make sure this attribute is allowed for use with the promo rule conditions. On the Admin sidebar, tap Stores, then under Attributes, choose Product. Open required attribute, on the tab Storefront Properties find the setting Use for Promo Rule Conditions, choose Yes if you want to use this attribute as the condition for customer segment rules.

Useful Info

You can now validate customers over the segment's conditions.
For this, enter customer IDs separated by a comma into the input above the conditions block and press the Validate button.

Actions

This subsection contains possible actions, that can be performed on the customer when he applies to the segment for the first time:

  • Move to Group - allows moving a customer to the proper group automatically. You can see available groups at Customers -> Customer Groups.
  • Priority - allows you to automatically resolve issues when a customer simultaneously eligible to multiple segments. In this case, the customer will be applied to the segment with a lesser value of priority.
  • Refresh mode - allows you to choose, how current segment will be refreshed. Automatic and Manual options are available. For more information refer to segment refreshing subsection.

Matched Customers

This subsection contains a customers' grid, where are gathered only those eligible to the current segment. You can use the following mass actions there:

  • Export - allows you to export a list of customers either to CSV or to OOXML (ExcelXML) format.
  • Exclude - allows you to exclude customers from this segment manually.

    Note

    If you use manual exclusion, you also shall set Refresh Mode parameter to Manual, otherwise excluded customers will be added again on the next refresh - if they meet conditions.
  • Delete - allows you to remove customers. Do not use this action unless you really need to - since it actually will remove customers from store.

History

This subsection contains all actions that were performed on the current segment. It is extremely useful for checking how segmenting actually performs.

History contains the following columns:

  • Created At - time of action actual execution.
  • Action - name of action. Here is the list of available actions:
    • Segment Refresh Started - marks start of refreshment procedure.
    • Segment Refresh Finished - marks the end of refreshment procedure.
    • Add Customer - adding customers to the current segment.
    • Remove Customer - removing customers from the current segment.
    • Customer Group Change - moving customers from/to the specific group, set in Move to Group option.
    • Segment Refresh Iteration Started - marks start of AJAX Rule execution.
    • Segment Refresh Iteration Finished - marks the end of AJAX Rule execution.
  • Affected rows - how many customers from Matched Customers were involved in the action.
  • Type - whether this action was done by automatic cron task, or manually.

Refreshing Customer Segments

Customers are scanned and added to segments during refreshment procedure. Normally it is performed by a special cron task.

But if you had set Refresh Mode to Manual option, this segment will be skipped by that task. In this case, you need to manually open the respective segment and press the Refresh Segment Data button, available from the top button ribbon.

Manual refreshing also can be used for segmentation testing.

Note

Customer Segment extension defines two separate crontasks:

  • segment_refresh_data - refreshes all segments with automatic refreshing, runs at 02:00 by default.
  • segment_history_clear - clears segments' histories, runs at 03:00 by default.

    They can be adjusted by editing this file (purge ALL cache and restart cron to apply changes): /vendor/mirasvit/module-customer-segment/src/CustomerSegment/etc/crontab.xml