FastStats release notes 2025
Our FastStats development team works using quarterly releases. Scroll down to see the FastStats quarterly releases from this year.
Note: Since the Q2 2023 release, Apteco desktop software requires a minimum of the .NET Framework 4.7.2 or later to be installed.
Note: Please see Notes for administrators for steps to be completed before applying a quarterly upgrade to your Apteco software.
FastStats Q2 2025 software release
New features and improvements
Analysis
New options to find and present statistically significant results when creating penetration maps
Based on the capabilities of the Profile tool, penetration mapping provides valuable insight by allowing you to compare two groups of people on a map using an analysis to base index measure. Now it’s possible to refine your analysis further and display results which, based on their Z-score, are statistically significant. You can choose to:
-
Display only statistically significant categories when applying shading based on the Index measure.
-
Set your penetration map to display statistically significant areas based on actual Z-scores.
-
Apply Z-score thematic shading to the map.
Introduction of category grouping within pattern match aggregations
Pattern matching provides a powerful way to analyse sequences of transactions but, when discerning patterns at the individual transaction level is not possible or desirable, the power of Category Grouping and Pattern Match aggregation techniques are now combined and allow you to:
-
Use an ordinal selector variable, such as booking or donation year, to group transactions;
-
Apply a numeric function, such as the sum of the cost or gift, to all the transactions in each group;
-
Use the resultant list of years and numeric values as the input for pattern matching where you might then, for example, look for the longest sequence of years where a person's holiday costs or donation values have increased.
You can carry out this analysis by creating an on the fly aggregation directly within the Expression editor or, alternatively, follow the steps of the Sequence Analysis wizard to generate the expression.
See Expressions: Aggregations on the fly - Category Grouping with Pattern Match.
Pattern match aggregation - new wildcard characters
Understanding how a new customer started transacting, or examining someone’s latest purchases, is valuable insight. Though previously possible, such analysis is now significantly easier and more accessible with the introduction of [ and ] as wildcards to use when manually defining patterns of interest. They allow you to anchor a pattern to the start or end of the transactions you’re analysing or, in some cases, you might choose to use both to identify people whose whole sequence of transactions matches the specified pattern.
See Expressions: Aggregations on the fly - Pattern Match positional wildcards.
Transaction Analysis wizard de-duplication options
The Transaction Analysis wizards allows you to examine patterns of transactional data and identify common sequences of transactions - such as, the most popular patterns of holiday destinations visited. A new option in the Pick Transaction Variable step means you can optionally de-duplicate and remove all direct repetitions, reducing a pattern to a single sequence which, for example, allows you more easily to see switches between products.
See Transaction Analysis wizard.
Relative aggregation expression de-duplication options
Two new features are available for *Next* aggregations when creating Relative Transaction on the fly expressions, providing the ability to de-duplicate and remove repetitions. You can select:
-
No deduping (default): Next N returns the Nth record after this one.
-
Different: Next N returns the Nth record after this one once direct repeats are deduplicated and removed.
-
Distinctly Different: Next N returns the Nth distinctly different record after this one.
See Expressions: Aggregations on the fly - Relative Transaction.
Ability to band date and datetime variables and expressions into decades
You can now band date and datetime variables and expressions into decades for use in a:
-
Cube: As a dimension
-
Data grids: As a column
-
Selection: As an ad hoc date option
This new option is useful when working with a date variable that has a large range. Full support also extends to include the PeriodToDate and Comparison functions within calculated measures, as well as the equivalent expressions for derived cubes and PeriodToDateCubeRange, which all now support decade banding.
N% per variable functionality extended to support expressions
The ability to sample N% of records whilst maintaining distribution across a selected variable is extended to include distribution across a selected expression.
See Selection: How do I make an N% per variable or expression selection?
Timezone updates
We’ve updated how time zones are aligned across FastStats server and user locations. This means that when making a selection with a date or datetime variable, the time zone displayed reflects the server/system location, rather than your location.
Bug fixes
Area | Description |
---|---|
Expressions | Fixed an issue in numeric Pattern Match where the Include List/Exclude List button is visible but has no effect. |
Fixed an issue when the right drag of a flag array to a data grid column results in an error in the size of the expression. | |
Fixed an issue on German systems where an expression with a decimal separator comma fails to build when dragged onto a cube. | |
Cubes | Fixed an issue on German systems where expressions used as measures have decimal errors. |
Fixed an issue with calculated measures where the periodtodate form has invalid entries in the date period list. | |
Fixed a bug with switching to the Index thematic when the data is not suitable. | |
Date / DateTime variables | Fixed an issue where the pen/edit icon is visible in within the date rule dialogue. |
Wizards | Fixed an issue where Transaction Analysis drag-offs returned incorrect First/Last selections and results. |
FastStats Q1 2025 software release
New features and improvements
Analysis
Support for extended text fields
We’ve increased the maximum size of a text field from 255 to 32767 characters. This means you can now load larger amounts of text into your Apteco system via Designer, and existing FastStats analytics are extended to accommodate strings up to the new limit. This includes, for example, selections using text variables, text or shredded text analysis in cubes and cube-based visualisations, the ability to display large text fields in a data grid, and expressions which take string parameters or return strings.
Examples of extended text fields include data from customer reviews and feedback, and social media posts.
The maximum text field size must be determined in Designer by your system administrator.
See the Designer Q1 2025 software release.
Option to preview cell contents in a data grid
With the introduction of support for extended text fields, we have also made it possible for you to preview such content via a new, right-click menu option in the data grid tool.
For those with permission to do so, the text can also be copied from the preview window.
Key benefits include the ability to:
-
Easily read large text fields, such as customer reviews or complaints.
-
Extract sections of text if preparing a response email.
-
Copy out and summarise content in ChatGPT.
-
Copy out and include examples in a report.
As part of the Enhanced Build process in Designer, characters used for formatting the original text are removed for performance reasons. Pre-processing the data is possible, but formatting options are provided in the user interface to make the text more readable by inserting line breaks, if necessary.
See Data grid - how do I preview cell contents?
New cube measures
Three new statistics are now available for cube-based analysis using cubes, trees, segmentations, Venn diagrams, as well as variables and expressions.
-
Range(variable or expression) – returns the difference between the maximum and minimum values of the variable.
-
NthBiggest(variable or expression) – takes all the values in a cell in the cube, sorts them into order, and returns a particular Nth value from the top of the list.
-
NthSmallest(variable or expression) – takes all the values in a cell in the cube, sorts them into order and returns a particular Nth value from the bottom of the list.
The introduction of the Range statistic removes the previous need to create a calculated measure to display this information. NthBiggest and NthSmallest are useful in cases where there are a small number of outliers that would skew a maximum statistic, or where there are a small number of values in a cell and a percentile measure isn’t adequate.
See How do I include statistics on a cube?
Expressions - extensions to on the fly numeric pattern match capabilities
We have added to the range and power of numeric pattern match analysis with three new capabilities:
-
Longest Particular (Range)
You can search for a ‘longest particular’ sequence where the particular value is a numeric range. This makes it possible to answer questions such as, what is the longest sequence of transactions a person has made where all of those transactions fall into a cost range between £500-1000.
-
Include/Exclude ranges
You now have the ability to select a set of numeric ranges for an include or exclude list allowing you, for example, to find the longest sequence of transactions a person has made, excluding any that cost less than £1000 or more than £2000.
-
New sum and mean properties of numeric sequences
You can set a return value as the sum or mean of the numeric values in the matched pattern allowing you, for example, to find the total cost of transactions captured by your defined sequence.
The new settings are accessible in the user interface through the numeric Pattern Match aggregation dialogue, or the relevant Sequence Analysis wizard steps.
See Aggregations on the fly - Pattern Match Numeric Longest Particular and Pattern Match Include or Exclude list
Ability to copy one expression into another
You can now drag one expression into another using its drag handle. This copies all of the expression text to the insertion position of the new expression, and will also include any embedded queries, aggregations and cube lookups. Validation occurs to ensure you aren’t adding too many queries/cubes for the expression. This development supports the creation of complex expressions and allows you to test part of an expression before then adding it into another.
Behavioural modelling extended to allow the use of selector variables when creating recency features
Behavioural models allow you to select a lookalike audience using time-based behavioural data. You can aggregate a person’s recent transactions and identify behavioural features that are indicative of the audience being targeted. These features are typically RFV-based aggregations such as the “count of purchases in the last year” or the “most recent donation value”.
Whilst you could already create recency features from numeric variables (e.g. cost of last booking), this new development means you can also use selector variables (e.g. destination of last booking). Consequently, you can create more powerful models and more targeted campaigns, since the category associated with a person’s recent behaviour is often very predictive.
See Behavioural modelling - creating recency dimensions using selector variables
Bug fixes
Area | Description |
---|---|
Expressions | Fixed a bug related to ?N wildcards with pattern match numeric values when they are missing. |
Fixed a bug related to pattern match numeric values with * elements. | |
Fixed an issue where saved pattern match aggregations of the Longest Particular type behave incorrectly after reload. | |
Fixed a crash issue with pattern match numeric sequences returning start/Nth/end transaction values. | |
Fixed a bug related to order span and transactional table for pattern match numerics containing *. | |
Fixed an issue where the percentile parameter was not sent to the server for expressions statistics. | |
Fixed an issue where the TrimList function returns empty if trimming 0 items. | |
Fixed a crash issue with ZScore expressions when the test and control are both 1. | |
Fixed an issue relating to an incorrect error message displaying for DaysInMonth. | |
Fixed a typo in the expression help for the StrStreak function. | |
Venn | Fixed an issue where irrelevant statistics are displayed. |
Fixed an issue where you cannot define a percentile statistic on an expression. | |
Segmentation | Fixed an issue where irrelevant statistics are displayed. |
Map | Fixed an issue where right-dragging a statistic results in a crash. |
Cube | Fixed an issue where clicking on custom colours before creating a cube causes a crash. |