Paste a URL and see how its h1 reads to something that never runs the JavaScript. Catches split-text animations that shred a headline into loose letters.
URL checks fetch the public page on the server. The HTML playground runs entirely in this browser; pasted source is never uploaded.
Try it on your HTML
Paste a heading or a page's source. Nothing is uploaded and pasted code is never executed.
Up to 100,000 characters. This checks source HTML, not a rendered page.
Fragmented
Visible text model
Build something worth reading
Extracted text model
B u i l d s o m e t h i n g w o r t h r e a d i n g
The heading is built out of pieces. A browser reassembles it and something that strips tags out of the HTML does not, so the strongest string on the page arrives as loose letters.
Start with a readable heading
Send one whole heading in the server HTML. If you animate individual letters, replace the visible layer only after the page mounts, and keep the complete accessible name.
<h1>Build something worth reading</h1>Why this is worth ten seconds
Split a headline into one element per letter and a browser still paints the word. Plenty of the machinery that reads the web does not run a browser: link unfurlers, feed readers, archivers, and the fetchers behind AI answer engines. A good number of those strip the tags, normalise the whitespace, and hand the result to something else. That turns your best string into confetti, and nobody sends you a report about it.
I found this on my own site, which is the only reason I trust it enough to write a tool about it. The homepage name animated one character at a time and extracted as loose letters. It came out of building a CRT that behaves like a CRT, which is where the same warning sits at the end.
Can't see
Method and limitations
- Your stylesheet. It reads the served HTML and the style attributes in it, so a class that sets display:inline-block is invisible to it. One element per character is the signal that survives that.
- Anything JavaScript renders after load. If the heading arrives from a script, the served HTML has no h1 and that is what it reports.
- Pages behind a login. It fetches as a stranger with no cookies, so whatever a visitor has to sign in for is out of reach.