miinideckmiinideck
PricingUse casesBlog
Sign in
Comparisons

Best free way to share an interactive chart as a link

A screenshot, an HTML attachment, Datawrapper, Flourish, Tableau Public, a public site, a drive, or a private link: what each one is built for, who ends up able to see the chart, and why the same Plotly chart can be 4.8 MB or 12 KB.

By miinideck·October 8, 2026·Updated October 13, 2026·9 min read

You built the chart in a notebook: a Plotly figure with hover values, a legend you can click, a zoom that finds the odd week in the data. The person who needs to see it runs no Python and never will. Paste a screenshot into the email and all of that is gone. The first question they ask ("what's that spike in March?") is the one the screenshot can't answer.

There are plenty of ways to put a chart on a link. They differ most in one thing: who ends up able to see it.

TL;DR
  • First check which situation you're in: do you already have the chart as a file, or are you still choosing a tool to make it? This page is mostly for the first.
  • If the chart is meant for the public, Datawrapper and Flourish are built for publishing and embedding, and Tableau Public for BI work. Publishing there is public by design.
  • If you have an HTML export and it's going to specific people, a private link to that one file keeps it interactive and out of search.
  • In our test, the same Plotly chart exported at 4.8 MB with the library packed in, or 12 KB loading it from a CDN. Pick based on how it's going to travel.
  • Whatever you use, the data behind the chart travels with it. Trim it before you export.

Do you have a chart file, or are you still picking a tool?

This matters more than it looks.

If you're still picking, a hosted charting tool is a real option. You upload the data, build the chart in their editor, and publish it from there. Datawrapper and Flourish are very good at that.

If you already have the chart, say a Plotly, Bokeh or Altair figure you've spent an afternoon on, those same tools mean building it again from the data in someone else's editor. What you have is code that can write a self-contained HTML file. The question is where that file should go.

The rest of this page compares both kinds of route, because people search for both, but it's written for the person holding the file.

What are the ways to share an interactive chart?

WayWhat the reader getsWhat it's built forWhere it gets awkward
A screenshot or PNGA picture of the chartA slide, a quick answer in chatNothing hovers, zooms or toggles, so follow-up questions come back to you
An HTML attachmentA file in their downloads folderHanding over the file itselfSome mail systems strip or block scripts in HTML attachments, so the chart can arrive dead
Datawrapper or FlourishA published, embeddable chartCharts for articles and public reportsYou rebuild the chart in their editor, and publishing on the free plans makes it public
Tableau PublicA published visualisationPublic BI dashboards and data portfoliosPublic is the design: what you save there can be seen by anyone
GitHub Pages or NetlifyA page on a public websitePublic sites that live with their codeThe page is on the open web, and setup is heavier than one chart needs
Google Drive or DropboxA file in a drive viewerFiles a team keeps working onA drive shows or downloads the HTML file rather than running the chart
A private-link host (miinideck)The live chart in their browser, from an unguessable address kept out of searchA finished chart going to specific peopleIt hosts the file you made; it doesn't build charts or connect to live data

Whether a published chart is public is the detail that decides most of this. It's set by each service's plans, and plans change, so it comes from their own pages and it's dated.

Who can see what you publishA private or password option
DatawrapperAnyone: once you publish, the chart is publicNot for published charts, on any plan
FlourishAnyone, on the free planPassword-protected publishing on the Publisher and Enterprise plans
Tableau PublicAnyone; it's a public platformNot on Tableau Public; Tableau points private data to its other products
GitHub PagesAnyone on the internetNot on the free plan
miinideckOnly people who have the link; kept out of searchA password, free on any account

Checked against each service's own pricing and help pages on 1 October 2026. Every service sets its own plans and changes them without telling us, so check their site for what's current. Our own row comes from our plan limits.

Should I pack the chart library into the file or load it from a CDN?

An interactive chart is two things: your data, and the JavaScript library that draws it. The library can live inside the HTML file, or the file can fetch it from a CDN (a public server that hosts the library) when someone opens it. We exported the same Plotly figure both ways on 30 September 2026.

Packed in (the default for fig.write_html()): the file came out at 4.8 MB. It works with no internet connection, from a downloads folder, anywhere. The cost is the size.

From the CDN (fig.write_html("chart.html", include_plotlyjs="cdn")): the file came out at 12 KB. The catch is that the reader's browser has to reach Plotly's CDN when they open it. On a locked-down corporate network, or offline on a train, the chart doesn't appear.

How to choose:

  • Sending it as an attachment, or the reader might open it offline: pack it in.
  • Hosting it on a link the reader opens in a browser: either works. The CDN version loads faster on a phone. The packed version doesn't depend on anyone else's server.
  • Uploading with no account: the size limit decides for you. See the numbers at the end of this page.

