timedatelive

Embeddable clock, countdown and time zone widgets

Free to use · no signup · no tracking · last checked 2026-08-01

These are three small, self-contained widgets you can drop into any website, blog post, documentation page, intranet dashboard or Notion embed. One shows the live local time in any of our five hundred cities. One counts down to a date in a named time zone. One converts between two zones and tells you whether both ends are inside working hours right now.

They are free, there is nothing to sign up for, and they set no cookies and send no data anywhere. Pick a widget below, choose a city, and copy the two lines of HTML.

What each widget does

All three are single HTML files of roughly four kilobytes with the CSS and JavaScript inline. They read the time from the visitor’s own browser and format it with the browser’s built-in IANA time zone database, which is why daylight saving is correct without us having to ship a table of transition dates. Nothing is fetched from our servers after the initial load, so the widget cannot slow your page down or break when we deploy.

WidgetFileParametersSuggested size
Live city clock/embed/clock.htmltz, city, slug, flag, theme=dark, h12=1340 × 212
Countdown/embed/countdown.htmltitle, to (ISO date-time), tz, theme=dark400 × 200
Time zone converter/embed/converter.htmlfrom, to (IANA zones), fl, tl (labels), theme=dark440 × 268

Every parameter is optional. The clock falls back to UTC, the countdown to twenty-four hours from now, and the converter to New York → London. The builder below writes the query string for you, so you do not need to memorise any of this.

The countdown’s to value is read as wall-clock time in the zone you name, not in your visitor’s local zone. If you set to=2027-01-01T00:00:00 and tz=Asia/Tokyo, every visitor sees the same countdown to midnight in Tokyo, wherever they are. Pass an ISO string that already carries an offset or a Z and we use that instead.

Build your embed

Choose the widget, choose the city, and copy what appears underneath. The preview is the real widget running live, not a picture of one.

Suggested iframe size: 340 × 212. The widget is fluid below that width.

The credit line, and why we are asking

Each widget carries a small credit link inside itself. You are free to keep that and nothing else — the widget will work exactly the same, and we are not going to check.

But we would rather tell you the truth about why the snippet also includes a visible line of text underneath the iframe. A link inside an iframe points at a separate document from the search engine’s point of view. It is a link from timedatelive.com/embed/clock.html to timedatelive.com, which is to say a link from us to ourselves, and it is worth nothing at all in ranking terms. The only part of this arrangement that helps us is the ordinary <a> in your own page, outside the frame.

So that is the deal, stated plainly: the widget is free and useful whether or not you keep the line, and the line is the part that pays us back. Most widget pages hide this and hope you paste without looking. We would rather you decided on purpose.

What you may do. Use the widgets on personal sites, company sites, client work, paid products, intranets and documentation, on as many pages as you like, without asking us. What we ask you not to do. Re-host a modified copy of the widget file on your own domain while leaving our name on it, or wrap it in something that makes it look like we endorse your product. If you want a version without our branding for an internal tool, write to us and the answer is very likely yes.

Technical notes

The practical details, so you can decide whether this belongs on your page before you paste it.

  • No cookies, no storage, no analytics. The widgets read nothing and write nothing. There is no beacon and no third-party script. The utm_source on the credit link is a query parameter on a link a human has to click, not a tracker.
  • No network requests after load. The time comes from the visitor’s clock and the zone rules from their browser. If our servers go down, an already-loaded page keeps ticking.
  • Roughly 4 KB each, and one request. The CSS and JavaScript are inline. Add loading="lazy", which the generated snippet does, and a widget below the fold costs your visitor nothing until they scroll to it.
  • Daylight saving is handled for you. Formatting goes through Intl.DateTimeFormat with a named IANA zone, so a clock set to Europe/Lisbon moves itself in late March and late October. Half-hour and quarter-hour zones such as Asia/Kolkata and Asia/Kathmandu are correct for the same reason.
  • Auto-resize, if you want it. The clock posts {tdlWidget:"clock", height:…} to the parent window with postMessage. If you already have a resize listener, it will pick that up; if you do not, the fixed height in the snippet is fine.
  • Transparent background. The widget body is transparent and the card sits on top, so it inherits whatever your page is doing behind it. Use theme=dark on dark pages to flip the card itself.
  • Accessibility. The generated snippet sets a title on the iframe describing what it contains, because a frame without one is announced as an unlabelled frame by screen readers.

Common follow-up questions

Is this really free, and will it stay free?

It is free, and there is no account, no key and no rate limit. It stays free because it costs us almost nothing: the files are static, they are served from the same host as the rest of the site, and they make no requests back to us once loaded. If that ever changed we would leave the existing files where they are rather than break pages that already embed them.

Can I use a city that is not in your list of five hundred?

Yes. The city name in the clock is just a label, and the zone is any IANA identifier, so ?tz=Africa/Kampala&city=Kampala&flag=%F0%9F%87%BA%F0%9F%87%AC works even though Kampala is not one of our five hundred. The only thing you lose is the link back to a city page, since there is not one — leave slug off and the credit points at the homepage instead.

Why does the converter say we are outside working hours when we are not?

It uses a fixed nine-to-six window at both ends, which is a simplification and will be wrong for anyone on a different schedule. It is meant as a glanceable signal, not a scheduling authority. If overlap matters to your decision rather than your afternoon, the overlap analysis is the more careful treatment.

Does the countdown work for a date in the past?

It replaces the digits with a short completion message and stops the timer, so a page with a stale countdown degrades quietly rather than showing negative numbers.

Will this work inside Notion, Ghost, WordPress or a static site generator?

Anywhere a plain <iframe> is allowed, yes. Notion and similar tools that ask for a URL rather than HTML will accept the src on its own — copy just the URL from the snippet. Platforms that strip iframes entirely, which includes most hosted comment systems and some locked-down CMS editors, will not work, and there is no version of this that gets around that.