Vai allo strumento
ViewCSV
Nessun caricamento del file

Generatore CSV

Anteprima
#idnameemailsignup_dateplanamount
11Giulia Espositotaylor.harbor1@example.test2025-03-17Free315.13
22Lorenzo Brunotaylor.velvet2@example.test2025-07-22Free485.36
33Andrea Galloquinn.orbit3@example.test2025-02-26Free397.70
44Alessandro Grecomorgan.lumen4@example.test2024-09-28Team258.90
55Leonardo Ricciavery.atlas5@example.test2024-01-11Free250.80
66Alessandro Russojamie.signal6@example.test2024-08-18Free319.01
77Francesco Galloavery.cedar7@example.test2024-10-17Free162.79
88Aurora Ferraririley.atlas8@example.test2024-11-26Free476.86
99Leonardo Galloavery.copper9@example.test2024-07-19Free15.43
1010Aurora Brunoriley.velvet10@example.test2024-09-20Free246.07
1111Giulia Colomboavery.cobalt11@example.test2024-09-25Pro414.32
1212Lorenzo Russomorgan.signal12@example.test2025-04-20Free388.35
1313Mattia Brunotaylor.harbor13@example.test2025-02-17Free193.23
1414Ginevra Riccimorgan.quartz14@example.test2024-02-19Free425.88
1515Leonardo Brunoriley.atlas15@example.test2025-06-29Free303.49
1616Leonardo Ferrariquinn.ember16@example.test2025-01-17Free269.41
1717Francesco Bianchijamie.copper17@example.test2025-03-14Free339.44
1818Lorenzo Russoquinn.maple18@example.test2025-08-17Pro160.18
1919Alice Rossiquinn.prism19@example.test2025-09-05Pro444.79
2020Ginevra Ferrarialex.copper20@example.test2024-04-18Pro321.08
2121Emma Riccijordan.cedar21@example.test2025-05-06Pro259.88
2222Emma Bianchijordan.maple22@example.test2024-11-13Pro450.71
2323Lorenzo Riccijamie.harbor23@example.test2025-02-26Free243.05
2424Ginevra Colombomorgan.delta24@example.test2024-02-22Free59.72
2525Andrea Rossijamie.orbit25@example.test2024-12-20Free90.04
2626Leonardo Colombocasey.paper26@example.test2024-01-11Pro454.97
2727Alice Marinojordan.tundra27@example.test2025-03-01Free468.54
2828Lorenzo Rossitaylor.cedar28@example.test2024-05-07Pro399.73
2929Ginevra Ferrarijamie.signal29@example.test2024-07-01Free339.48
3030Lorenzo Riccialex.meadow30@example.test2025-11-09Pro267.97

Anteprima delle prime 100 su 100 righe.

Definisci fino a 100 colonne, scegli il tipo di dati di ognuna, imposta un numero di righe da 1 a 1.000.000 e un seed. Con lo stesso seed e le stesse impostazioni delle colonne ottieni sempre le stesse righe, in qualsiasi browser: un file di test si può ricreare invece di archiviarlo. Nomi, email e numeri di telefono sono fittizi: le email finiscono con @example.test e i numeri di telefono inglesi usano la serie 555. La generazione avviene nel tuo browser e non viene caricato nulla.

Come generare un file CSV

  1. Imposta il numero di righe (da 1 a 1.000.000) e un seed. La configurazione iniziale ha sei colonne: un id progressivo, nome e cognome, un’email, una data di iscrizione nel 2024–2025, un piano scelto tra Free, Pro e Team in proporzione 6:3:1 e un importo da 0 a 500 con due decimali.
  2. Aggiungi, elimina o rinomina le colonne e scegli per ognuna il tipo di dati. Ogni nome di colonna deve essere compilato e diverso dagli altri.
  3. Se vuoi, imposta una quota di celle vuote o chiedi valori univoci in una colonna, poi genera e scarica il file.

Le righe vengono scritte da un worker in background, a blocchi e non come un’unica stringa enorme: così un file da un milione di righe non blocca la pagina, e se annulli il lavoro si ferma. Un singolo file generato può arrivare al massimo a 4 GB.

Tipi di dati

