AnyLearn
All lessons
AIadvanced

When Generating Data Beats Collecting It

Synthetic data is roughly three orders of magnitude cheaper than human annotation, and cheapness is the least interesting thing about it. This lesson establishes what generation can and cannot manufacture: it produces coverage and format, never information the generator lacks, and the one exception is verifiable domains, where a checker turns generation into search.

Updated · AI-authored, review-gated · how lessons are made

Not signed in: your progress and quiz score won't be saved.
Progress1 / 10

The cost argument, and why it is the weakest one

Start with the number everyone starts with. Suppose you need 50,000 instruction-response pairs.

Human annotation at two dollars per example, which is modest for anything requiring expertise, costs 100,000 dollars and takes months of coordination.

Generating the same volume at 800 output tokens each, at an assumed three dollars per million output tokens, costs about 120 dollars and runs overnight. That is a ratio of roughly 830 to one.

The ratio is real and it is the least interesting thing about synthetic data, because cost was rarely the binding constraint. Teams that could not afford annotation usually also could not afford to train.

What changes decisions is that generation reaches places collection cannot. Data for a product that has no users yet. Coverage of failure modes that occur once in ten thousand real interactions. Examples in a format no one has ever written down.

The honest framing is that synthetic data is a coverage tool that happens to be cheap, and treating it as a cheap substitute for real data is where the failures start.

Full lesson text

All 10 steps on one page, for reading, reference, and search.

Show

1. The cost argument, and why it is the weakest one

Start with the number everyone starts with. Suppose you need 50,000 instruction-response pairs.

Human annotation at two dollars per example, which is modest for anything requiring expertise, costs 100,000 dollars and takes months of coordination.

Generating the same volume at 800 output tokens each, at an assumed three dollars per million output tokens, costs about 120 dollars and runs overnight. That is a ratio of roughly 830 to one.

The ratio is real and it is the least interesting thing about synthetic data, because cost was rarely the binding constraint. Teams that could not afford annotation usually also could not afford to train.

What changes decisions is that generation reaches places collection cannot. Data for a product that has no users yet. Coverage of failure modes that occur once in ten thousand real interactions. Examples in a format no one has ever written down.

The honest framing is that synthetic data is a coverage tool that happens to be cheap, and treating it as a cheap substitute for real data is where the failures start.

2. Four reasons real data fails you

Generation is worth reaching for when collection fails, and it fails in four distinguishable ways. Naming which one you have determines what technique applies.

The data does not exist. A new product, a new interface, a new task. There is no corpus because nobody has done this yet.

The data exists and cannot be used. Medical records, financial transactions, anything under a licence that forbids training. The information is there and legally out of reach.

The data exists and is unlabelled. Millions of support tickets, no categories. Here the raw material is real and only the annotation is missing, which is the cheapest case and the one most likely to succeed.

The data exists and is unbalanced. Ninety-nine percent routine, one percent the cases you actually need to handle well. Collection gives you more of what you already have.

The fourth is where generation shines and the first is where it disappoints, because a task nobody has performed is also a task your generator has never seen.

3. What generation cannot manufacture

The constraint that governs everything else is easiest to state as an accounting identity.

A generator's outputs cannot contain more information about the world than the generator holds. Sampling a model a million times produces a great deal of text and no new facts. If the teacher does not know your API's error codes, no volume of generated examples will teach a student about them.

This sounds obvious and is routinely violated in practice. Teams generate training data for a domain the generator has never encountered, fine-tune on it, and are surprised when the student learns to produce confident, well-formatted, wrong answers. The student learned exactly what was in the data.

What generation genuinely does is redistribute and reformat capability that already exists. It can move knowledge from a large model into a small one. It can convert latent ability into a consistent output format. It can amplify a rare pattern until a model trained on it responds reliably.

All three are valuable. None of them create knowledge, and a pipeline designed as though they do produces fluent fabrication at scale.

4. The exception: verifiable domains

There is one genuine exception to the accounting identity above, and it is the most important idea in this path.

When you can check an answer independently of the model that produced it, generation stops being redistribution and starts being search.

Consider a model that solves a class of maths problems correctly 35 percent of the time. Sample it once per problem and you get correct answers on 35 percent of prompts. Sample it eight times and keep only the verified-correct attempts, and 96.8 percent of prompts yield at least one correct solution. Sixteen samples takes that to 99.9 percent.

Train on the verified survivors and the student learns from a distribution far stronger than the teacher's own sampling behaviour. The information was not in any single generation; it came from the checker.

