Version Date Released Features and Enhancements Resolved Issues
17.10.4 April 26, 2018
17.10.3 April 20, 2018
17.10.2 February 9, 2018
17.10.1 February 7, 2018
17.10.0 January 19, 2018


Transact Insights 17.10.0 is the first major release after Insights 5.1 was made Generally-Available in August 2017. In the past few months, several improvements have been implemented in Insights. These improvements primarily revolve around Insights data collection, Insights-Maestro integration, Insights-Composer integration, and Insights-TM integration, and are included as part of the 17.10.0 release, which is very promising in terms of stability and data quality.

The Insights drop-off view has been redesigned to improve the focus on comparative and relative analysis of abandonment hot-spots in Transact Applications. This release also features the new Milestone filter which helps in filtering transactions with custom-defined milestones and performing comparative analyses based on users reaching specific milestones in the application.

For more information see the Transact Insights documentation.

Key Features and Enhancements

Milestones Filter

A milestone is a key event in a transaction that marks the transaction with a specific milestone name. There are standard/pre-defined milestones in Insights such as Opened, Bounced, Started, Saved, Resumed, Abandoned, Completed etc, which are all used to track the status of a transaction. Using this feature, customers can define custom milestones to be sent within the context of a transaction, typically, to mark a business significance for that transaction. Documentation on how to send custom milestone events from Maestro, Composer, and TM can be found at the following links:

Key benefits of this feature -

  • Define your own milestones in the form relevant to your businesses and perform comparative analysis based on users reaching specific milestones in the form.
  • Measure the engagement of exchange components, their impact on UX and conversion rates.
  • Create a universal form used for different purposes, yet analyze and optimize conversion for each use-case independently.
  • Send a milestone event for a submission object from Transact Manager even after the form is submitted by the user.

There are many ways custom milestones can be used to analyze data in Insights. At present, Insights presents this as part of its global filter set. One or more milestone filters can be applied and only transactions that have at least one of the selected milestone filters will be presented in all Insights views. In the future releases, there are plans to present milestone data in its own Analytics view.


Improved Drop off view

The drop-off view has been revamped to enhance the readability of data and present conceptually different data in separate UI components to assist users in focusing on the right metrics at transaction and section level accordingly.

A new Transaction Metrics component has been added at the top of the view which captures transaction level data, their statuses, conversion, and completion rate. Contextualual help has been included so that users can quickly understand what each metric represents and how they are calculated.


A key change has been made in the way onboarding metrics are calculated such as Completion, Bounced and Abandonment rates. Prior to 17.10, all transactions, including the ones that are currently in open/user-saved status were being considered as part of that calculation. This was negatively skewing the completion rates due to in-progress transactions. Additionally, section level data from these transactions were affecting the drop-off chart leading to confusions. As it may take a few hours for Insights data to be ready for consumption, and because events may not be processed in the order they occurred, partial data from in-progress transactions were impacting section level drop-off data. To address this issue, in 17.10, all in-progress (Open/User-saved) transactions are excluded from completion and section level analysis. This means, only transactions that have reached a final status (Bounced, Abandoned, Completed), will be considered for calculations. This affects the way Completion, Bounced and Abandonment rates are calculated.

A new metric, Conversion Rate. has been added to the drop-off chart. This metric which computes the rate calculation for all finalized transactions (Bounced, Abandoned and Completed) and is different from the Completion rate calculation in that it also considers Bounced transactions.

The new drop-off chart only provides data for section level completion and has been renamed to the Section Level Completion chart. Additionally, all absolute numbers have been removed from section level completion chart and instead all metrics are presented with rates. The doughnut chart in each section provides Bounce, Abandonment and Completion rates for that section.

  • Bounce in a section means a user visited the page/section but did not interact with any fields in that section and abandoned the transaction.
  • Abandonment in a section means a user visited the page/section, interacted with at least one field and then abandoned the transaction.
  • Completion in a section means a user visited the page/section, filled all mandatory fields in that section and completed that section and proceeded to the following section.

Hovering over the corresponding wedges of the doughnut shows the corresponding metric at the center of it. The completion rate of the section is displayed by default. The total fields metrics that was shown in the previous version of the Insights drop-off view has been removed. These relative metrics replace the Visits, Started and Completed metrics that were shown in the previous version of Insights. The total field count in the form can still be calculated by adding up field counts in each section. The Saved count at each section has also been removed from the view. This metric will be added to the Field level view in a future release.

