The default initial capacity of a Java `StringBuilder` is 16 characters.
Capacity is the amount of storage reserved for the character sequence, while length is the number of characters currently stored. A newly created builder therefore has length 0 but capacity 16. As text is appended beyond that capacity, Java automatically expands its internal storage.
`StringBuilder` was introduced in Java 5.0 as an unsynchronized counterpart to `StringBuffer`, making it preferable for ordinary single-threaded string construction. The default is a starting allocation, not a maximum length; a builder can grow far beyond 16 characters.
A common mix-up involves the other constructors. `new StringBuilder("Java")` starts with capacity 20—16 plus the four-character string length—and the `CharSequence` constructor follows the same pattern. The integer constructor, by contrast, lets the programmer choose the capacity directly. Capacity also counts character storage rather than bytes, so it should not be read as a 16-byte limit.