The log
Changelog
What shipped, in the order it shipped. Dated, named, and kept.
October 1, 2026
LatestThe speed test grew a lab bench
The page speed test now reads like a report you would keep. A grade dial, the page weight, the load time, and the request count sit on one navy board. The four vitals each carry a budget: good, needs work, or poor. The phone frame is the page as our browser saw it. The waterfall still times every request on one shared line.
The other free tools share that bench. Same form, same progress, same panels. Pica still gets the last line on every report. She does not round up.
Hack Check now fetches the page as a crawler first, then opens it in a browser, and compares the two. A script only one of them received is cloaking. Contact is now Support. The owner and Pica read every email.
Page speed testNew
- Speed test grade dial, vital budgets, and a phone frame from the lab.
- Hack Check compares a crawler fetch with a browser visit for cloaking.
- Support page. The old contact address redirects there.
Improvements
- Uptime, TTFB, tracker check, Built With, and Hack Check use the same lab chrome.
- Pica keeps a one-line aside on each tool.
October 1, 2026
Hack Check cries wolf less, and notices more
A free Hack Check used to call a site worth a closer look whenever it met a script it did not recognize. A custom CDN, a small analytics host, a tag from a tool we had not named: all of that raised the verdict. Those hosts are still listed, and still marked Unknown. They no longer change the answer.
A hop from the bare domain to www, or to a subdomain of the same site, is no longer treated as leaving the site. A hop to a different site is worth a closer look. It is not the same as a malware listing. Flagged stays for a reputation hit or a host on the known-bad list.
The visit now also notices a hidden link that points off the site, a base tag that rewrites the page's links through another host, a packed script built with fromCharCode, and a script loaded from a bare IP or a throwaway ending such as .tk or .zip.
Hack CheckImprovements
- Familiar script hosts cover more of the usual crowd: Google, Shopify, HubSpot, WordPress, Sentry, and the big CDNs.
- Ordinary unidentified scripts are listed. They do not raise the verdict.
- Same-site redirects, including www and subdomains, stay home.
- A hop to another site is a closer look, not a malware flag.
New
- Hidden off-site links.
- A base tag that sends links somewhere else.
- Packed inline scripts using fromCharCode.
- Scripts from a bare IP, or from .tk, .ml, .ga, .cf, .gq, .zip, or .mov.
September 30, 2026
Report cards, comparisons, and the watch on the dashboard
The top 100 websites each have a Site Health Report Card. Four checks, weighted the same: speed, security, reputation, and whether the site lives in a good neighborhood. Pica writes the note. The directory is at /sitehealthcheck, and each card has its own address.
The dashboard opens with Pica's read of the site, then the traffic, then the tables. A compare control sets the range against the previous period, the same day last week, last month, or last year. The change lands on the headline numbers and as a dashed line on the chart. She only writes a note when a number actually moved.
Uptime, speed, and security sit in one panel under that verdict. Uptime keeps the recent peeks. Speed shows the daily score, the paints, and the weight. Security shows what the last look found. Each column opens its free tool with the site already filled in.
Site Health Report CardsNew
- Report cards for the top 100 sites.
- Compare on the dashboard: previous period, last week, last month, last year.
- Pica's status and notes at the top of the dashboard.
- The watch panel: uptime, speed, and security, on the dashboard.
Improvements
- About names Cloudflare as the infrastructure partner, including DNS and Browser Run.
- The footer reads Tarsier loves Cloudflare.
- Pica's spyglass stays above the dashboard, so it stays readable.
September 30, 2026
Homepage redesign: monitoring-focused positioning
The homepage got a major redesign focused on monitoring and analytics. The HERO section stayed the same, but the dashboard under the headline is now the real product layout, with a link to the live one-click demo. Who this is for (founders, marketers, SEOs, publishers, agencies) sits under the headline before you scroll.
Every visit is still written the way it always was, so nothing already collected moves or disappears. Fields that did not fit get a second copy beside that row, using the same site, session, and counts.
New
- Homepage dashboard is labeled as the product, with a link to the live one.
- Who it is for sits under the headline.
- Closer line: serious analytics software that happens to have enormous eyes.
- New visits keep the original row and add a companion row. Old rows stay where they are.
Improvements
- About page rewritten as the first chapter, not a company costume.
- Glance facts are real: one script, no cookies, 90 days, and a public dashboard.
September 29, 2026
The live dashboard opens on a phone again
The public Tarsier dashboard was showing a loading error for visitors without a session. Its data calls now open for the public demo, while other sites still require sign-in and ownership.
The homepage's little portraits no longer download full-size photos. Inter and Outfit come from our own server. Sharing the homepage or live dashboard now shows a proper preview image.
Cloudflare returns 522 when this Worker asks to check itself from inside the house. That is not a visitor outage. Our own health now says so plainly; while other sites still get real peeks.
Fixes
- Public dashboard data and live presence load without a login, including on mobile.
- Self-probe 522s no longer appear as downtime; self-security checks are marked as unavailable.
Improvements
- Small WebP portraits load first; a larger version arrives only when a story opens.
- Inter and Outfit are hosted here, with no Google Fonts request.
- Homepage health reads a saved snapshot instead of waiting for a live probe.
New
- Social preview images for home and dashboard.
- GPT-6 Sol is credited on About.
September 29, 2026
Six free tools, one hub
Page Speed Test, Hack Check, Uptime Check, Tracker Check, Built With, and TTFB Check. Each answers a question people actually search for, each is free without an account, and each ends at the same place: put Tarsier on it. They live under Tools, with /tools tying them together.
New
- Page speed test with lobby, screenshot report, and full waterfall.
- Hack check with reputation, isolated visit, and honest verdicts.
- Uptime check with per-hop timing and five real verdicts.
- Tracker check naming every watcher on the page.
- Built With profiler with WordPress deep dive.
- TTFB check splitting server time from download.
September 29, 2026
/monitor rebuilt for 50 sites
The monitor was a mile of cards. Now it is a wide board of compact rows: status, uptime bars, score, speed, security, checked-ago. Search, All/Napping/Needs-a-look filters, and napping-first sorting keep fifty sites manageable. Folders still organize everything.
Changed
- Monitor goes wide and dense.
- Search, filters, and sorting.
September 29, 2026
Site Speed Analysis replaces Lighthouse
Google is out of the loop. Once a day, our own browser opens the page on a phone-sized screen and times it: LCP, FCP, page weight, and whether the page got heavier overnight. The score, the vitals, and the change all live on /monitor and the health strip.
New
- Site Speed Analysis, powered by our own browser.
September 29, 2026
A brief look at the page
Once a day, Pica opens the homepage and a few links. She notices a new script, a hidden frame, a strange redirect, or a host on a short public list. She does not call the site clean. A plugin can look further in, later.
New
- Security on the health strip and on /monitor.
September 29, 2026
Jev is on the stack
Pica's notes will ask Jev whether a change is worth saying. Jev returns a decision, not a sentence. The name is on the stack now. The full set of notes, the longer list of templates, and the weekly letter come later. She is still getting to know the site.
Introducing System One Models and JevNew
- Jev, named on the about page.
September 28, 2026
A watch for the site itself
/monitor is Pica's watch. She peeks at the site, not the visitors. Pictures, when she feels like taking one.
New
- Hidden monitor at /monitor.
September 28, 2026
Watch my website starts an account
That button goes to signup. A new account adds a site before the dashboard opens, so there is nothing empty to 404 on.
Changed
- Signup is the way in.
- First site happens on /onboarding.
September 28, 2026
An account, not only a shared password
Sign up makes an organization. The session carries that org. Sites still belong to the org in KV. The shared operator password still opens the Tarsier account.
New
- Email and password accounts.
- Password reset, once mail is configured.
September 28, 2026
A page that is just David
/davidkrug is a link page. No site nav. The letter, Tarsier, the notes, the docs, the changelog, and where to find him.
New
- David Krug link page at /davidkrug.
September 28, 2026
The measuring engine is Tarsier's
A visit, an event, and a ping are defined in one place. Writes and queries both use that list. The slots did not move, so old rows still count.
Changed
- Measurement rules live in the Tarsier ledger, not a borrowed column map.
September 28, 2026
One read for the dashboard
The dashboard asks once. The widgets still exist, so paging and the old routes keep working. The nightly extract skips a day it already saved.
Changed
- A single board read for the first page of the dashboard.
September 28, 2026
Hot memory, then cold
Analytics Engine still answers the last 89 days. A queue folds each pageview into a daily file in R2, so the year does not vanish when the hot window does. Dashboard reads older than today are cached at the edge.
New
- 365-day range.
- Cold daily folds via the tarsier-events queue.
- Edge cache on historical dashboard reads.
September 28, 2026
A long note about Cloudflare
How I fell in love with Cloudflare is up. Servers, Workers, and why Tarsier lives where it does.
New
- Field note: How I fell in love with Cloudflare.
September 28, 2026
The code is called Tarsier
Packages are @tarsier. The snippet id is tarsier-script. Older embeds still report. The worker, the public site id, and the stored history stay where they are.
Changed
- Package names and the embed id. Legacy ids still count.
September 28, 2026
A letter, when there is news
The newsletter page is live. An address is stored. Nothing is sent until there is something worth saying.
New
- Newsletter page, linked from the header and the footer.
September 28, 2026
A price, said out loud
$11.11 a month, or $111 for the year. 100,000 pageviews and 50 sites. Same product either way. Higher bands wait until they are real.
New
- Pricing page with a monthly and yearly toggle.
September 28, 2026
The person building this
The about page names David Krug. Manila, two kids, one amazing partner, and the build on X. No stock headshot.
New
- The people behind Tarsier, with a real photo.
September 28, 2026
A note you can read in four minutes
A field note on the stack. Short on purpose. The links stay on the about page, where a list belongs.
New
- Blog: A stack you can say out loud.
September 27, 2026
The stack, named
The about page now says what Tarsier is built on, and who helped write it. OpenCode, with Muse 1.3, Grok 4.7, and North Mini Code. No mystery, no fake team page.
New
- The Tarsier stack, on the about page, with links home.
- Workers, Analytics Engine, KV, Durable Objects, and R2 each link to their Cloudflare pages.
- React Router, React, Vite, and Tailwind link home too.
September 27, 2026
The first chapter, said out loud
The about page now says the true thing. Tarsier is at the beginning. The job is already clear: you should not have to become an analytics person.
No invented customer wall. The proof is the live dashboard, and Understand and Tell me stay marked Soon until they exist.
Improvements
- About page rewritten as the first chapter, not a company costume.
- Glance facts are real: one script, no cookies, 90 days, and a public dashboard.
September 27, 2026
Serious software. Enormous eyes.
The homepage now says who this is for before you scroll: founders, marketers, SEOs, publishers, and agencies. The dashboard under the headline is the real layout, and the live one is one click away.
Every visit is still written the way it always was, so nothing already collected moves or disappears. Fields that did not fit get a second copy beside that row, using the same site, session, and counts.
Improvements
- Who it is for sits under the headline.
- Homepage dashboard is labeled as the product, with a link to the live one.
- Closer line: serious analytics software that happens to have enormous eyes.
- New visits keep the original row and add a companion row. Old rows stay where they are.
September 27, 2026
Stories, a live count, and a globe
The homepage now opens with named tarsiers, a live count of who is here, and a line that says what this is: your website has a story. Tarsier watches it.
The dashboard grew up with it. Our own site is public. Yours is not. The live card is a real rotating earth you can drag, and visitor countries flash coral.
New
- Story circles with real photos and names. Close with the button, the backdrop, or Escape.
- Live stats pill, a docs page, and a pasteable snippet in Settings.
- Watched by Tarsier badge, under the homepage button and at the bottom of the dashboard.
- Rotating globe on the live card. Pause it, or spin it yourself.
- Integrations page for WordPress, Astro, and the API. All three are Soon.
- Admin list of every site. Only the Tarsier account can open it.
Improvements
- Each site has an owner. Unknown site ids are rejected.
- The public dashboard is only the Tarsier site.
- Deleting a site or a goal asks first.
- Dashboard toolbar stays put while you scroll, and no longer sits under floating marks.
- Bouncing tarsiers stay in the hero gutters, clear of the stories and the headline.
Fixes
- The globe is an earth again, not a black ball, and it carries no third-party mark.
- Opened stories are a small card, not a full-screen photo.
- The hero headline is sentence case.
September 27, 2026
Know where visits start and end
Every session now has a front door and a back door. Entry pages show where visits begin; exit pages show where they leave. Both are computed per session, both are click-to-filter, and both live right under Pages and Referrers where they belong.
The same update adds quick actions to the top of the dashboard — add a site, copy the tracker URL, jump to the live feed — and a Traffic share card that shows where your visitors come from at a glance.
New
- Entry pages and exit pages cards with session counts.
- Traffic share bar with cross-highlighting legend.
- Quick actions: add site, copy tracker URL, view live.
Improvements
- Cities and regions join countries, browsers, and devices.
- City and region filters work everywhere other filters do.
September 26, 2026
Documentation goes live
Tarsier finally has docs worth linking to: installation, the snippet, and events and goals — written from the actual code, including the parts where the old README disagreed with it.
The footer sitemap grew up alongside: company, resources, and legal columns, with honest Soon badges on anything that does not exist yet.
New
- Docs section with sidebar, prev/next, and mobile picker.
- Installation, snippet, and events guides.
Older updates
September 2026
A new face for Tarsier
The whole public surface got rebuilt: a mascot with actual personality, a homepage that reads like a human wrote it, Outfit and Inter typography, and a dashboard that behaves like an instrument panel.
New
- Personality rewrite: watcher, not dashboard archaeology.
- Redesigned Tarsier mark with fixed brand colors.
- About, pricing, blog, contact, privacy, terms, and security pages.
Fixes
- Theme tokens converted to valid HSL channels.
- Providers hardened against missing localStorage.