PlainSignage

6 min read · Updated September 21, 2026

Display a Google Sheet on a TV, live (step-by-step)

Show a Google Sheet on a TV screen that updates itself: publish the sheet as CSV, add the Live sheet widget, choose table, KPI or progress, set the refresh interval. Examples for sales boards, rosters and price lists.

In short

The fastest way to display a Google Sheet on a TV is to publish the sheet to the web as CSV and read that link with a signage widget. In PlainSignage the Live sheet widget does exactly that: paste the link, pick a design (table, KPI number, progress bar or list) and the screen refreshes every few minutes on any Android TV, Fire TV stick or browser. Whoever edits the sheet updates the TV — no logins, no exports, no screenshots.

Why a sheet is the right source for most screens

Sales targets, the staff roster, today's prices, the production plan, a leaderboard: this data already lives in a spreadsheet that someone updates anyway. Putting the sheet itself on the TV means one source of truth and zero double entry. The screen becomes a window onto the sheet rather than a copy of it.

Google Sheets can publish any tab as a CSV link that updates when the sheet changes. That link is all the Live sheet widget needs.

Step 1 — publish the sheet as CSV

In Google Sheets open File → Share → Publish to web. In the dialog choose the tab you want to show (not “Entire document”) and the format “Comma-separated values (.csv)”, then click Publish and copy the link. It looks like docs.google.com/spreadsheets/d/e/…/pub?output=csv.

Publishing makes that tab readable by anyone who has the link, so keep sensitive columns on another tab. Google republishes changes automatically; “Automatically republish when changes are made” is on by default.

  • Put a header row in row 1 — the widget uses it for column titles
  • One table per tab; no merged cells, no blank rows in the middle
  • Numbers as numbers (no currency symbols in the cell) if you want KPI or progress designs to work

Step 2 — add the Live sheet widget

The Live sheet widget in the PlainSignage designer showing a table from a published Google Sheet

In the PlainSignage designer open Add → Info & numbers → Live sheet, paste the CSV link and choose how many rows to show. Turn on “First row is a header” if you have one. Pick a refresh interval between 1 and 120 minutes; 5 minutes is the default and fine for most boards. The editor shows the real data straight away, so you can size the widget to fit.

Style it with your brand kit: colours, font, an accent for the header, rounded corners. The widget scales its text to the box, so it stays readable on a 55-inch TV across the room.

Try it on your own TV

14-day free trial, no credit card. Your first screen is live in three minutes.

Start your 14-day trial

Step 3 — choose a design

Table shows rows and columns as they are: rosters, price lists, results. KPI takes one cell and shows it huge with a label — “Orders today 47” — ideal for sales boards. Progress compares one cell with a target cell and draws a bar: “€6,420 of €10,000 raised”. List shows the first column as a clean bulleted list, useful for daily specials or announcements that a manager types into the sheet.

Use several widgets from the same sheet on one screen: a KPI from cell B2, a progress bar from B3 and C3, and a table of the top five rows.

Examples that work well

Sales board in a shop or call centre: one KPI per team, a progress bar towards the monthly target, and the chart widget for the trend. Staff roster in a restaurant or clinic: a table with name, shift and station — or the dedicated staff on duty widget if you want photos. Price list for a salon or workshop: a two-column table that the owner edits from their phone. Visitors expected today at reception: the visitor board reads the same kind of CSV with name, company, time, host and room. Production or delivery plan on the warehouse floor: a table that refreshes every minute.

Refresh, caching and what happens offline

The widget re-reads the CSV on the interval you set; Google itself needs up to a couple of minutes to republish an edit, so expect changes on screen within about five minutes at the default. The player caches the last data, so if the internet drops the TV keeps showing the last good table instead of an error. Very large sheets are truncated to the first 500 rows — put the rows you want on top or use a filtered tab.

Alternatives when a sheet is not enough

For data from a system rather than a person, the Live number widget reads one value from any JSON endpoint, the Sales pulse receives orders from Stripe or Shopify webhooks, and the Sensor gauge takes readings pushed to the API. For a fixed table that nobody edits, the Table widget lets you paste cells straight from Excel. All of these are included in the one plan: pricing.

Frequently asked questions

Do I have to make the whole spreadsheet public?

No. Publish only the tab you want to show. Other tabs stay private. Anyone with the CSV link can read that tab, so keep it free of sensitive data.

How fast does the TV update after I edit the sheet?

Google republishes within a minute or two, and the widget refreshes on the interval you set (default 5 minutes, minimum 1). Changes typically appear on screen within a few minutes.

Does it work with Excel or Microsoft 365?

Yes, if the file is shared as a CSV link or via OneDrive's direct-download link. Any public URL that returns CSV works. For Airtable or Notion, export a CSV view or use their JSON APIs with the Live number widget.

Can I show a chart from the sheet?

The Live sheet widget shows tables, one KPI, a progress bar or a list. For bars, lines or a donut, put the numbers into the Chart widget, which you can update from the sheet values.

What if the sheet has formulas?

The published CSV contains the calculated values, so formulas work. Format numbers as plain numbers for KPI and progress designs.

Ready to put it on your screens?

Start a free 14-day trial with every feature and one screen. No credit card, no sales call.

Start free trial