Looker will occasionally make updates to product design and functionality that render an existing feature’s functionality obsolete. In some cases, the feature may be designated as a legacy feature — a feature that remains backward compatible for existing workflows. A legacy feature provides the option for existing users to continue to use the feature’s functionality. When a legacy feature is enabled, the Looker instance cannot support the old and new functionality simultaneously.
After you learn about a new legacy feature, you should start planning to migrate to the new functionality before you disable the legacy feature.
See the Legacy feature schedule section on this page for version information about when each legacy feature is introduced, disabled, and removed from Looker.
Learning about new legacy features
Looker announces new legacy features in the release notes. The Current legacy features table on this page provides a timeline showing when current legacy features will be disabled and formally removed from the Looker product. See the Previously removed legacy features table on this page for Information about legacy features that have already been removed from Looker.
Enabling and disabling legacy features
New features that replace legacy features are often simpler, more reliable, more performant, and/or more useful than the features they replace. To take advantage of the improved functionality of a new feature that replaces a legacy feature, migrate away from the legacy feature. Once that transition is complete, a Looker admin can disable the legacy feature on the Legacy Features page in the Admin panel.
The Legacy Features page appears in the Admin panel only if there are legacy features available for that Looker instance. The number located next to the Legacy Features admin menu item indicates the number of legacy features that are enabled.
When Looker is updated, some legacy features are enabled by default, which means that the old feature is still active. When you’re ready to move to the new feature, you can turn the legacy feature off.
If your Looker instance was created after a legacy feature was removed, that feature won’t appear on the Legacy Features page and admins won’t be able to turn it on. The Legacy Features page won’t appear in the Admin panel if there are no legacy features available to your instance for your current Looker release.
If you update your instance to a version in which a legacy feature is disabled by default, your instance will use the new feature behavior automatically.
Migrating away from legacy features
Eventually, all legacy features are removed from Looker, so Looker strongly recommends moving away from their use. Start planning your migration as early as possible to avoid disruptions to your workflows.
Planning your migration
Looker announces new legacy features in the release notes. When needed, Looker provides transition guidelines for migrating away from legacy features. The Legacy feature schedule on this page provides a timeline that shows when current legacy features have been or will be formally removed from the Looker product. The schedule also notes when the features will be disabled by default.
Leave the legacy feature enabled while you implement any necessary transition guidelines. Once these guidelines have been implemented, disable the legacy feature. Be mindful of migrating away from the legacy feature before updating your Looker instance to the version in which the legacy feature is disabled by default. If you have any issues implementing the improved replacement feature, open a support request in Looker’s Help Center by clicking Contact Us.
Legacy feature schedule
- Introduced indicates the version in which the feature becomes a legacy feature and its toggle defaults to enabled. Instances created after the version in which a legacy feature is declared introduced will not include the feature.
- Disabled indicates the version in which the legacy feature is turned off for all instances that upgrade to the release; however, the feature toggle remains available (in that version) for the purposes of remediation, if required.
- Removed indicates that the feature is gone and the toggle for the legacy feature no longer exists in the product.
Current legacy features
|Use old dashboard routes|
|When enabled, legacy dashboards use
||21.18||21.20||22.16 (September 2022)||Active||Upgrading the default dashboard experience for all Looker users|
|Add Looks to dashboards|
|Allows users to add Looks to a dashboard from the dashboard edit mode. This functionality will be replaced with other saved content options in the future.||21.12||21.12||22.12 (July 2022)||Active||Adding saved content to dashboards|
|Legacy Value Formatting|
|Enables legacy value formatting. Legacy value formatting is less performant but may resolve unknown differences from current value formatting.||21.4||21.4||22.6 (April 2022)||Active|
|Legacy Query Streaming|
|Enables legacy query streaming. Legacy query streaming is less performant but may resolve unknown differences from the new streamers.||21.8||21.8||22.6 (April 2022)||Active|
|Use old navigation and legacy routing|
|When enabled, legacy navigation and routing is implemented. Legacy routing is less performant and old navigation menus may have unused or redundant options.||21.20||22.0||22.2 (February 2022)||Active|
|Revert to Legacy Dashboards|
|Allows users to revert dashboards to the legacy dashboard layout, look, and feel. This does not affect any previously created content.||7.18||21.0||22.0 (January 2022)||Active||Transition Guidelines|
|Require Authentication to Retrieve API Specifications|
|Requires authentication to retrieve API specifications, or to view API documentation via the legacy API Docs page.||21.14||21.18||22.0 (January 2022)||Active|
|Allow XHTML-style Empty Tags in Custom Visualizations|
|Bypasses protections against CVE-2020-11022 in Custom Visualizations. This restores support for self-closing XHTML style tags (e.g. <div />) to jQuery when used in Custom Visualizations.||21.20||22.20||22.20 (November 2022)||Active||Allowing XHTML-style empty tags in custom visualizations Help Center article|
Previously removed legacy features
|Old field chooser||3.18||3.38||Removed in Looker 3.38||Field labels can override view label||3.16||3.44||3.46||Removed in Looker 3.46||Transition Guidelines|
|Leading period in field names||3.16||3.44||3.46||Removed in Looker 3.46||Transition Guidelines|
|Uppercase labels in download and chart configurations||3.16||3.44||3.46||Removed in Looker 3.46||Transition Guidelines|
|Send email from email@example.com||3.32||3.44||3.46||Removed in Looker 3.46||Transition Guidelines|
|Default Redshift PDT distribution style EVEN||3.36||3.44||3.46||Removed in Looker 3.46||Transition Guidelines|
|$$ substitution||3.46||3.48||3.50||Removed in Looker 3.50||Transition Guidelines|
|Joins declared in views||3.46||3.48||3.50||Removed in Looker 3.52||Transition Guidelines|
|LookML “scoping” parameter||3.46||3.48||3.50||Removed in Looker 3.52||Transition Guidelines|
|Legacy drill behavior||3.42||4.8||4.22||Removed in Looker 4.22||Transition Guidelines|
|Add unscoped field name alias||3.52||3.54||3.56||Removed in Looker 4.6||Transition Guidelines|
|Unsafe Liquid functions||3.48||4.20||5.0||Removed in Looker 5.0||Transition Guidelines|
|Non-symmetric aggregates||3.16||4.20||5.0||Removed in Looker 5.0||Transition Guidelines|
|Row limit only||3.16||4.20||5.0||Removed in Looker 5.0||Transition Guidelines|
||3.38||5.0||5.4||Removed in Looker 5.4||Transition Guidelines|
|Deprecated LookML parameters||3.16||5.0||5.4||Removed in Looker 5.4||Transition Guidelines|
|Legacy Oracle security settings||3.50||5.0||5.4||Removed in Looker 5.4||Transition Guidelines|
|Single row table headers||3.52||5.0||5.4||Removed in Looker 5.4||Transition Guidelines|
|JSON numbers as strings||3.52||4.0 & 5.0||5.4||Removed in Looker 5.4||Transition Guidelines|
|Coerce dimensions to measures||3.54||5.0||5.4||Removed in Looker 5.4|
|Default query result persistence is five minutes||4.2||5.0||5.4||Removed in Looker 5.4|
|YAML-based LookML for modeling||4.4||4.10 & 5.0||5.4||Removed in Looker 5.4||Transition Guidelines|
|Implicit dashboard default timezone||4.10||5.0||5.4||Removed in Looker 5.4||Transition Guidelines|
|Allow unlimited downloads that might crash Looker||4.14||5.0||5.4||Removed in Looker 5.4||Transition Guidelines|
|User-based dev mode||4.16||4.16 & 5.0||5.4||Removed in Looker 5.4||Transition Guidelines|
|Allow creating legacy API-only users||4.0||4.0 & 4.20||5.12||Removed in Looker 5.12||Transition Guidelines|
|Allow calling legacy query API||5.2||5.6||5.12||Removed in Looker 5.12||Transition Guidelines|
||4.14||5.22||6.0||Removed in Looker 3.38||Transition Guidelines|
|Native derived tables convert dates and yesnos to strings||5.22||6.0||6.6||Removed in Looker 6.6||Transition Guidelines|
|Legacy visualizations||6.0||6.0||6.6||Removed in Looker 6.6||Transition Guidelines|
|Show full field name||6.8||6.8||6.12||Removed in Looker 6.12||Transition Guidelines|
|Legacy rendering||6.4||6.6||6.18||Extended from Looker 6.10 to Looker 6.18. Removed in 6.18.||Transition Guidelines|
|Legacy .strings files for localization||7.2||7.8||7.12||Removed in Looker 7.12||Transition Guidelines|
|IDE Folders Toggle||7.0||7.10||7.12||Removed in Looker 7.12||Migrating to IDE Folders|
|Snowflake Unquoted Database Name||7.8||7.12||7.16||Removed in Looker 7.16||Snowflake connection documentation|
|Treat the Datatype Datetime as a Timestamp||7.14||7.20||21.4||Removed in Looker 21.4||
|Unsafe Custom Visualizations||7.20||21.6||21.6||Removed in Looker 21.6||Admin Settings – Visualizations documentation|
|Revert to Legacy Explore Field Picker||21.12||21.12||21.16||Removed in Looker 21.16||Legacy field picker documentation|
|Legacy Branding||7.18||7.20||21.18||Removed in Looker 21.18|
|Syntax Tolerant Liquid||21.6||21.14||21.20 (November 2021)||Active||Looker Liquid Syntax Parser|
|Save to shared space with
||21.4||21.16||21.20 (November 2021)||Active|