Lorem Ipsum Generator
Generate Lorem Ipsum placeholder text by paragraphs, sentences or words, optionally starting with the classic “Lorem ipsum dolor sit amet”.
What is Lorem Ipsum?
Lorem Ipsum is placeholder text: Latin-looking words used to fill a layout before the real copy exists. It comes from a passage of Cicero’s De finibus bonorum et malorum (45 BC), sections 1.10.32–33, cut and altered so that it no longer means anything. “Lorem” is the end of the word dolorem. Because the words have a natural mix of lengths but no meaning, readers look at the typography, spacing and structure instead of reading the content.
How to use the generator
- Enter a Count from 1 to 50. Values outside that range are clamped.
- Choose a Unit: Paragraphs, Sentences or Words.
- Keep or untick Start with “Lorem ipsum dolor sit amet...”.
- Click Generate. Changing an option does not regenerate on its own, so press Generate after each change.
- Use Copy or the copy icon in the Output header. Clear empties the output. Three paragraphs are generated when the page loads.
How the text is built
- Vocabulary: 63 distinct words from the traditional passage, from lorem to laborum. Each word is picked at random.
- Sentences have 6 to 15 words, start with a capital letter and end with a full stop. Apart from the classic opening, there are no commas.
- Paragraphs have 4 to 6 sentences, so between 24 and 90 words, and are separated by a blank line.
- Words mode returns exactly the number requested as a single sentence with a capital and a full stop.
- Start with “Lorem ipsum dolor sit amet...” replaces the beginning rather than adding to it, so counts stay exact. With paragraphs or sentences, the first sentence becomes
Lorem ipsum dolor sit amet, consectetur adipiscing elit.With words, the first words (up to eight) becomelorem ipsum dolor sit amet consectetur adipiscing elit, so 5 words givesLorem ipsum dolor sit amet.
The output is plain text with no HTML tags, so it can go straight into a design tool, a CMS field or a test fixture.
Turning the output into HTML
Paragraphs are separated by a blank line, so wrapping each in a <p> element is one line of JavaScript:
const html = text.split('\n\n').map(p => `<p>${p}</p>`).join('\n');
For a quick paragraph inside an editor, Emmet, which is built into VS Code, expands lorem to a paragraph and lorem10 to ten words.
How much text to generate
Match the placeholder to the space it stands in for, so the design is tested against realistic lengths:
- Headings and buttons: Words, about 2 to 8. Try a long one too, since real headings are rarely as short as the mock-up.
- Card descriptions and teasers: Sentences, 1 to 3. Check how the layout handles one card with much more text than its neighbours.
- Articles and documentation: Paragraphs, 5 or more, so you can judge line length, spacing between paragraphs and scrolling.
When to use placeholder text, and when not to
| Situation | Better choice |
|---|---|
| Checking typography, line length and vertical rhythm | Lorem Ipsum: neutral text with realistic word lengths |
| Testing a layout with long or short content | Lorem Ipsum at both extremes: 1 word, then 50 sentences |
| Usability testing or stakeholder review | Real or realistic copy; people react to meaning, not shapes |
| Forms, tables and dashboards | Realistic sample data: names, dates, prices, long email addresses |
| Translation and localisation | Real text in the target language; German and Finnish words run long, and right-to-left scripts need their own tests |
Before you publish
Placeholder text that reaches a live site makes a page look unfinished to visitors and gives search engines nothing useful to index. Screen readers also read it aloud as nonsense Latin. Search your templates, CMS content and fixtures for “lorem ipsum” before launch, and treat any match as a bug.
Frequently asked questions
What does “lorem ipsum dolor sit amet” mean?
Nothing as written. In Cicero’s original, the passage contains dolorem ipsum quia dolor sit amet, roughly “pain itself, because it is pain”. The placeholder version cuts words in half and rearranges them, which is why it cannot be translated.
Why is the text different every time?
Words are chosen at random on each click, so repeated paragraphs do not create visible patterns in a design. If you need the same text every time, for example in a screenshot test, copy one result and store it with the test.
Does the count include the classic opening?
Yes. The opening replaces the first sentence or the first words instead of being added, so asking for 3 sentences gives exactly 3, and asking for 20 words gives exactly 20.
How do I get more than 50 paragraphs?
Generate 50, copy them, and generate again. 50 paragraphs is already between about 1,200 and 4,500 words, which is enough to test long pages and scrolling.
Is the random choice secure?
It uses Math.random(), which is fine for filler text but not for anything secret. For passwords use the Password Generator and for identifiers the UUID Generator; both use the browser’s cryptographic random source.
Is anything sent to a server?
No. The word list is part of the page and the text is generated in your browser.