Skip to main content

Release Notes

Follow us on X to stay up-to-date with new releases!

🎉 Enhanced Table Interactions

We’ve made working with tables easier and more intuitive! With these updates, you can now:

  • Change aggregations and time grains
  • Auto-size columns
  • Rename columns
  • Remove columns

All directly on your tables, giving you more control and flexibility in your workflow.

Give it a try and let us know what you think! 😊

🔐 Two-factor Authentication (2FA)

Holistics now supports two-factor authentication (2FA) for password-based login.

Two-factor authentication (2FA) adds an extra layer of security to your Holistics account. Once enabled, it requires an additional code from an authenticator app (e.g., Authy, Google Authenticator, etc.) along with your email and password, ensuring only you can access your account.

The admin can require two-factor authentication for all users to enhance the organization’s security.

To learn more, please go to Two-factor Authentication for detailed settings.

⛳ AQL Condition: Apply Complex Filters to All Metrics at Once

Stop duplicating the same filter logic across every metric in your exploration. AQL Condition lets you define filtering criteria once and apply it to all your metrics automatically.

Why this feature?

When building explorations, you often need to apply the same complex filter to multiple metrics. Previously, you had to add where() clauses to every single metric, leading to repetitive code and maintenance headaches. If you needed to change the filter logic, you'd have to update it in multiple places.

Now you can define your filtering logic once in the explore's filters block, and it automatically applies to all metrics.

How it works

AQL Condition uses the same expression syntax as the where() function's condition parameter, but you define it at the exploration level instead of repeating it for each metric.

Before vs After

Before (Repetitive filtering)

explore {
dimensions {
// your_dimensions
}
measures {
orders: total_orders | where(users.gender == 'female' or countries.name == 'Vietnam'),
revenue: revenue | where(users.gender == 'female' or countries.name == 'Vietnam'),
users: total_users | where(users.gender == 'female' or countries.name == 'Vietnam')
}
filters {
// your_condition
}
}

After (Single filter definition)

explore {
dimensions {
// your_dimensions
}
measures {
orders: total_orders,
revenue: revenue,
users: total_users
}
filters {
users.gender == 'female' or countries.name == 'Vietnam'
}
}

This approach makes your code cleaner and easier to maintain, while ensuring consistent filtering across all metrics.

Learn more

See the full documentation: AQL Condition reference

For making conditions dynamic with dashboard filters, see: Dynamic Conditions

⏰ Extract date parts from dates

In a time-series report, you may want to group data by different time intervals such as Day of Week, Day of Month, Month of Year, Hour of Day, etc.

Previously, you had to write AQL expressions to extract such date parts from dates. Now, our Date Parts feature helps you easily extract these specific types of dates from time dimensions so that you can slice your data under different time lenses.

For more detailed examples, please refer to this document:

⏺️ Toggle to turn on “Merge into one line” for trend lines and reference lines

For trend lines and reference lines, in addition to the toggle break down by legend, you also have another toggle, merge into one line, which helps visualize a single global line despite the legend.

Although both toggles produce the same result of one single line in the chart, their calculations differ:

  • Turning off “break down by legend”: This calculates the trend line or reference line based on the total values (i.e., not segmented by legend).
  • Turning on “merge into one line”: This calculates the trend line or reference line based on the segmented values.

For more detailed examples, please refer to these documents:

🧩 Validate Project with Validation API and GitHub Action

The Validation API allows you to validate your projects outside of Holistics, enabling smooth integration with CI/CD workflows. This feature is particularly useful in scenarios such as:

  • Validating updates before merging a pull request into the master branch by incorporating the Validation API within the CI/CD pipeline.
  • Validating changes immediately after updates are pushed to the master branch.
  • Running validations prior to using the Publish API to ensure a successful publish.

🔘 Toggle to turn off “Break down by legend” for individual measures

Previously, every measure in your chart was always broken down by legend. But sometimes, you may want to apply legend to only certain measures, for example, visualizing a total value alongside sub-category values within a chart.

Now, with a simple toggle, you can turn off the “break down by legend” for individual measures, giving you more control over your visualizations.

Supported visualizations include line, area, column, bar, and combination charts.

Note: this feature is only available in AQL-enabled datasets.

🚵🏾‍♂️ Line Interpolation - Step Before, and Step After

Another quality-of-life improvement in Holistics—more data presentation options for Line Interpolation. Now, you can customize how your line charts display changes between data points for better clarity.

A good chart is a chart with great visual clarity, and this little feature helps analysts get one step closer to that.

©️ Copy formatted and raw values in Tables

Copying table values just got a lot easier. You can now right-click on any cell or range to quickly copy and paste values.

Plus, you have the option to choose between formatted (WYSIWYG) or raw values, giving you more control over your data. 🎉

Visit our public doc for more details: Data Table | Holistics Docs (4.0)

🥷 Hide columns in Pivot Tables

Following the success of the Hiding Columns feature in Table, we’re excited to announce a new enhancement: you can now hide Row Fields columns in Pivot Tables!

This update gives you even greater flexibility to customize and manage your data views, tailoring them to your specific needs.

For more information, please visit our public doc here: Pivot Table | Holistics Docs (4.0)

Note:

  • Currently, we only support hiding Row Field columns.
  • This is an aesthetics feature, not a security feature. Hiding a column will remove it from the user’s report view and export, but the data is still accessible and not restricted in any way.