This is why verifiable domains behave differently. Code with tests, mathematics with checkable answers, formal proofs, SQL you can execute, structured extraction you can validate against the source.

Where a verifier exists, generate many and keep few. Where none exists, you are redistributing what the teacher already knew, and the ceiling is the teacher.

5. Four pipeline shapes

Synthetic data pipelines come in four shapes, and they differ in where the information comes from, which determines what each can achieve.

Distillation takes a stronger teacher model and trains a weaker student on its outputs. Information flows downhill. The student can approach the teacher and cannot exceed it.

Self-improvement uses one model to generate its own training data. With no filter this is circular and is the configuration that collapses. With a filter it is the next shape.

Verified generation adds a checker between generation and training. The checker is an external information source, so the student can exceed the generator's single-sample reliability. This is the only shape with a ceiling above its generator.

Programmatic generation builds examples from templates and rules, with ground truth known by construction because you generated the answer before the question. Perfect labels, limited realism.

Most production pipelines combine them: programmatic scaffolding for structure, a strong teacher for language, a verifier where one is available.

flowchart TD
A["Stronger teacher model"] --> B["Distillation: student approaches teacher"]
C["The model itself"] --> D["Self-improvement, unfiltered: circular, collapses"]
C --> E["Generate many candidates"]
E --> F["External verifier: tests, solver, checker"]
F --> G["Verified generation: ceiling above the generator"]
H["Templates and rules"] --> I["Programmatic: ground truth by construction"]
I --> J["Perfect labels, limited realism"]

6. Distillation and the licence question

Distillation is the most common shape and carries a constraint that is contractual rather than technical.

Most commercial model providers' terms prohibit using their outputs to train competing models. The wording varies and the enforcement posture varies, but the clause is standard enough that assuming it is present is the safe default.

The practical consequences are worth separating. Generating data to fine-tune a model for your own internal use is treated differently from generating data to train a model you will sell. Open-weight models with permissive licences remove the question, which is one reason they are heavily used as teachers even when a stronger closed model is available.

And provenance survives. A dataset generated from a given model is often identifiable from stylistic signatures, and published models have been challenged on exactly this basis.

The engineering habit that follows is to record, for every example, which model produced it, under which terms, and on what date. That record costs nothing at generation time and is impossible to reconstruct afterwards, which is the same argument the distributed training path made about run configuration.

7. What the student actually learns

A subtlety that decides whether a distillation project succeeds: the student does not learn the teacher's knowledge. It learns the teacher's outputs.

Those are different in a way that shows up under pressure. The teacher answers correctly because it has broad capability it can bring to bear. The student trained on ten thousand of those answers learns the shape of correct answers on the covered distribution.

On inputs resembling the training data, the two are indistinguishable. Off that distribution, the teacher degrades gracefully and the student degrades into confident imitation, producing responses with the right structure and tone and the wrong content.

This is why coverage of the synthetic set matters more than its size, and it is the subject of the next lesson. Ten thousand examples spanning the input space beat a hundred thousand clustered in one region, because the second set teaches the shape of one region very well and says nothing about the rest.

It is also why evaluating a distilled student on data drawn from the same generation process is nearly meaningless. That evaluation measures how well the student learned the covered region, which is the one thing you can already assume.

8. The privacy claim, examined

Synthetic data is frequently proposed as a privacy solution: generate a synthetic version of sensitive records and the privacy problem disappears. The claim needs qualification.

When a generator is trained on sensitive data, its outputs are a function of that data. Generative models can memorise and reproduce training examples, particularly rare and distinctive ones, which are exactly the records that identify individuals. A synthetic dataset produced this way is not automatically anonymous; it is derived data whose disclosure risk has to be argued rather than assumed.

The stronger position is a formal guarantee. Training the generator under differential privacy bounds how much any single record can influence its outputs, and that bound is inherited by anything generated from it. Utility falls, sometimes sharply, and the guarantee is precise rather than rhetorical.

The weaker but common position is a generator that never saw the sensitive data at all, prompted with schemas and descriptions rather than records. The output has no derivation from real individuals and, correspondingly, no realism from them either.

Under European data protection law, whether output counts as personal data turns on identifiability, so the assessment is a legal one and not settled by the word synthetic.

9. Choosing a shape

Matching the failure mode to the pipeline shape resolves most of the design question before any code is written.

