What's New in GoodData Cloud?
Subscribe to GoodData Updates
Receive regular insights from GoodData delivered directly to your inbox.
Visualization Switcher
We have enhanced the layout options in our dashboards by introducing the ability to combine multiple visualizations into a single widget, allowing users to switch between them seamlessly. This feature helps improve dashboard readability, optimizes space, and enhances interactivity and usability for end users.
See the Visualization Switcher section for more details.
Alerts and Scheduled Exports
You can now automate key actions in dashboards, helping you stay on top of your data without manual effort:
- Alerts: Set up alerts on dashboard widgets to monitor metrics and get notified when specific conditions are met.
- Scheduled Exports: Schedule regular exports of dashboards and dashboard widgets to recieve them as PDF, CSV, or XLSX files.
Both features offer flexible delivery options, including integration with external systems via email or webhooks. Webhook payloads can be customized to support advanced workflows and automation. Initial setup by your organization’s admin is required to start using these features. See Automation in Dashboards for more details.
Saved Views
We have added a new feature that lets you easily load filters you often use on a dashboard. Now, you can save these filter combinations and quickly switch between them with just one click.
Additionally, we have added a new workspace permission that extends the VIEW
permission, allowing users to save filters. This permission, called CREATE_FILTER_VIEW
(or SAVE VIEWS in the GUI), must be applied alongside the VIEW
permission. Users with ANALYZE or MANAGE permissions can save filters without needing any additional permissions.
Disable Cross-filtering
You can now disable cross-filtering for individual widgets on a dashboard. This allows for more tailored control over the behavior of specific widgets when crossfiltering is applied across a dashboard. See Cross-filtering for details.
New Language Support
We have expanded the language options for our user interface to include Australian English, Cantonese and Traditional Chinese, and Finnish. These languages are now fully supported in the Analytics Designer, Dashboards, and Metric Editor.
See the Change Display Language section for details.
GoodData.UI 10.9.0
The newest version of GoodData.UI contains the following change:
You can now exclude specific attributes from the drill-down intersection. To configure this, use the addDrillDownForInsightWidget
and modifyDrillDownForInsightWidget
commands. Be aware that this may introduce breaking changes.
Upcoming Change - Improved Attribute Filters
We are going to update attribute filters handle values with non-unique secondary labels, such as users sharing the same User Name.
Current Behavior:
When an attribute (e.g., User) has a unique primary label (e.g., User ID: 1234) and a more readable secondary label (e.g., User Name: John Doe), filtering by the User Name (if multiple users are named John Doe) results in all John Does being combined into a single filter value.
New Behavior:
The improved filter will display each attribute value even if the secondary label is not unique. This means you will see all instances of John Doe separately, with a tooltip showing the primary label (e.g., User ID) to help differentiate them. The filter’s behavior will be consistent across dashboards, visualizations, and drilling or exploring further interactions, regardless of which label is displayed.
This change is straightforward for end users. However, the metadata will have a new ‘Display as label’ parameter to indicate which label should represent the attribute in the GUI. This parameter must be considered when using filters in dashboards, visualizations, drilling, POST messages and events, SDK filter definitions, and cross-filtering. From now on, the filter will always be defined by the attribute’s primary label and values, which you should reflect when defining external filters (e.g., in POST messages).
We do not expect any changes to existing dashboards will be needed. The selection of text from the secondary label will be automatically transformed into a selection of individual attribute values with the value of the secondary label.
More details will be provided in upcoming release notes.
GoodData Python SDK 1.25.0
New version of the Python SDK is available today. Please note that in this version we have dropped support for Python version 3.8, please ensure your Python version is up to date if you update to this version of GoodData Python SDK. For details see the changelog.
Rollup Totals
We are introducing a new type of total that aligns with the metric it aggregates. For example, if the metric is SUM
, the rollup will also use SUM
, and so on.
Rollup totals are “smart” aggregations. They are particularly useful for tables displaying metrics that represent average values, helping to avoid aggregations like averages of averages.
Example:
Won Metric: The rollup represents the sum of all regions’ won amounts, making the
Sum
andRollup (Total)
equal.Avg. Won Metric: Instead of averaging the row’s values (which are already averages), the rollup averages the original underlying data before it was aggregated by the Won metric and divided into regions like East Coast and West Coast. Consequently, the value of
Avg
(an average of averages) differs from theRollup (Total)
average (an average based on the original data).
See Rollup Totals for details.
Multiple OIDC Providers per Organization (Beta)
We are introducing a new feature that allows you to set up specific OIDC providers for your organization. Whether your company uses multiple identity providers or your tenants prefer to use their own, this feature provides the flexibility to support them. See Multiple OIDCs.
Please note that this is a beta feature currently in early development, so its functionality is limited at this stage.
Disable Passing Filters in Drill-Throughs
You can now choose to exclude certain dates or attributes from being applied as filters when drilling into visualizations, dashboards, or drill-downs. This allows for more flexible data exploration by controlling which filters are passed during drills. See Disable Passing Filters in Drill-Throughs for more details.
Multiple Data Sources in LDM (Beta)
We are introducing the ability to use datasets from different data sources in an LDM and connect them using common date dimension datasets. This allows you to apply a common date filter across datasets from different data sources. See Using Multiple Data Sources in an LDM.
Please note that this is a beta feature currently in early development, so its functionality is limited at this stage.
Upcoming Change - Improved Attribute Filters
We are going to update attribute filters handle values with non-unique secondary labels, such as users sharing the same User Name.
Current Behaviour:
When an attribute (e.g., User) has a unique primary label (e.g., User ID: 1234) and a more readable secondary label (e.g., User Name: John Doe), filtering by the User Name (if multiple users are named John Doe) results in all John Does being combined into a single filter value.
New Behavior:
The improved filter will display each attribute value even if the secondary label is not unique. This means you will see all instances of John Doe separately, with a tooltip showing the primary label (e.g., User ID) to help differentiate them. The filter’s behavior will be consistent across dashboards, visualizations, and drilling or exploring further interactions, regardless of which label is displayed.
This change is straightforward for end users. However, there will be a new Display as label
parameter in the metadata to indicate which label should represent the attribute in the GUI. This parameter must be considered when using filters in dashboards, visualizations, drilling, POST messages and events, SDK filter definitions, and cross-filtering. From now on, the filter will always be defined by the attribute’s primary label and its values, which you should reflect when defining external filters (e.g., in POST messages).
We do not expect any changes to existing dashboards will be needed. The selection of text from the secondary label will be automatically transformed into a selection of individual attribute values with the value of the secondary label.
More details will be provided in upcoming release notes.
GoodData Python SDK 1.22.0
We are also releasing a new version of the Python SDK today. This update includes only minor changes, such as version bumps, for details see the changelog.
GoodData.UI 10.5.0
Today we have released new version of GoodData.UI with the following notable changes:
- You can now specify the
returnTo
parameter with the backenddeauthenticate
function for a more seamless user experience. - The export function now supports PDF options, offering greater flexibility in how you share your data.
- The
visualizationObject
will now be used instead ofexecutionResult
for export operations whenever possible, improving the efficiency of your exports.
Support for Uploading CSVs Is Out of Beta
We are excited to announce that uploading CSV files as a data source is now fully supported and out of beta! You can now assemble a data source using an unlimited number of CSV files, with each file up to 200MB and a combined limit of 1GB. You can also disable this feature using the API. See Upload CSV Files.
Snowflake Data Sources Support Key-Pair Authentication
We now support key-pair authentication for Snowflake data sources. This secure method allows you to connect using private and public key pairs, enhancing your data protection. See Create a Snowflake Data Source.
Support for MotherDuck Data Source
You can now connect directly to a MotherDuck database and create a MotherDuck data source within GoodData. This new feature expands your data connectivity options, allowing you to integrate MotherDuck seamlessly into your workflows. See MotherDuck Data Source.
New Dashboard Filter Settings
We’ve added new options to give you more control over dashboard filters. You can now disable the “Reset All Filters” button to ensure users follow a guided data experience. Additionally, you can prevent filter changes from being saved in the user’s browser, so each visit shows the default filter settings. See Disable Resetting Filters.