Free · no signup · browser-local
RAG Text Splitter with Overlap and Source Offsets
Split text by paragraphs, lines or fixed Unicode code point windows. Adjust chunk size and overlap, trace source ranges and export actual JSON or JSONL chunks.
Local workspace · no model calls · inputs are not sent or saved
Prepare your text
Maximum 100,000 UTF-8 bytes. Files are read as text only; whitespace and an optional BOM are preserved.
Sizes use Unicode code points, not tokens or user-perceived characters. Paragraph/line mode prefers a separator within the cap, then falls back to a fixed boundary. Overlap is a target; progress is always required. Paired UTF-16 surrogates stay together. Trimming adjusts offsets and can omit whitespace-only chunks.
Limits: 2,000 raw chunks and 1,000,000 output code points including overlap. Text preparation only; no embeddings, vector search or retrieval quality evaluation.
Run again after editing. Calculations do not run on each keystroke.
Your output
rag-text-splitter.jsonComplete the input to preview and export your result.
Getting started
Paste or open UTF-8 text, choose a boundary, set code point size and overlap, then split and download actual JSON or JSONL chunks.
Before you use the result
Character-based preparation only, not embeddings or vector retrieval. Maximum 100,000 input bytes, 2,000 raw chunks and 1,000,000 output code points including overlap. Trimming can remove whitespace.
Try an example
Split a multilingual document into overlapping paragraphs and trace each chunk back to its exact source range.
How it works
Unicode code point windows prefer the last supported boundary under the cap, then fall back to fixed cuts. Forward progress is enforced. Each chunk includes text, exclusive end offsets, UTF-16 offsets and actual overlap.
Frequently asked questions
Prepare traceable text chunks with paragraph, line or fixed boundaries, a hard size cap and adjustable overlap.
How do I use RAG Text Splitter with Source Offsets?
Paste or open UTF-8 text, choose a boundary, set code point size and overlap, then split and download actual JSON or JSONL chunks.
Does this tool upload my data?
Inputs and files are processed in your browser. Page-view analytics do not contain your tool input.
What should I check before using the result?
Character-based preparation only, not embeddings or vector retrieval. Maximum 100,000 input bytes, 2,000 raw chunks and 1,000,000 output code points including overlap. Trimming can remove whitespace.