SituationShapeCeiling
Need a small fast model, strong one existsDistillationThe teacher
Answers are checkable by machineVerified generationAbove the generator
Real inputs exist, labels do notTeacher labels real inputsThe teacher's labelling accuracy
Structure is known, realism is secondaryProgrammaticPerfect labels, narrow coverage
Rare cases underrepresentedTargeted generation plus real dataThe generator's grasp of the rare case
No teacher understands the domainNone of the aboveCollect real data first

The last row is the one worth defending. When no generator understands your domain, synthetic data produces a confident, well-formatted model that is wrong in ways your evaluation will not catch, because the evaluation came from the same misinformed process.

The third row is the most underused. When real inputs exist and only annotation is missing, you keep the true input distribution and use the model only for what it is genuinely good at.

10. The three questions to answer first

Before generating anything, three questions determine whether the project can work, and answering them takes an hour.

Where is the information coming from? Name the source. A teacher model, a verifier, a template with known ground truth, or real inputs with model labels. If the honest answer is that the information comes from the model you are about to train, the pipeline is circular and the next lessons explain what happens.

What is the ceiling? Distillation ceilings at the teacher. Verified generation ceilings above the generator. Programmatic generation ceilings at the fidelity of your templates. If the ceiling is below your requirement, no volume of data reaches it.

How will you know it worked? The answer must involve real data the generation process never touched. This is the discipline the whole path depends on, because a synthetic evaluation of a synthetically trained model measures self-consistency rather than capability.

Those three answers determine the technique. The next lesson covers generating with coverage, the one after covers filtering, and the last covers what happens when the loop closes on itself.

Check your understanding

The lesson ends with a 5-question quiz. Take it in the player above to see your score.

  1. What is the fundamental limit on what synthetic data can provide?
    • Generated text is always lower quality than human text
    • A generator's outputs cannot contain more information about the world than the generator holds
    • Synthetic data cannot be formatted consistently
    • Volume is capped by the context window
  2. A model solves a problem class correctly 35 percent of the time. Why does sampling eight times with a verifier change the picture?
    • It raises the model's per-sample accuracy through in-context learning
    • It reduces the variance of the model's outputs
    • About 96.8 percent of prompts then yield at least one verified-correct solution, so the checker supplies information no single generation held
    • It allows training without any real data at all
  3. Which pipeline shape has a ceiling above its own generator?
    • Distillation from a stronger teacher
    • Unfiltered self-improvement
    • Programmatic generation from templates
    • Verified generation with an external checker
  4. Why is a distilled student more fragile than its teacher off-distribution?
    • It learned the shape of the teacher's outputs on the covered region rather than the underlying capability, so it degrades into confident imitation
    • It has fewer parameters, so it forgets faster
    • Distillation removes the tokenizer's rare tokens
    • The student is trained at lower precision
  5. Does generating a synthetic version of sensitive records make the result automatically anonymous?
    • Yes, synthetic records by definition describe no real person
    • Yes, provided the generator is a large language model
    • No, because a generator trained on sensitive data can memorise and reproduce rare distinctive records, so disclosure risk must be argued rather than assumed
    • No, but only if the dataset is published externally

Related lessons

AI
intermediate

What This Teaches About Measuring Anything

The exchange is a case study with transferable rules. A conclusion resting on failures needs a failure taxonomy. Every instance must be verified solvable before anyone is scored against it. Output format is a confound whenever answers get long. And when two explanations fit the same data, the productive move is to find the prediction on which they differ, then test it.

8 steps·~12 min
AI
intermediate

The Rebuttal: Three Ways to Score Zero Without Failing

The response disputed none of the data and argued the experiment measured something other than reasoning. Models had to print move lists exceeding their output limits, and said so in the transcripts. Some instances had no solution and were scored as failures anyway. And asking for a program instead of a move list produced high accuracy on instances reported as total collapse.

8 steps·~12 min
AI
intermediate

The Experiment: Puzzles With a Difficulty Dial

Apple researchers built an evaluation designed to fix a real problem with benchmarks: puzzles where difficulty turns up smoothly while the logic stays identical, and every step can be checked. They found accuracy collapsing to zero past a threshold, and not improving when the solution algorithm was handed to the model. This lesson covers the design and why it was a good one.

8 steps·~12 min
AI
intermediate

Ten Domains, and a Profile That Is Not Flat

The framework scores ten cognitive domains at ten percent each. Running it produces something more useful than the headline totals of 27 percent for GPT-4 and around 57 for GPT-5: a jagged profile, where a model is at or near full marks on some domains and at zero on others. This lesson walks the domains, reads both profiles column by column, and shows what the jaggedness explains.

8 steps·~12 min