# jq `splits` vs `split` in Streaming Mode: What Every Developer Needs to Know

> Discover the key differences between jq `splits` and `split` in streaming mode. Optimize your data processing with memory-efficient substring streams using `splits`.

- Repository: [jqlang/jq](https://github.com/jqlang/jq)
- Tags: deep-dive
- Published: 2026-04-11

---

**Use `splits` to emit a stream of individual substrings for memory-efficient processing with `--stream`, while `split` collects all matches into an array and breaks the streaming pipeline.**

When working with large JSON datasets in the `jqlang/jq` repository, choosing between `splits` and `split` directly impacts memory usage and processing speed. While both filters divide strings using regular expressions or literal separators, they differ fundamentally in their output types—one produces a stream of values and the other an array—making `jq splits