Target size ≠ generation volume
If your quality filter keeps 75% of samples, you need to generate about 1 / 0.75 as many raw examples to hit the accepted target. That over-generation multiplies every pass in the pipeline.
Critique and filter are separate meters
Self-refine loops and LLM filters can cost as much as generation—especially when they run on every raw sample, including ones you later discard.
Batch for offline datasets
Synthetic data jobs are rarely latency-sensitive. Prefer batch APIs when available, and calibrate accept rate on a small pilot before scaling to tens of thousands of examples.
FAQ
Does this include fine-tuning train cost?
No—only creating the dataset. Pair with the fine-tuning calculator for training spend on the resulting tokens.