---
title: "Text Truncate"
description: "Cut text to a set number of characters or words. Stop at a whole word, add an ending such as ..., and see both counts before you copy. No signup."
url: https://findutils.com/text/text-truncate/
category: text
---

# Text Truncate

Cut text to a set number of characters or words. Stop at a whole word, add an ending such as ..., and see both counts before you copy. No signup.

**Use this tool:** [Text Truncate](https://findutils.com/text/text-truncate/)

## Programmatic access

- REST id `text-truncate`: POST https://api.findutils.com/api/tools/text-truncate/execute (reference: https://findutils.com/api/text-truncate/)
- MCP tool `text_truncate` on https://mcp.findutils.com (reference: https://findutils.com/mcp/text-truncate/)
- The REST tool text-truncate takes `max_length`, `mode`, `ellipsis` and `break_on_word` (off unless you send true); the MCP tool text_truncate takes `length`, `unit`, `suffix` and `word_boundary` (on by default).
- Data: The REST API and the MCP tool are a separate path from this page: a call sends the input you include to FindUtils over HTTPS, where it is processed and the result returned. FindUtils does not store that input, and logs the request without its content.

## Why use a text truncator?

A meta description, a product card, a notification or a text message all have a length that fits, and cutting by hand means counting, trimming and checking again. Text Truncate does the cut in one step: it keeps the ending inside the limit, can stop at the last whole word, and never splits an emoji or an accented letter in half. The live counts show how long the original was and how long the result is, before you copy it.

## Tips

- Use the single character … as the ending when every character counts: it takes 1 character where ... takes 3.
- Clear the ending to cut with no marker at all.
- Truncating a list? Words mode keeps the line breaks between the kept words.

## Frequently Asked Questions

### What does Text Truncate do?

Text Truncate shortens text to a limit you set, counted in characters or in words, and adds an ending such as ... when it cuts. In Characters mode the ending counts toward the limit, so a limit of 160 always gives 160 characters or fewer. Break on word moves the cut back to the last space so no word is split. The original and the result both show live character and word counts.

### Does the ending count toward the limit?

In Characters mode, yes. With a limit of 160 and the ending ..., at most 157 characters of your text are kept, and the whole result is never longer than 160. In Words mode the limit counts words only, and the ending is added after the last kept word. If the text already fits, nothing is cut and no ending is added.

### How are characters counted?

Characters are counted as UTF-16 code units, the same count as JavaScript's string length and the FindUtils Character Counter. Letters, digits, spaces, punctuation and line breaks count as 1 each; many emoji count as 2, and some emoji sequences count more. The cut never splits an emoji, a flag or a letter with an accent: it moves back to the start of that character, so the result can be a character or two shorter than the limit.

### What does Break on word do?

Break on word moves the cut back to the last space before the limit, so the result ends on a whole word. Without it, the text is cut exactly at the limit, which can split a word. It applies only in Characters mode, because Words mode always keeps whole words. If there is no space before the limit, the cut stays at the limit.

### What do the presets set?

The presets set plain numbers: 160 for Meta description, 280 for X post and 160 for SMS. They are starting points, not rules of those platforms. Google says a meta description has no length limit and shortens snippets to fit the device width. A single SMS holds 160 characters of the basic GSM alphabet, and a message with other characters, such as most emoji, is sent in an encoding that holds 70 per part. X counts links at a fixed length and some characters as two. Check the result where you post it.

### Can I truncate by words instead of characters?

Yes. Set Truncate by to Words and enter the number of words to keep. A word is any run of characters between spaces or line breaks, so well-known is one word and a number is a word. Line breaks between the kept words are kept, and the ending is added after the last kept word.

### Is my text uploaded?

Not on this page. The text is shortened in your browser with JavaScript, and nothing you type or paste is sent to a server. The REST API and MCP tool are a separate path: a call sends the input you include to FindUtils over HTTPS, where it is processed and the result returned. FindUtils does not store that input, and logs the request without its content.

### Can I truncate text from a script or an AI client?

Yes. The same function runs as the REST tool text-truncate at api.findutils.com and the MCP tool text_truncate at mcp.findutils.com. The two name the options differently: REST takes max_length, mode, ellipsis and break_on_word, which is off unless you send true; MCP takes length, unit, suffix and word_boundary, which is on by default. The REST tool accepts up to 500,000 characters of text and a max_length of up to 100,000. The Run it from code card on this page shows a working request.

## Related Tools

- [Character Counter](https://findutils.com/text/character-counter/)
- [Word Counter](https://findutils.com/text/word-counter/)
- [Text Reverse](https://findutils.com/text/text-reverse/)
- [Case Converter](https://findutils.com/text/case-converter/)
- [Whitespace Cleaner](https://findutils.com/text/whitespace-cleaner/)
- [Text Find & Replace](https://findutils.com/text/text-find-replace/)
