Why did the JavaScript disappear too?
Script and style blocks are removed with their contents on purpose: their text is code, not prose, and leaving it inline would corrupt the reading text.
Strip every HTML tag and decode entities, leaving readable plain text with line breaks preserved.
FeedbackPaste HTML source or text copied with markup
Click Process
Copy the plain text
Removing HTML tags is easy to do badly with a pattern that deletes anything between angle brackets, and that approach fails in ways worth knowing before you rely on it.
It fails on content that legitimately contains angle brackets: a mathematical comparison, a line of code, a quoted template. It fails on script and style elements, where deleting only the tags leaves the JavaScript or CSS behind as visible text, which is the classic symptom of a naive strip. And it fails on HTML comments, which are invisible when rendered and become visible when the markers are removed, occasionally exposing notes nobody meant to publish.
Entities are the second half of the job and the part most often forgotten. Stripping tags leaves ampersand-encoded sequences behind, so the output contains literal ampersand-a-m-p rather than an ampersand, and non-breaking space entities scattered through the text. A strip that does not decode entities produces text that is obviously machine-mangled.
Structure is what you lose, and some of it should be recovered deliberately. Paragraphs and line breaks are structural, and collapsing them turns a readable page into one block. Lists lose their bullets and run together. Headings lose their prominence and become indistinguishable from body text. Converting block-level elements into blank lines preserves the shape even though the semantics are gone.
Links lose their destination, which is the same trade as stripping Markdown: the text remains and where it pointed does not. For an article full of references that can be a significant loss, and it is worth deciding rather than discovering.
Image alt text is the one thing worth rescuing. It is often a real description written for accessibility, and a strip that discards it silently removes information that was deliberately provided.
The conversion runs in the tab, so the page source you are cleaning never leaves the device.
Script and style blocks are removed with their contents on purpose: their text is code, not prose, and leaving it inline would corrupt the reading text.
Paragraphs, list items, headings and <br> tags each become a line break, so the text keeps its visual structure.
Remove Markdown formatting from any text and keep the words: headings, bold, links, code ticks and lists stripped in one paste.
Strip the em dashes, curly quotes and hidden characters that make text read as AI-generated.
Pull every link out of a text, without the trailing punctuation, deduplicated, one per line.
The same tool answers on HTTP. Free, 1,000 calls a day, no card, and one token works across every Astral API.
POST https://astraltext.com/api/v1/remove-html-tags