Перейти к инструменту
ViewCSV
Без загрузки на сервер

Генератор CSV

Предпросмотр
#idnameemailsignup_dateplanamount
11Мария Поповtaylor.harbor1@example.test2025-03-17Free315.13
22Дмитрий Морозовtaylor.velvet2@example.test2025-07-22Free485.36
33Андрей Волковquinn.orbit3@example.test2025-02-26Free397.70
44Иван Фёдоровmorgan.lumen4@example.test2024-09-28Team258.90
55Александр Михайловavery.atlas5@example.test2024-01-11Free250.80
66Иван Смирновjamie.signal6@example.test2024-08-18Free319.01
77Михаил Волковavery.cedar7@example.test2024-10-17Free162.79
88Елена Кузнецовriley.atlas8@example.test2024-11-26Free476.86
99Александр Волковavery.copper9@example.test2024-07-19Free15.43
1010Елена Морозовriley.velvet10@example.test2024-09-20Free246.07
1111Мария Соколовavery.cobalt11@example.test2024-09-25Pro414.32
1212Дмитрий Смирновmorgan.signal12@example.test2025-04-20Free388.35
1313Сергей Морозовtaylor.harbor13@example.test2025-02-17Free193.23
1414Татьяна Михайловmorgan.quartz14@example.test2024-02-19Free425.88
1515Александр Морозовriley.atlas15@example.test2025-06-29Free303.49
1616Александр Кузнецовquinn.ember16@example.test2025-01-17Free269.41
1717Михаил Васильевjamie.copper17@example.test2025-03-14Free339.44
1818Дмитрий Смирновquinn.maple18@example.test2025-08-17Pro160.18
1919Ольга Ивановquinn.prism19@example.test2025-09-05Pro444.79
2020Татьяна Кузнецовalex.copper20@example.test2024-04-18Pro321.08
2121Наталья Михайловjordan.cedar21@example.test2025-05-06Pro259.88
2222Наталья Васильевjordan.maple22@example.test2024-11-13Pro450.71
2323Дмитрий Михайловjamie.harbor23@example.test2025-02-26Free243.05
2424Татьяна Соколовmorgan.delta24@example.test2024-02-22Free59.72
2525Андрей Ивановjamie.orbit25@example.test2024-12-20Free90.04
2626Александр Соколовcasey.paper26@example.test2024-01-11Pro454.97
2727Ольга Новиковjordan.tundra27@example.test2025-03-01Free468.54
2828Дмитрий Ивановtaylor.cedar28@example.test2024-05-07Pro399.73
2929Татьяна Кузнецовjamie.signal29@example.test2024-07-01Free339.48
3030Дмитрий Михайловalex.meadow30@example.test2025-11-09Pro267.97

Предпросмотр: первые 100 из 100 строк.

Задайте до 100 столбцов, выберите для каждого тип поля, укажите число строк от 1 до 1 000 000 и начальное значение (seed). Одинаковый seed и одинаковые настройки столбцов всегда дают одни и те же строки в любом браузере, так что тестовый файл можно не хранить, а создать заново. Имена, адреса email и телефоны вымышлены: адреса заканчиваются на @example.test, а телефоны в английской версии используют диапазон 555. Генерация идёт в вашем браузере, ничего не загружается на сервер.

Как создать CSV-файл

  1. Укажите число строк (от 1 до 1 000 000) и seed. Начальная настройка содержит шесть столбцов: последовательный id, полное имя, email, дату регистрации в 2024–2025 годах, тариф Free, Pro или Team в соотношении 6:3:1 и сумму от 0 до 500 с двумя знаками после запятой.
  2. Добавьте, удалите или переименуйте столбцы и выберите для каждого тип поля. У каждого столбца должно быть заполненное и уникальное название.
  3. При желании задайте долю пустых ячеек или потребуйте уникальных значений в столбце, затем сгенерируйте и скачайте файл.

Строки записываются в фоновом обработчике частями, а не одной огромной строкой, поэтому файл на миллион строк не подвешивает страницу, а отмена останавливает задачу. Один выходной файл ограничен 4 ГБ.

Типы полей

ПоследовательностьСчитает от начального значения (по умолчанию 1) с заданным шагом (по умолчанию 1). Необязательная ширина дополнения нулями даёт идентификаторы вида 000001; отрицательные числа нулями не дополняются.
UUIDСтруктура версии 4 из RFC 9562 (xxxxxxxx-xxxx-4xxx-[89ab]xxx-…), значения берутся из генератора с seed. Они воспроизводимы, поэтому не годятся как секрет или токен безопасности.
Имя, фамилия, полное имяРаспространённые имена для языка интерфейса. Китайские, японские и корейские полные имена пишутся с фамилии и без пробела.
Emailname.word<row>@example.test, например casey.maple1@example.test. Номер строки делает каждый адрес уникальным. Адрес не строится из столбца с именем.
ТелефонШаблон, в котором каждый # заменяется цифрой. Оставьте поле пустым, чтобы взять формат языка по умолчанию; в английском это +1 555-###-####, в русском — +7 495 ###-##-##.
Компания, город, странаВыдуманные названия компаний и реальные города для языка интерфейса; страна выбирается из фиксированного списка из 20.
Целое числоЦелое число между минимумом и максимумом включительно. Обе границы обязательны и должны оставаться в пределах ±9 007 199 254 740 991 — это самые большие целые числа, которые JavaScript хранит точно.
Дробное числоЧисло между минимумом и максимумом, от 0 до 10 знаков после запятой, например 114.71.
Логическое значениеtrue или false с равной вероятностью.
Дата, дата и времяСлучайный день между двумя датами в формате YYYY-MM-DD включительно. Тип «дата и время» добавляет случайное время в UTC: 2026-01-04T09:17:35Z.
Выбор из спискаПо одному значению в строке, с необязательным весом после двоеточия: при Free:6, Pro:3, Team:1 Free выпадает примерно в 60 % случаев. Строки без веса считаются с весом 1.
ШаблонШаблон, где # — цифра, ? — заглавная латинская буква, а * — цифра или заглавная буква: SKU-####-?? даёт SKU-6836-LU. Все остальные символы копируются как есть.
СловаОт 1 до 20 слов (по умолчанию 3) из фиксированного списка из 20 простых английских слов — для текста-заполнителя.
КонстантаОдин и тот же текст в каждой строке.