A new progressive completion rate metric is shown at the bottom of each section. This metric shows the percentage of users who completed that section compared to the number of users who started the application. This metric essentially captures the numerical value of the green portion (completion) of the chart with reference to the vertical axis. Note the Completion rate and Progressive Completion rate for the "Processing Team" section in the chart below. Although the Completion rate for this section is quite high (96.1%, indicating most people who visited this section completed the section), the Progressive Completion rate for this section is quite low (28.4%). This is due to a dip in the number of users visiting this section, indicating that this is an optional section and that not all users journey through. So, compared to the users who started the form, the users completing this section is quite low.


Architectural enhancements

Improved data ingestion at Scale

Event processing in Insights depends on corresponding form request events from TM and form session events form the browser. When either of these events are unavailable after 5 retries (typically 1.25 hours), the events are dropped as the system assumes that data will never be available. Based on the study of empirical data, processing of a form session event before processing a form request event is highly likely. When this happens, form session events are held back in the processing queue as the system wouldn't have the knowledge of the corresponding TM event. These form session events are processed by a dedicated Insights service that handles untagged events. Based on the improved logging in the past few releases, we were able to see that other events from the browsers had the form request data available to them and hence were tagged with the TM ID. The design creates one dedicated service per TM to process corresponding tagged events. We observed that due to the volume of TMs and traffic, untagged processors would never get the processing time required, as there is a limit of 50 concurrent processing entities on GCP. However, the tagged events were processed 5 times and the events were being dropped due to the lack of form session data.

This work improves the strategy used in ingesting data when there is a large number of TMs with a large number of transaction events being processed. It prioritizes processing of untagged events which do not have TM details for them to be processed. With this approach, form session events would be processed successfully faster. This enables the system to process all other events successfully and improve the data collection quality. Since this enhancement was deployed on 21st Dec, the event drop rate has significantly reduced, as can be seen in the screenshot from the data ingestion tracking system we have in place.


Handling missing events from the browser

Form Session event:

As events from browsers are not processed if Insights doesn't have the knowledge of form sessions, it is critical for us to ensure an architecture that improves reliably of recording form session in Insights. We have seen that much of the cases where form sessions are not received in Insights are for bounced transactions. In many cases, users land on a form and close the browser too quick for the Insights code running in the browser to send a form session event to the backend. These scenarios end up as bounced eventually in TM. However, when we receive Bounced milestone events from TM, due to the lack of form session events, the Bounced milestone is dropped. These transactions would not be tracked in Insights leading to a discrepancy in the number of Bounced transactions between TM and Insights.

This work ensures a default form session event is registered for Bounced transactions where we haven't received a form session event from the browser. All fields of the form session data besides the TM, Form, Version, Space and the Org details, are set to be unknown (ex: device type, browser type etc.). In Insights, when the Bounced timeline view is split by the browser or device type, these transactions appear in the Unknown category.

Submit event from the browser:

In some cases, where the user submits the form but closes the browser before for the Insights code running in the browser sends the Submitted milestone event to Insights backend, Insights would end up considering them as open. Whereas it would appear as Completed in TM. This would lead to discrepancies in Completed count and Completion rate between TM and Insights.

This work leverages on the backup event Insights receives from TM called Completed milestone which makes the Completion metrics shown in Insights closer to the Completion metrics TM reports, and hence improves the quality of Insights data analysis.

Handling Invalidated form sessions from TM

Due to the difference in treatment of transaction's request/open time in TM and Insights, we observed some transactions being anchored to a different date in Insights compared to TM. This difference would lead those transactions to be reported in different dates in TM and Insights, leading to discrepancies. This specifically happens for transactions arising from anonymous tasks part of a collaboration job in TM. TM replaces the transaction's request/open time when they do not have a form start event and they are arising from anonymous tasks. So, those transactions are reported on the replaced data/time. Whereas, Insights continues to report those transactions on the transaction's original request/open time.

This work implements a new session invalidation event to be sent from TM when TM replaces a transaction's request/open time. Insights uses this event to select the oldest non-invalidated session open time to report the transaction. This improves the consistency of Insights data with TM reports.

Release Details


Resolved Issues

Restricted content

You need to login to access this content. If you still don't have access after logging in, you can request it by posting a new question and selecting the access you need in the Type dropdown.


Features and Enhancements

Transact Insights 17.10.3 is a minor release with bug fixes and new features - Insights Data Export and Whitelist Segments. More on these features can be found in the Product documentation.

