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
-
Customer
-
Sales
-
Shopping Cart
-
Products
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