How many samples does a voice profile need before it stabilises?

SGR-003, conducted 2026-09-20.

Question: As pieces are added to a voice profile, when do its attributes stop moving, and when does it start telling its author from a stranger?

Sample

Great Expectations (Gutenberg #1400), Pride and Prejudice (#1342) and Emerson's Essays (#16643), body text only, cut at paragraph boundaries into pieces of about 800 words (600 to 1,400 accepted). With a fixed seed (20260920), 15 training pieces and 4 held-out pieces were drawn per author; the training sets are nested, so the 1-piece profile's sample is inside the 2-piece profile's, and so on. Public-domain prose was used so the study is reproducible from the source text and needs nobody's consent.

Method

Profiles: POST /v1/profiles with the first k training pieces (k = 1, 2, 3, 5, 8, 15), status polled to complete. Extraction is the same two-pass pipeline every user gets; extractions are rate-limited to five an hour, so the run spans several hours.

Same-author score: POST /v1/voice-match for each of the author's four held-out pieces against the k-piece profile; the mean is reported.

Other-author score: the same call for the other two authors' eight held-out pieces; the mean is reported. The gap (same minus other) is how well the profile tells its author from a stranger.

Attribute agreement: each k-piece profile's enumerated attributes (complexity, clause ordering, humour, expressiveness, opening style, argument structure, ellipsis habit, list preference, connective preference, specificity, rhythm, paragraph length, power-sentence position) compared with the author's 15-piece profile; the share that agree is reported. Numeric attributes are reported as the absolute difference from the 15-piece value.

Confidence: the confidence_score the extraction itself returns with each profile.

Runner: scripts/experiments/run-stability-study.mjs in the ScriptGrain repository; data file linked below.

Variables measured

Findings

Results by pieces in the profile (means over three authors)

PiecesWords (mean)Same-author matchOther-author matchGapConfidenceAttributes agreeing with 15-piece profile
18630.860.760.100.6782%
217180.860.800.060.7872%
325890.860.780.080.7982%
543170.860.750.100.8074%
869860.860.770.090.8687%
15130890.860.780.080.87reference

Results by author

AuthorPiecesWordsSame-author matchOther-author matchGapConfidenceAttributes agreeing
Dickens18190.840.790.050.6085%
Dickens216320.850.790.070.7885%
Dickens324500.860.770.100.7885%
Dickens541540.860.700.170.7269%
Dickens866440.880.720.160.8892%
Dickens15126610.890.710.170.90reference
Austen18640.900.750.150.7085%
Austen218040.880.810.070.8285%
Austen327820.890.800.090.80100%
Austen544780.870.810.060.8692%
Austen872690.880.800.080.8892%
Austen15130460.870.810.060.88reference
Emerson19060.840.740.090.7077%
Emerson217170.840.790.050.7446%
Emerson325350.840.770.070.7862%
Emerson543200.840.750.090.8262%
Emerson870450.830.780.040.8277%
Emerson15135600.830.830.010.83reference

How far the numeric attributes sit from the 15-piece profile (mean absolute difference)

Attribute1 piece2358
Average sentence length (words)4.901.951.171.551.93
Contractions per 1,0003.601.800.820.280.62
Formality (0 to 10)0.930.430.270.070.12
Commas per sentence0.500.700.230.430.22

What the numbers say

The question was how many pieces a profile needs before it stabilises, and the answer splits in two. The score stabilises immediately: one piece is enough for the author's other writing to read as on voice, because the features the scorer counts are already present in 800 words. The profile itself takes longer. Its numbers move by several words of sentence length and several contractions per thousand between one piece and three, then settle; its labels keep flipping until about eight. Three pieces and about 3,000 words, the product's standing recommendation, is where a profile stops being a reading of one piece and becomes a reading of a writer.

The uncomfortable number is the gap. On three literary voices that share a register, the profile tells its author from the others by 0.06 to 0.10 on average, and Emerson's not at all. That is a property of the corpus and of what the score measures: distance on habits, and these three share the habits. It is also a limit to state plainly: a voice-match score says how far a piece sits from a profile, and two writers who sit close to each other will score close to each other's profiles. The discrimination a real user sees is between their own conversational newsletter and a model's default register, which is a much larger distance than Dickens to Austen.

Three authors, one draw of pieces, one extraction each: read the curves, not the decimals. Every profile, every score and the piece hashes are in the data file, and the runner and the source texts are public, so the whole study can be re-run.

Limitations

Reproducing this