Reference Theme Summary Description


Data Segmentation User-Saved transactions to retain status when resumed until it reaches a terminal status Change in consideration of Saved transactions - To keep the definitions consistent with TM, once a transaction is saved, it will remain in User-Saved status until it transitions into either Completed or Abandoned.
Data Export Data export feature This new feature provides a button on Drop-off view, Field analysis view and all Timeline views that exports the data shown in the views into a CSV file and downloads it to the default download location set for the browser. All filters that are applied to the current view are also applied in the exported data. A new advance Data export feature is under development which is aimed to provide more controls on the data to export. This will be released in a subsequent release.
TID-1630 Data Quality, Data Security Data ingestion authorization redesign Data ingestion authorization redesign which makes the authorization stateless removing the dependency on communication via TM. This also improves security by minimizing and localizing the risks with replay attacks.

Resolved Issues

Restricted content

You need to login to access this content. If you still don't have access after logging in, you can request it by posting a new question and selecting the access you need in the Type dropdown.


Features and Enhancements

Reference Theme Summary Description



Data Consistency User-Saved transactions to retain status when resumed until it reaches a terminal status Change in consideration of Saved transactions - To keep the definitions consistent with TM, once a transaction is saved, it will remain in User-Saved status until it transitions into either Completed or Abandoned.

Resolved Issues

Restricted content

You need to login to access this content. If you still don't have access after logging in, you can request it by posting a new question and selecting the access you need in the Type dropdown.


Date: 07 Feb 2018

Transact Insights 17.10.1 is a minor release that includes work that improves Insights data read performance significantly.

The main work in this release is the back-end architecture change to provide faster Insights data access when using the Insights User Interface (UI). Prior to this release, it took 5-6 retries from the user to load Insights views for customers who had very high traffic, especially when the period filter was set to longer than 1 week. These retires amounted to 5-6 minutes wait time to see data on Insights. With the implementation of this release, load times have been improved by 8-10X. Tests have shown the drop-off view (which involves the most complex query we have) typically loading in under 30 seconds for a customer's data that comprised of 500k+ transactions and millions of events. When the cache is hit, the response time is typically under 3-5 seconds. In general, 17.10.1 should help customers get the data without ever having to hit the retry button.

The main strategy of this release is to create pre-computed tables which are optimized for the queries. These pre-computed tables are created periodically. Starting from this release, all generated data will only be reflected in the Insights UI after a minimum of 1 hour but may extend up to 2 hours. This time gap may change in the future if and when we change the periodicity of the creation of pre-computed tables. Any such changes will be notified to all customers through the corresponding support channel and accounts team.

With this change, the Field analysis view excludes in-progress (Open and User-saved) transactions from analysis. This change keeps the Field analysis view consistent with Dashboard and Drop-off data.

The new query logic may also pick up more transactions for analysis than before (which were being incorrectly ignored). This effectively increases the data quality and accuracy.

In this release, Field analysis queries have replaced several of Google’s statistical functions with corresponding Approximation functions. This is a typical approach used by many analytics tools to optimize for performance. The accuracy of the field analysis metrics may be compromised by about ~0.5%, which we believe should be acceptable considering the nature of analysis for field level data. We believe this should NOT have any impact on the value that field analysis provides for our customers to make data-driven decisions to drive conversion. However, in the future, we could re-examine this approach if customers require better accuracy at the cost of performance. We have also discussed a potential UI toggle between Accuracy and Performance as a solution to address both requirements.

Due to substantial changes in the query logic as described above, the data may appear slightly different to what was being shown before. In general, we should consider 17.10.1 data as more accurate than its previous versions.

We have noted three data issues in 17.10.1 which will be addressed in the upcoming 17.10.2 release.

Features and Enhancements

Reference Theme Summary Description



Performance Performance enhancement for large-data-set A new module has been implemented which reads data as it is ingested and stored in Big Query. This module pre-computes one or more tables which have been optimized for query performance. All queries initiated as part of user Interaction in Insights have been changed to leverage on the new optimized tables. The analysis module runs every 1 hour presently and hence all new data coming in takes about 1 to 2 hours to reflect in Insights UI.

Resolved Issues

Restricted content

You need to login to access this content. If you still don't have access after logging in, you can request it by posting a new question and selecting the access you need in the Type dropdown.


Features and Enhancements