Seed и воспроизводимость

Seed — любой текст. Каждый столбец берёт значения из собственного случайного потока, который зависит от seed и названия столбца, поэтому:

  • одинаковые seed, число строк и настройки столбцов всегда дают побайтно одинаковый файл в любом браузере;
  • если добавить, удалить или переставить другие столбцы, значения столбца не изменятся, а если переименовать сам столбец — изменятся;
  • если запросить больше строк, прежние строки останутся без изменений, а новые добавятся в конец;
  • язык интерфейса меняет имена, города, компании и формат телефона по умолчанию, но не числа, даты, варианты выбора и адреса email.

Для пустых ячеек используется отдельный поток. Пустая ячейка не расходует значение, поэтому при изменении доли пустых ячеек сдвигается то, какие значения попадут в последующие строки этого столбца.

Пустые ячейки и уникальные значения

Доля пустых ячеек задаётся в процентах от 0 до 100 для каждого столбца; каждая ячейка остаётся пустой с этой вероятностью. Так удобно проверять, как импорт справляется с пропущенными значениями.

Уникальные значения: значение генерируется заново, пока не найдётся ещё не использованное в этом столбце; после 1000 попыток генерация прекращается с ошибкой, в которой назван столбец. Если уникальность заведомо невозможна, настройки отклоняются сразу: диапазон целых чисел, в котором чисел меньше, чем строк, или список вариантов короче числа строк. Значения других типов всё равно могут закончиться посередине — например, уникальные полные имена в английской версии заканчиваются примерно после 144 строк (12 имён × 12 фамилий). Для последовательности, UUID и константы проверка не выполняется, а пустые ячейки значениями не считаются.

Ошибки в настройках

  • Число строк должно быть целым от 1 до 1 000 000, а столбцов — от 1 до 100.
  • Название столбца пустое или повторяется: каждый заголовок должен быть заполнен и отличаться от остальных.
  • Для целых и дробных чисел нужны и минимум, и максимум, причём минимум не может быть больше максимума.
  • Диапазон дат записывается как YYYY-MM-DD, например 2024-01-01; 2024/01/01 или 01/02/2024 не принимаются.
  • В шаблоне должен быть хотя бы один символ #, ? или *; иначе используйте константу.
  • В списке вариантов нужно хотя бы одно значение с весом больше нуля.

Пример

Пять строк с seed demo-2026: последовательность от 1001 с дополнением до 6 цифр, полное имя, email, выбор с весами, дробное число от 0 до 250 с 40 % пустых ячеек и шаблон SKU-####-??. Запустите ещё раз с теми же настройками — получите ровно эти строки. Окончания строк показаны как обычные переносы.

CSV
rows: 5    seed: demo-2026    language: English
customer_id  sequence  start 1001, width 6
name         full name
email        email
plan         choice    Free:6 / Pro:3 / Team:1
mrr          decimal   0–250, 2 places, 40% blank
sku          pattern   SKU-####-??
CSV
customer_id,name,email,plan,mrr,sku
001001,Mary Brown,casey.maple1@example.test,Free,,SKU-6836-LU
001002,Ethan Davis,taylor.copper2@example.test,Pro,,SKU-8060-HR
001003,Ethan Clark,morgan.falcon3@example.test,Team,114.71,SKU-1401-TZ
001004,Olivia Davis,jordan.harbor4@example.test,Pro,91.82,SKU-8840-PT
001005,Mia Taylor,casey.prism5@example.test,Free,6.99,SKU-6878-OZ

Вопросы и ответы

Можно ли делиться сгенерированными данными?

В них нет реальных людей: имена — случайные пары распространённых имён и фамилий, адреса email используют зарезервированный домен .test (RFC 2606), а телефоны в английской версии — диапазон 555. Города при этом реальные.

Получит ли коллега такой же файл?

Да, если он укажет тот же seed, то же число строк, тот же язык интерфейса и те же настройки столбцов, включая их названия. Генератор использует собственный алгоритм с seed, а не случайные числа браузера.

Что мне нужно — большой файл или маленький набор?

Если нужны несколько описанных строк с известными подвохами, возьмите примеры CSV-файлов. Генератор пригодится, когда нужен объём, собственные названия столбцов или определённое сочетание типов.

Стандарты и справочные материалы