Skip to content


Datapane Reports are data-centric documents which you can generate using Python. You can think of them as replacements for sending a PDF or PowerPoint, and they can be exported as standalone HTML files and sent over Slack or Email. Reports are often created programmatically from inside other platforms, such as a data pipelines ("LightGBM training results v230"), CI, or generated on a cadence ("Monday's sales forecast").


Generating a Report is somewhat similar to generating static-site generator for HTML, like Hugo or Jekyll

Datapane Reports provide the fastest way to share with others, for instance:

  • Export as a¬†standalone HTML file (with all it's assets inline) which you can share on Slack or Email
  • Host on GitHub Pages or S3 for a public presentation
  • Embed within your own internal applications


The example below builds upon the example in the previous section, comprised of a heading, figure, interactive figure, and interactive data table.

Datapane makes it simple to convert this into a Report, as per the examples below (see the API reference for further details).

import altair as alt
import datapane as dp
from vega_datasets import data

df = data.iris()

fig = (
    .encode(x="petalLength", y="petalWidth", color="species")

view = dp.Blocks("# My report", dp.Plot(fig), dp.DataTable(df))

Saving Reports

Reports can be saved / exported as standalone files which can be shared without a server. All data and plots are encapsulated in a single HTML file, which provides a secure and low-barrier sharing method. Views can be exported as a standalone report using dp.save_report:

# save as a static HTML-based report
dp.save_report(view, path="my_report.html")

You can view the saved report, download it, open it locally, or send via email and slack.


Although standalone and serverless, Internet access is required to retrieve Datapane front-end libraries needed to render the report