ZeroTick GitHub

Create a new countdown timer

Countdown Timer in a Link

Configure an event, generate a shareable link that stores nothing. No data is sent to any server — all of it lives in the link itself.

Interpreted in your current local timezone, then stored as an absolute moment in the link.

Units to display
At zero

Frequently Asked Questions

How this works, what it does with your data, and what it can’t protect you from.

Making and sharing a countdown

What is this?

A countdown timer where the whole timer lives in the link. You fill out a short form, get a URL, and share it. Anyone who opens it sees a live countdown. No account, no sign-up, no database.

Why is it called ZeroTick?

The tick is the countdown itself — the seconds ticking down to your moment. The zero is everything the page deliberately does without:

  • Zero servers. Nothing runs on a backend; the whole timer is the link.
  • Zero storage. No cookies, localStorage, or anything else written to your device.
  • Zero network requests. No scripts, fonts, analytics, or images are fetched at runtime.
  • Zero build step. One self-contained HTML file — nothing to compile or install.
  • Zero knowledge on our end. Settings live after the hash symbol () in the URL, which browsers never send to a server, so no host ever learns what you’re counting down to.

And the countdown, of course, runs down to zero.

How do I make a countdown timer?

Open this page with no hash symbol () in the URL and you get the builder: an event title, a target date and time, which units to show (days/hours/minutes/seconds), and what happens at zero. Hit Generate link, then Start the countdown to open it right away, which is all you need if the timer is just for you — or Copy link to share it with someone else.

How do I share it?

Paste the copied link anywhere — chat, email, a calendar invite. Opening the link is the timer; there’s nothing to install. Where your browser supports it, a Share button also appears beside Copy link and hands the link straight to your device’s share sheet.

What happens if I open a broken or half-copied link?

You get the builder back with an inline message explaining what was wrong (bad timestamp, bad units, bad zero-behavior) rather than a blank page or an error. Nothing crashes. A link missing the units or the at-zero setting isn’t broken, though — those are optional, and a link that leaves them out shows all four units and stops at zero.

Timing, timezones, and accuracy

What are the “At zero” options?
  • Stop at zero — freezes at 00 and shows a “✓ Title has arrived.” banner.
  • Count up — past the target it keeps going, showing elapsed time in red.
Does the timer work across timezones?

Yes. Your date and time are entered in your local timezone, but the link stores an absolute UTC instant. Everyone who opens it counts down to the exact same moment, whatever their timezone.

Under the countdown, that moment is spelled out as a full date and time, already converted into the reader’s own timezone — so there is no clock to convert from and nothing to work out.

Will it drift if I leave the tab open, or if my laptop sleeps?

No. Every tick recomputes from the current wall clock rather than subtracting one second from a counter, so it self-corrects after sleep/wake and after browsers throttle background tabs.

Why does the browser tab title show the time only sometimes?

When the tab is in the background, the tab title shows the running clock (e.g. 02d:14h — Launch Day, or +00m:42s when counting up) so you can watch it from another tab. Focus the tab and the title goes back to just the event name.

Can I edit a countdown after sharing it?

Not in place — the link is the timer. Make a new one and share the new link. The old link keeps working until people stop using it.

Privacy and what the server sees

Does the site know what I’m counting down to?

No. Settings go after the hash symbol () in the URL, and browsers never send that fragment to the server. A host serving this file sees only GET /index.html — never your title or date.

Does it store anything on my device?

No cookies, no localStorage, no sessionStorage, no IndexedDB.

Does it make any network requests?

None at runtime. No CDN scripts, web fonts, analytics, or remote images — even the favicon is inlined. A Content-Security-Policy blocks outbound requests at the browser level, so it’s enforced, not just promised. The same policy pins the page’s own inline code by its hash, so even a script injected downstream by a host or proxy is refused rather than run.

Is there any tracking or analytics?

No.

Can I use it offline?

Yes. Save this page as a single index.html and open it via file:// — builder and viewer both work with no internet.

So the link is completely private?

Almost — four things are outside this page’s control and worth knowing:

  • Browser history. The full URL, title and all, lands in local history like any URL. If browser sync is on, it syncs to the vendor and your other devices, and it shows up in address-bar autocomplete on shared machines.
  • Clipboard managers. “Copy link” writes plain text to the OS clipboard; any clipboard-history tool retains it.
  • Share targets. “Share” hands the link to your operating system’s share sheet, and whichever app you pick receives it in full — this page never sees which one.
  • Access logs. If hosted, the host logs that a request happened (IP, time, user agent) — never what the countdown is about.
Is the link secret or encrypted?

No. It’s readable by anyone who has it — treat it like an unlisted link, not a password-protected one.

Display options and devices

Why doesn’t my light/dark choice stick?

The toggle in the top-right cycles auto → light → dark for the current session only. Persisting it would require storage, which this page deliberately never uses, so it resets to auto on reload. Auto follows your operating system’s setting.

Can I show only days, or only minutes and seconds?

Yes — pick any combination under “Units to display.” Whatever you leave out gets rolled into the largest unit shown (turn days off and hours accumulate past 24, and so on). Display order is always days → hours → minutes → seconds regardless of how you check them.

Does it work on phones?

Yes — the layout scales fluidly and the number boxes wrap on narrow screens.

Can I self-host it?

Yes. Read or fork ZeroTick’s source code on GitHub. It’s one self-contained HTML file, MIT-licensed, with no build step. Drop it on any static host. Include the _headers file on Cloudflare Pages or Netlify to also get the CSP, HSTS, anti-clickjacking, and other headers, 404.html if you want unknown paths to return a real 404 instead of the homepage, favicon.ico so search engines have an icon to show beside your result, and og.png so chat apps have a picture to show beside a shared link — repointing the og:image tag at your own domain, since that URL can’t be relative. All four are optional — the app itself is still just index.html.