Analyze text
Ready. Enter text and select Analyze.
Entered text stays in this browser tab. It is not uploaded, saved to browser storage, placed in the URL, or included in analytics.
How lines are counted
LF, CRLF, and CR are normalized to one newline model. An empty input has zero lines. Every segment after splitting on a newline is a logical line, so a final newline adds one empty trailing line. Lines containing only spaces or tabs are blank and are separately identified as whitespace-only. Content-line length uses user-perceived characters when the browser supports Intl.Segmenter; the fallback counts Unicode code points, which can differ for combined emoji.
Worked example
one\ntwo\nthree is three content lines. one\n\ntwo is three total lines: two content and one blank. hello\n is one content line plus one empty trailing line.
Limitations and related tools
This counts lines, not the quality or meaning of writing. A visual wrap within a textarea is not a new logical line. Use Paragraph Counter for blank-line-separated blocks, or the existing Character Counter for total visible characters.