Plugins 〉Dynamic Text

Volkov Labs

Sign up to receive occasional product news and updates:

Latest webinars

Dynamic Text

  • Overview
  • Installation
  • Change log
  • Related content

Dynamic Text Panel for Grafana


Grafana CI codecov CodeQL


A Dynamic Text visualization panel is a Grafana plugin that transforms monotone text/table data into vibrant, easy-to-read information cards. The panel supports variables, Markdown and Handlebars.

The Dynamic Text visualization panel lets you define a text template using the data from your data source query.

Dynamic Text Plugin for Grafana | Markdown, HTML and Handlebars to transform data visualizations


  • Grafana 8.5+, Grafana 9.0+ is required for major versions 2 and 3.
  • Grafana 7.0+ is required for major version 1.

Getting Started

The Dynamic Text visualization panel can be installed from the Grafana Catalog or utilizing the Grafana command line tool.

For the latter, use the following command.

grafana-cli plugins install marcusolsson-dynamictext-panel


  • Uses Monaco Code Editor with Auto formatting to update Templates, JavaScript Code and Styles.
  • Supports Markdown and Handlebars.
  • Uses markdown-it for rendering Markdown to HTML.
    • Supports Code syntax highlight using a11y styles.
  • Sanitizing
    • HTML inside templates is sanitized using XSS.
    • Can be disabled using Grafana configuration disable_sanitize_html.
  • Allows to display nested objects using {{json object}} Handlebars helper.
  • Allows displaying Time global variables (__to and __from) as seconds, ISO, and formatted using dayjs.
  • Allows adding Handlebars helpers and Event handlers.
  • Allows adding CSS styles.
  • Supports Internationalization using custom helpers.


ContentExplains how to create a visualization template for your data.
RecipesUseful snippets that you can use in your templates.
Release NotesStay up to date with the latest features and updates.


DataDemonstrates how to use the Every Row and All Rows options.
JavaScript CodeDemonstrates how to add Handlebars helpers and Event handlers.
StylesDemonstrates how to add CSS styles.
HelpersHelpers are functions that let you perform basic text transformation within your template.
VariablesDemonstrates how to use variables.


This video outlines all the new features we implemented, including the most asked-for JavaScript area code.

JavaScript code in the Dynamic text panel | Grafana functionality explodes

Three plugins that make Grafana complete. Dynamic Text, Data Manipulation, and Apache ECharts are all you need to create functional real-world web applications.

Magic JavaScript trio for Grafana | Dynamic Text, Data Manipulation and Apache ECharts plugins


We love to hear from you. There are various ways to get in touch with us.

  • Ask a question, request a new feature, and file a bug with GitHub issues.
  • Sponsor our open-source plugins for Grafana with GitHub Sponsor.
  • Star the repository to show your support.


Apache License Version 2.0, see LICENSE.

Installing Dynamic Text on Grafana Cloud:

For more information, visit the docs on plugin installation.


3.1.0 (2023-03-12)

Features / Enhancements

  • Add Time Zone and Range parameters for Javascript Code (#155)
  • Update to Grafana 9.4.3 (#156)
  • Add Magic (JavaScript) Trio tutorial in README (#157)
  • Update replace variables with scoped function (#160)
  • Add Replace variables and Location service parameters for Javascript Code (#160)

3.0.0 (2023-02-19)

Breaking changes

The default Content and JavaScript editors are not displayed by default unless values were modified. To display required editors, including the new Styles, they should be selected in the list.

Features / Enhancements

  • Update README features with new JavaScript Code Editor (#141)
  • Update to Grafana 9.3.6 (#147)
  • Update CI and Release workflows (#147)
  • Update README to include JavaScript tutorial (#148)
  • Add custom styles (#149)
  • Add option to display optional editors (#149)
  • Remove Panel Padding (#150)
  • Add Code Syntax Highlight (#151)
  • Add Breaking Changes for displaying optional editors (#152)

2.2.0 (2023-01-09)

Features / Enhancements

  • Add JSON helper to show objects and arrays (#121)
  • Update to Grafana 9.3.1 (#122)
  • Update Documentation links (#130, #131)
  • Add Split Helper (#132)
  • Refactor Text Component and Styles (#133)
  • Add JavaScript Code to add Handlebars helpers and Event handlers (#134)
  • Update default Content to {{json @root}} and Code Editor height to 200px (#134)
  • Update CSS to fit images to screen (#135)
  • Add getLocale() parameter to JavaScript Code (#137)

2.1.0 (2022-11-27)

Breaking changes

Refactoring may introduce breaking changes. Please test before upgrading in Production.

Features / Enhancements

  • Fix broken link in README (#111)
  • Update CI to upload signed artifacts (#113)
  • Add feature of parsing time formatting syntax (#86)
  • Fix data rendering when using transformations (#98)
  • Update Panel Options to Monaco Code Editor (#114)
  • Increase Test Coverage (#114)
  • Refactor and update images (#116)
  • Refactor Alert Message and Text Options (#117)
  • Add Support for Disable Sanitize HTML configuration (#118)

2.0.0 (2022-11-02)

Breaking changes

This release bumps the minimum required Grafana to >=8.5.

Features / Enhancements

  • Maintained by Volkov Labs (#100)
  • Updated based on Volkov Labs Panel Template (#100)
  • Update to Grafana 9.1.6 (#104)
  • Add "Dynamic Text Plugin for Grafana" video in README (#106)
  • Update CI to Node 16 and Synchronize with Release workflow (#107)
  • Update to Grafana 9.2.2 (#108)
  • Update screenshot and provisioning (#109)

1.9.0 (2022-01-09)

Features / Enhancements

  • Add an option to render template for each row or as a single template. Useful for when you want to create tables from the query result. (#53) Thanks @andykingking.

Bug fixes

  • The dropdown for selecting between multiple frames wasn't visible due to overflow. (#65)

1.8.0 (2021-11-19)

Features / Enhancements

  • Add contains helper (#48)
  • Upgrade dependencies

1.7.2 (2021-06-21)

Features / Enhancements

  • Improve error handling. Avoids having to refresh the dashboard on template errors.

1.7.1 (2021-06-15)

Features / Enhancements

  • Update docs and metadata
  • Upgrade dependencies

1.7.0 (2021-03-08)

Features / Enhancements

  • Add options for default content for empty query results (#15)

1.6.0 (2021-03-04)

Features / Enhancements

  • Improved error handling

1.5.0 (2021-02-16)

Features / Enhancements

  • Avoid recompiling templates on every render

1.4.0 (2021-01-08)

Features / Enhancements

  • Update @grafana/* packages
  • Improved styling for tables and blockquotes

1.3.0 (2021-01-08)

Features / Enhancements

  • Support for HTML tags in templates (#4)
  • Add additional conditional operator (#3)

1.2.1 (2020-11-27)

Features / Enhancements

  • Updated @grafana dependencies from ^7.0.0 to ^7.3.0
  • Improved release process using the new GitHub workflows for Grafana plugins
  • Add screenshot