Bokeh and Altair make the same choice with different switches: Bokeh between inline and CDN resources, Altair with an option to inline its libraries when saving. We only measured Plotly. The trade-off is the same.

A chart library that fails to load is the most common way a chart file breaks on delivery. If an AI wrote the chart for you, prompt patterns for a self-contained chart or dashboard covers the prompts that stop that from happening.

Which one should I use?

  • The chart is for the public, embedded in an article or a public report. Datawrapper or Flourish. Publishing and embedding is what they're for, and they do it well.
  • You work in BI and publishing publicly is fine. Tableau Public.
  • It's part of a public site that lives in a repository. GitHub Pages or Netlify. For the full field of public hosts, see the single-file hosting comparison.
  • It goes on a slide and nobody will ask a follow-up. A PNG is honestly fine.
  • You have the chart as an HTML file and it's going to specific people. Share that file as a private link.

What won't any of them fix?

The data travels with the chart. To show a hover value, the browser has to have that value, so an interactive chart carries its data inside the file. Anyone who opens it can read the data with the browser's developer tools, whatever host you use. If the figure plots row-level customer data and the reader only needs monthly totals, aggregate before you export.

A file doesn't update itself. An exported chart is a snapshot of the data at export time. If the reader needs numbers that stay current without you re-exporting, that's a dashboard with a live connection, and it needs a server behind it. How to share a dashboard without giving a login covers when that's worth it.

Anything on a screen can be captured. A private link controls who can open the chart, not what they do once they're looking at it.

When a private link is the right shape

That's the job miinideck is built around: a finished chart, going to specific people, still interactive when it arrives.

You upload the HTML file your code wrote. The reader opens the link in any browser and gets the real chart: hover values, legend toggles, box zoom, double-click to reset. There's no Python, no account and nothing to install on their side.

The link ends in 32 random characters, so nobody can guess it, and the page tells search engines not to index it. That keeps unreleased numbers out of search. Anyone you send the link to can open it, and so can anyone they forward it to. When the figure carries revenue or headcount, put a password on it. It's free on any account.

After you send it, the link is still yours:

  • Re-export and replace the file when the data refreshes, and the link in their bookmarks shows the new chart.
  • Let it expire when it's a point-in-time read that shouldn't be quoted next quarter. Free-account links run 7 days by default, and you can keep one on permanently. On paid plans you pick a date or leave it on.
  • Collect comments. Turn on Review and readers can leave comments on the page without an account. It's free on every plan.

Here are the size limits. A No-account upload takes files up to 3 MB, runs for 7 days, and can't be replaced. The packed-in Plotly export from our test was over that line, and the CDN version was well under it. The Free tier takes 10 MB per file. Solo ($4.99/mo) takes 25 MB and Studio ($14.99/mo) takes 50 MB.

For how this fits alongside every other kind of file you might need to hand over, see where to put a file online.


If your chart is a Plotly figure, share a Plotly chart walks through the export and the upload step by step.

More in Comparisons

Best free way to send an HTML email to a client for approval before it goes out

A test send, your ESP's preview, a rendering-test service, a screenshot, the .html as an attachment, or a hosted page link: what each one shows the client, what a browser preview can and can't prove about an email, and the combination that gets sign-off without surprises.

October 14, 2026·8 min read

Best free way to share API docs with a partner before launch

Postman's published docs, SwaggerHub, a hosted docs portal, GitHub Pages, the raw OpenAPI file, or one rendered HTML page behind a private link: what each is built for, how to turn a spec into a single page with one command, and what to strip out before anyone outside sees it.

October 11, 2026·8 min read

Quarto Pub vs RPubs vs Posit Connect vs GitHub Pages: where to publish a Quarto or R Markdown report

Quarto Pub, RPubs, Posit Connect Cloud, GitHub Pages or Netlify, an HTML attachment, or a private link: what each one is built for, why a rendered report loses its styling when you send the HTML on its own, and which route fits a report meant for a client or an advisor.

October 10, 2026·9 min read

Send your own private link.

miinideck turns a single HTML file into an unguessable link with optional password and expiry. Default-private, never indexed.

See pricingTry it free →
miinideck

HTML files, finally as links — for AI builders, agencies, and consultants. Default-noindex, default-private, default-yours.

Product

  • Pricing
  • Use cases
  • Free HTML hosting
  • Try it free

Resources

  • Blog
  • Free tools
  • Featured on
  • Report abuse

Legal

  • Privacy
  • Terms
Listed onmiinideck listed on Product Huntmiinideck listed on Faziermiinideck listed on TheSaaSDirmiinideck listed on AIToolHuntmiinideck listed on LaunchNest
© 2026 miinideckMade for people who don't want their work indexed.