Numero progressivoConta da un valore iniziale (predefinito 1) con un incremento (predefinito 1). Una larghezza facoltativa con zeri iniziali produce codici come 000001; i numeri negativi non vengono mai completati con zeri.
UUIDStruttura della versione 4 secondo la RFC 9562 (xxxxxxxx-xxxx-4xxx-[89ab]xxx-…), ricavata dal generatore con seed. Essendo riproducibile, non va usata come segreto o token di sicurezza.
Nome, cognome, nome e cognomeNomi comuni per la lingua dell’interfaccia. In cinese, giapponese e coreano il nome completo si scrive con il cognome prima e senza spazio.
Emailname.word<row>@example.test, per esempio casey.maple1@example.test. Il numero di riga rende ogni indirizzo univoco. L’indirizzo non deriva dalla colonna del nome.
Numero di telefonoUn modello in cui ogni # diventa una cifra. Lascialo vuoto per usare il formato predefinito della lingua: in inglese è +1 555-###-####, in italiano +39 06 ########.
Azienda, città, paeseNomi di aziende inventati e nomi di città reali per la lingua dell’interfaccia; il paese viene scelto da un elenco fisso di 20.
Numero interoUn numero intero tra il minimo e il massimo, entrambi inclusi. Servono tutti e due i limiti, che devono restare entro ±9.007.199.254.740.991, i numeri interi più grandi che JavaScript rappresenta in modo esatto.
Numero decimaleUn numero tra il minimo e il massimo con da 0 a 10 cifre decimali, per esempio 114.71 (con il punto come separatore).
true / falsetrue o false con la stessa probabilità.
Data, data e oraUn giorno a caso tra due date YYYY-MM-DD, entrambe incluse. Data e ora aggiunge un orario UTC casuale: 2026-01-04T09:17:35Z.
Uno da un elencoUn valore per riga, con un peso facoltativo dopo i due punti: con Free:6, Pro:3, Team:1 esce Free circa il 60% delle volte. Le righe senza peso valgono 1.
ModelloUno schema in cui # è una cifra, ? una lettera maiuscola e * una cifra o una lettera maiuscola: SKU-####-?? produce SKU-6836-LU. Tutti gli altri caratteri vengono copiati così come sono.
ParoleDa 1 a 20 parole (predefinite 3) prese da un elenco fisso di 20 semplici parole inglesi, come testo di riempimento.
Valore fissoLo stesso testo in ogni riga.

Seed e riproducibilità

Il seed può essere un testo qualsiasi. Ogni colonna attinge a un proprio flusso casuale, ricavato dal seed e dal nome della colonna, quindi:

  • con lo stesso seed, lo stesso numero di righe e le stesse impostazioni delle colonne ottieni ogni volta un file identico byte per byte, in qualsiasi browser;
  • aggiungere, eliminare o riordinare altre colonne non cambia i valori di una colonna, mentre rinominarla sì;
  • se chiedi più righe, quelle precedenti restano invariate e le nuove vengono aggiunte in fondo;
  • la lingua dell’interfaccia cambia nomi, città, aziende e formato predefinito del telefono, ma non numeri, date, opzioni o email.

Le celle vuote usano un flusso separato. Una cella vuota non consuma un valore, quindi se cambi la percentuale di celle vuote cambiano anche i valori che compaiono nelle righe successive di quella colonna.

Celle vuote e valori univoci

Celle vuote è una percentuale da 0 a 100 per colonna: ogni cella resta vuota con quella probabilità. Ti serve per verificare come un’importazione gestisce i valori mancanti.

Con l’opzione Univoci un valore viene estratto di nuovo finché non risulta inutilizzato in quella colonna; dopo 1.000 tentativi il generatore si arrende con un errore che indica la colonna. Le impostazioni vengono rifiutate subito quando l’univocità è impossibile: un intervallo di interi che contiene meno numeri delle righe richieste, o meno opzioni che righe. Gli altri tipi possono comunque esaurirsi a metà, per esempio un nome e cognome univoco dopo circa 144 righe in inglese (12 nomi × 12 cognomi). Le colonne di tipo progressivo, UUID e valore fisso saltano il controllo, e le celle vuote non contano come valori.

Errori nelle impostazioni

  • Il numero di righe deve essere un intero da 1 a 1.000.000 e le colonne devono essere da 1 a 100.
  • Un nome di colonna è vuoto o ripetuto: ogni intestazione deve essere compilata e diversa dalle altre.
  • Le colonne di numeri interi e decimali richiedono sia un minimo sia un massimo, con il minimo non superiore al massimo.
  • Gli intervalli di date vanno scritti nella forma YYYY-MM-DD, per esempio 2024-01-01; 2024/01/01 o 01/02/2024 vengono rifiutati.
  • Un modello deve contenere almeno un #, ? o *; altrimenti usa una colonna a valore fisso.
  • Un elenco di opzioni deve contenere almeno un valore con peso maggiore di zero.

Esempio

Cinque righe con il seed demo-2026 e l’inglese come lingua dei dati: un numero progressivo che parte da 1001 con 6 cifre, nome e cognome, un’email, un’opzione ponderata, un decimale da 0 a 250 con il 40% di celle vuote e il modello SKU-####-??. Rigenerando con le stesse impostazioni ottieni esattamente queste righe. I fine riga sono mostrati come semplici a capo.

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

Domande frequenti

Posso condividere i dati generati senza problemi?

Non contengono persone reali: i nomi sono coppie casuali di nomi comuni, le email usano il dominio riservato .test (RFC 2606) e i numeri di telefono inglesi usano la serie 555. I nomi delle città sono luoghi reali.

Un collega otterrà lo stesso file?

Sì, se usa lo stesso seed, lo stesso numero di righe, la stessa lingua dell’interfaccia e le stesse impostazioni delle colonne, nomi compresi. Il generatore usa un proprio algoritmo con seed e non i numeri casuali del browser.

Mi serve un file grande o un piccolo file di prova?

Se ti bastano poche righe documentate con casi limite noti, usa i file CSV di esempio. Il generatore serve quando ti occorrono volumi, nomi di colonna tuoi o un mix preciso di tipi di dati.

Standard e riferimenti