Dataset fault injector

Give your validator a known set of mistakes to find.

1–1,000 rows. Preview: first 20. Downloads include all rows.

Same seed and settings, same recipe. New seed gives a different sample.

Settings and five recent runs stay in this browser.

Latest result

Ready when you are

Give your validator a known set of mistakes to find.

Clear recent runs?

This clears the current result and recent runs on this device. Undo can restore them while this page is open.

How it works

  1. Choose a fault type and the percentage of eligible rows to change. Start with 10% to inspect a small set of errors.
  2. Generate a fixture. The preview shows damaged rows; the report gives the actual number of changes.
  3. Export damaged data, clean CSV and the change manifest separately. Join them by stable row_id to check your validator.

Every change has an answer

Fixtures contain a stable row_id plus an ID, five-row group, date, class label and numeric value. Faults replace value with null or text, add 10,000 to it, or duplicate the first ID into selected later rows. Duplicate-ID mode excludes the first row from the eligible pool. Counts round to the nearest row. Only one fault type applies per run, and the manifest records each before/after value.

Your inputs stay with you

Your inputs and generated results stay in this browser. Settings and five recent runs use local storage; clearing browser data removes them. Export a copy to keep it. Hosting may record standard page-request logs, but generated rows and participant names are not sent to the server.

Can I upload my own dataset?

This version creates its own fixtures locally. It does not upload or edit personal datasets. Keeping the clean fixture, damaged fixture and exact change manifest together makes a useful regression test for an importer or validation pipeline.

Repeatable test data

The research tools use the versioned xoshiro128** pseudorandom generator with named seed streams. They are intended for small examples and testing, not secrets or certified draws. A recipe records parameters and generator version. Floating-point transforms are rounded to six decimal places; keep exported files when exact cross-platform bytes matter.

Seeds are repeatable. Use the password generator for credentials.

Privacy settings

Choose whether this browser allows optional Google Analytics. We remember your preference for up to 180 days. You can change it here at any time.

Optional analytics is not enabled on this site. No Google Analytics tag is loaded.