Transact Insights 17.10.0 is a major release which mainly focuses on enhancing the value of Insights data analysis through improved data quality and presentation.

Reference Theme Summary Description
TID-1371 UX enhancement Change the term "Organisation" to "Organization" in Insights UI Terminology consistency across Avoka modules
TID-1361 Data Presentation Transaction Status Counts card Introduced a new UI component to show transaction status counts in drop-off view.
TID-1357 Data Presentation Conversion Rates card Introduced a new UI component to show conversion rate for the selected form version, period and filters. This rate calculation includes Bounced transactions in them. The metrics shown as part of this UI component are Bounced, Abandoned and Conversion rate.
TID-1349 Data Presentation Drop-off table rework Changed the drop-off table to align with the new drop-off chart design where only relative metrics are presented.
TID-1284 Data Presentation Timeline summary table query update Rewrote timeline queries to adhere to new rate calculation logic of Completed, Abandoned and Bounced transactions
TID-1283 Data Presentation Dashboard completion tile query update Rewrote dashboard completion tile query to adhere to new rate calculation logic of Completed transactions

Data Presentation Redesign drop-off chart Implemented a new design to present drop-off chart which allows users to focus on key relative metrics instead of the previous raw data.
TID-1280 Data Presentation Completion rates card Introduced a new UI component to show completion and abandonment rates for started transactions.



UX enhancement

Handle blank sections from dropoff view (for now)

Implemented logic to handle forms with blank sections and presently hides them from drop-off chart. May reconsider presenting this in a different way in the future releases.
TID-1255 Data Consistency Update queries to make use of SessionInvalid milestone Updated all queries to exclude invalidated sessions identified via the SessionInvalid milestone from TM. This will improve the consistency between Insights data and TM reports.
TID-1244 UX enhancement Detect and clear bad filter data in Insights dashboard at the time of login Implemented logic to handle bad filters stored due to issues when accessing multiple TM instances from the same browser.
TID-1208 Data Consistency Enhancement to handle bounced transactions that don't have a session Implemented logic to handle scenarios where browser fails to send form session event specifically for bounced transactions. Typically this happens when user closes the browser too quickly.









Scalability feature for handling increasing number of TMs generating Insights traffic.

  • Split the tagged payload processing logic into a separate module
  • Return failed data ingestion tasks to the queue immediately
  • Support different GAE instance size/residency configuration per environment
  • Improve batch processing throughput
  • Amend store-form-metadata queue processor to use load jobs
  • Better annotation of Objectify entities to enable optimal caching
TID-1104 Monitoring

Export metrics to StackDriver relating to tasks processed per window

Implemented data ingestion tracking and scalability tracking infrastructure
TID-1102 Data Presentation Improved timeline summary table

Implemented changes in Timeline summary table - Removed the column "Opened" and added 2 new columns

  1. "All Transaction" or "All Txn" - This will be the count of all transactions including bounces. This should be same number as seen in "Unique Visits" in first column of Drop-off
  2. "Bounced"
TID-1070 Data Presentation Rewording metric and updating contextual help text
  • Changed the name of the metric "Saved" to "User Saved" in Dashboard and Timelines
  • Changed contextual help text for Completion rate
TID-1013 New Metric Send and capture tracking code with FormTransaction information

Implemented logic in TM and Insights to capture transaction tracking code. With this change, all transactions will now be traceable with the tracking code. However, presentation of this data is yet to be designed.



Performance Enhancement Switch to using Bigquery parameterised queries Migrated to using BigQuery parameterised queries which provides some performance benefits for certain scenarios where filters are used.
TID-929 UX enhancement When timezone is changed, refresh the data in current view Impements the logic that refreshes the data in current view when the timezone is changed.
TID-913 Monitoring Support for performance and availability monitoring from Site24x7 Implements APIs to support monitoring of performance and availability of Insights UI from Site24x7.
TID-769 UX enhancement User messaging when there is no data available in Insights Implements better messaging when there is no form rendered after insights is enabled, show an appropriate message to users
TID-716 Performance Enhancement Migrate dashboard build system to Webpack3

This work helps bring native ES6 module support to Webpack, allowing for much more robust dead-code elimination. This can allow for the size of the compiled dashboard JS to be substantially reduced, as unused parts of third-party libraries can be safely striped out by the compiler.

Resolved Issues

Restricted content

You need to login to access this content. If you still don't have access after logging in, you can request it by posting a new question and selecting the access you need in the Type dropdown.