Sprytne Okazje — promocje, kody rabatowe i wyprzedaże

Generator fikcyjnych danych użytkownika

Generuj kompletne fikcyjne profile użytkowników: imię, nazwisko, email, adres, telefon, data urodzenia, PESEL. Do testów i mockupów. Bezpłatnie.

Bezpieczne (SSL)
Przetwarzanie Lokalne
100% Darmowe
Instrukcja
  • 1
    Wprowadź dane
    Wpisz treść, wklej tekst lub załaduj plik z dysku.
  • 2
    Kliknij przycisk
    Narzędzie natychmiast przetworzy Twoje dane w przeglądarce.
  • 3
    Pobierz wynik
    Skopiuj gotowy tekst lub zapisz plik na urządzeniu.
function runTool() {
  return "Wynik gotowy w 0.1s";
}
111 znaków

Użytkowników

10 os.
OK

każdy losowany na nowo — brak ziarna, wyniki się różnią

Pól na użytkownika

10 szt.

id, imię, nazwisko, pełna nazwa, płeć, e-mail + włączone opcje

Kraj

Angielski (Stany Zjednoczone)

Format

JSON
IDImięNazwiskoNazwaPłećE-mailAdresTelefonNazwa użytkownikaHasło
6e234cfc-7bba-495c-9c47-5f1013aa746fCharlotteGarciaCharlotte Garciafemale[email protected]
Ulica
834 Pine Road
Miasto
Boston
Region
CA
Kod pocztowy
44881
Kraj
United States
+1 (112) 108-5496charlottegarcia144hAF$%myF3z$e
c1887195-cdaf-42c5-8bf2-cd57610d8765OliviaWilliamsOlivia Williamsfemale[email protected]
Ulica
950 Park Drive
Miasto
Phoenix
Region
MA
Kod pocztowy
66690
Kraj
United States
+1 759-877-7628oliviawilliams3154z*m6Eeve8%3
72358539-79f5-4629-8121-33051053cc9fMichaelGarciaMichael Garciamale[email protected]
Ulica
601 Cedar Lane
Miasto
Austin
Region
WA
Kod pocztowy
39060
Kraj
United States
+1 (185) 262-5456michaelgarcia9626cW7*MCaR*dX
bfeeb2ea-4234-4749-bc6d-e91ac8c2f3d0CharlotteDavisCharlotte Davisfemale[email protected]
Ulica
364 Pine Road
Miasto
Seattle
Region
IL
Kod pocztowy
90335-2688
Kraj
United States
+1 525-795-7850charlottedavis444*9?H7ysKmam*
ac996e73-e953-4671-bcec-3e9c88d087a4CharlotteJohnsonCharlotte Johnsonfemale[email protected]
Ulica
609 Maple Street
Miasto
Boston
Region
CA
Kod pocztowy
14420-0202
Kraj
United States
+1 213-781-9638charlottejohnson3408y?DZ$hVDK%f
fbac2197-64b4-48f4-8c1b-4b7b6d9af5bbJamesMillerJames Millermale[email protected]
Ulica
176 Maple Street
Miasto
Austin
Region
IL
Kod pocztowy
33363
Kraj
United States
+1 (050) 408-1416jamesmiller490a8A7RwXqyQ*E
dd5c6ade-cbf5-40ec-8622-56605d0a957cEmmaDavisEmma Davisfemale[email protected]
Ulica
91 Maple Street
Miasto
Chicago
Region
CA
Kod pocztowy
33195
Kraj
United States
+1 (448) 975-0758emmadavis407xJrn47T#J?d#
99fcdedf-d517-49bb-8a71-9831b6cb4780EthanSmithEthan Smithmale[email protected]
Ulica
514 Maple Street
Miasto
Boston
Region
CO
Kod pocztowy
28602
Kraj
United States
+1 (180) 991-8579ethansmith5502Yb9#8J%v9*b
95bb9c00-c7e7-450a-b5f5-7c5dba16dd7fMichaelGarciaMichael Garciamale[email protected]
Ulica
925 Maple Street
Miasto
Chicago
Region
WA
Kod pocztowy
39277
Kraj
United States
+1 655-940-5300michaelgarcia784MG*uk93yfkK
e576fbb6-0656-4a87-a51c-4b9ddffeeec9OliviaWilliamsOlivia Williamsfemale[email protected]
Ulica
258 Maple Street
Miasto
Denver
Region
CA
Kod pocztowy
33320
Kraj
United States
+1 127-622-1787oliviawilliams324t?9nk@n*9!Wz
Pole Jak powstaje (z kodu silnika) Przykład (domyślne ustawienia)
id UUID w wersji 4 losowany z CSPRNG (random_bytes, bity wersji i wariantu ustawiane wg specyfikacji) 8484aa25-e66b-4e0a-a07d-a34f32a1c0eb
Imię i nazwisko losowane z pul dla wybranego kraju i płci (po 8 imion męskich i żeńskich oraz 8 nazwisk na kraj); „dowolna” płeć losuje 50/50 William Williams
E-mail imię.nazwisko (transliterowane, bez ogonków) + losowy numer 10–999 @ domena testowa: example.com, mail.test, demo.local lub testmail.dev [email protected]
Adres ulica z numerem 10–999, miasto i region z pul kraju; kod pocztowy wg maski kraju (# → cyfra, A → wielka litera), np. PL ##-###, GB AA# #AA 290 Pine Road, Boston 58257-4445, United States
Telefon maska kraju z puli (np. +48 ### ### ###, +1 (###) ###-####), każde # to losowa cyfra +1 163-921-7783
Login (username) imię + nazwisko bez ogonków, małe litery + losowy numer 10–999 williamwilliams320
Hasło (password) 12 znaków z CSPRNG: gwarantowane mała, wielka, cyfra i znak specjalny (!@#$%*?), reszta losowana, kolejność tasowana Fisherem–Yatesem AgMDde?D8#Vq

RODO — dane fikcyjne: imiona, adresy, telefony i hasła są losowane wyłącznie na serwerze podczas generowania. Nie pochodzą z żadnej prawdziwej osoby, nie są zapisywane i nie sprawdzają, czy istnieją. E-maile trafiają tylko do zarezerwowanych domen testowych (example.com, mail.test, demo.local, testmail.dev) — wysyłka na nie nie jest możliwa. Nie używaj tych danych do rejestracji w realnych serwisach ani do podszywania się.

Fikcyjni użytkownicy: testy bez prawdziwych danych

Do czego ten generator

Zapełnianie tabel, testowanie importów CSV/JSON, ekrany rejestracji, demonstracje paneli i szkolenia. Batch do 50 rekordów w jednym przebiegu, z adresem, telefonem i danymi logowania dołączanymi na żądanie — panel bez danych wygląda martwo, a z fikcyjnymi wygląda realnie, nie ryzykując niczego.

Losowość, nie ziarno

Ten silnik losuje każdą partię od nowa (mt_rand/random_int), więc dwa przebiegi dadzą różne osoby — do powtarzalnych testów zapisz wygenerowaną partię do pliku. Jeśli potrzebujesz deterministycznych profili z ziarna (ten sam seed = ten sam profil), użyj generatora profilu użytkownika.

Domeny testowe celowo

E-maile kończą się na example.com, mail.test, demo.local i testmail.dev — domenach zarezerwowanych do dokumentacji i testów, które nigdy nie dostaną prawdziwej poczty. Dzięki temu żaden test rejestracji z powiadomieniami nie wyśle maila przypadkowej osobie.

Hasła tylko na testy

Hasła spełniają typowe reguły złożoności (mała, wielka, cyfra, znak specjalny, 12 znaków), ale są publicznie wygenerowane — nadają się wyłącznie do środowisk testowych i demonstracji. W produkcji obowiązkowo własna rejestracja z hashowaniem (bcrypt/argon2) i nigdy te wartości.

Wskazówka: kafelki nad wynikiem pokazują liczbę rekordów, liczbę pól na użytkownika, kraj i format — a eksport zapisuje partię w dokładnie tym formacie, który wybrałeś (.json, .csv lub .txt).

Oceń to narzędzie:

Powiązane narzędzia

Inne narzędzia, które mogą Ci się przydać

Generator fikcyjnych danych użytkownika – kompletna persona testowa

Fikcyjne dane użytkownika są niezbędne przy tworzeniu: mockupów UI, baz danych testowych, seed scripts, demonstracji produktu i testów bez ryzyka RODO. Generator tworzy kompletne, realistycznie wyglądające profile z wszystkimi polami typowymi dla systemu użytkowników.

generator fikcyjnych danych fake user data generator persona testowa dane testowe użytkownik RODO

Co zawiera profil testowy

Imię i nazwisko: realistyczne polskie lub zagraniczne. Email: zbudowany z imienia+nazwiska@domain. Telefon: format polskie +48 6xx-xxx-xxx. Adres: ulica, kod pocztowy, miasto, województwo. Data urodzenia: losowa w przedziale wiekowym. PESEL: walidowany algorytmem (suma kontrolna). Hasło (zahashowane): bcrypt. Avatar: placeholder image.

RODO a dane testowe

RODO (GDPR) Art. 5: dane osobowe = "informacje o zidentyfikowanej lub identyfikowalnej osobie fizycznej". Fikcyjne dane: nie są danymi osobowymi (nie odnoszą się do realnej osoby). Bezpieczne alternatywy: (1) generator fikcyjnych danych, (2) anonimizacja prawdziwych danych. Produkcja: nigdy prawdziwe dane w testach/staging!

Algorytm PESEL – walidacja

PESEL: 11 cyfr. Ciąg: RRMMDDXXXXY (R=rok, M=miesiąc, D=dzień, X=numer porządkowy, Y=cyfra kontrolna). Urodzony w XX w.: RRMMDD. W XXI w.: miesiąc + 20 (np. 2001 = miesiąc 01 → 21). Kontrolna: wagi 1,3,7,9,1,3,7,9,1,3 → suma mod 10 = (10 - mod) mod 10.

Popularne biblioteki do generowania danych

JavaScript: @faker-js/faker. faker.person.fullName(), faker.internet.email(), faker.location.city(). Python: Faker. fake = Faker("pl_PL"); fake.name(). PHP: fakerphp/faker. $faker = Faker\Factory::create("pl_PL"). Java: Java Faker (com.github.javafaker). C#: Bogus (NuGet). Wszystkie obsługują lokalizację polską.

Jak działa generator person testowych

Generator nie losuje każdego pola osobno. Najpierw powstaje szkielet persony: płeć oraz data urodzenia. Dopiero z tego szkieletu wyprowadzane są pola pochodne — imię i nazwisko ze słownika dopasowanego do płci i lokalizacji, e-mail przez sklejenie imienia i nazwiska, PESEL z daty urodzenia i numeru porządkowego, telefon z formatu krajowego. Taka kolejność daje rekord spójny wewnętrznie: płeć w imieniu zgadza się z cyfrą porządkową numeru, a wiek wynika z daty wpisanej w PESEL. Losowanie niezależnych ciągów znaków dałoby zestaw, który na pierwszy rzut oka wygląda jak zbiór przypadkowych wartości i szybko psuje testy formularzy.

Kluczowym elementem mechanizmu jest cyfra kontrolna PESEL. Generator wybiera najpierw dziesięć cyfr: sześć z daty urodzenia (z przesunięciem miesiąca o 20 dla osób urodzonych w XXI wieku) oraz cztery z numeru porządkowego, którego ostatnia cyfra koduje płeć. Następnie liczy iloczyny tych cyfr z wagami, sumuje je i sprawdza resztę z dzielenia przez 10. Dopiero tak policzona jedenasta cyfra trafia do numeru, dlatego wygenerowany PESEL przechodzi standardową walidację, mimo że nie pochodzi z żadnego rejestru.

Drugi mechanizm to losowość powtarzalna. Generator korzysta z pseudolosowego strumienia liczb, który można zainicjować ziarnem (seed). To samo ziarno i ta sama wersja słowników dają identyczną personę przy każdym uruchomieniu, co pozwala odtworzyć stan bazy testowej albo powtórzyć nieudany przypadek. Bez ziarna każdy profil jest inny, ale wciąż zgodny z regułami formatu — długość numeru, suma kontrolna i format telefonu są sprawdzane przed zwróceniem wyniku, więc do aplikacji nie trafia ciąg, który nie przeszedłby walidacji składniowej.

Przykład: jedna persona krok po kroku

  1. Wybór szkieletu: kobieta, data urodzenia 12 marca 1990. W zapisie PESEL daje to ciąg 900312 — rok 90, miesiąc 03, dzień 12.
  2. Imię i nazwisko ze słownika żeńskiego: Anna Kowalska. Pola pochodne: e-mail [email protected] oraz telefon w formacie krajowym +48 612-345-678.
  3. Numer porządkowy to cztery cyfry 1234. Pierwsze dziesięć cyfr numeru ma postać 9003121234, a ostatnia cyfra porządkowa (4, parzysta) jest spójna z płcią żeńską.
  4. Suma kontrolna: iloczyny kolejnych cyfr z wagami 1, 3, 7, 9, 1, 3, 7, 9, 1, 3 wynoszą 9, 0, 0, 27, 1, 6, 7, 18, 3, 12. Suma to 83, a reszta z dzielenia przez 10 to 3.
  5. Cyfra kontrolna: (10 - 3) mod 10 = 7. Pełny PESEL to 90031212347 — jedenaście cyfr z poprawną sumą kontrolną.
  6. Rekord trafia do seed script razem z adresem, hasłem w postaci skrótu bcrypt i adresem avatara. Przy tym samym ziarnie cały zestaw pól odtworzymy identycznie przy kolejnym uruchomieniu.

Pola persony i reguły ich budowy

PoleRegułaPrzykład
Imię i nazwiskolosowane ze słownika dopasowanego do płci i lokalizacjiAnna Kowalska
E-mailimie.nazwisko małymi literami plus domena[email protected]
Telefonformat krajowy +48 6xx-xxx-xxx+48 612-345-678
Data urodzenialosowa w zadanym przedziale wiekowym, w PESEL jako RRMMDD12.03.1990, czyli 900312
PESEL11 cyfr, ostatnia liczona z wag 1, 3, 7, 9, 1, 3, 7, 9, 1, 390031212347
Adresulica, kod pocztowy, miasto, województwoul. Przykładowa 12, 00-001 Warszawa, mazowieckie
Hasłowyłącznie jako nieodwracalny skrót bcryptskrót bcrypt, bez jawnego hasła
Avataradres obrazu zastępczegoplaceholder, nie zdjęcie realnej osoby

Jak wdrożyć generator w projekcie

  • Ustal ziarno przed pierwszym uruchomieniem — zapisz je w konfiguracji obok skryptu seedującego. Bez tego każde odtworzenie bazy daje inne dane i nie da się powtórzyć błędu zgłoszonego przez testera.
  • Przypnij wersję biblioteki — słowniki imion, nazwisk i miast zmieniają się między wydaniami, więc aktualizacja zależności potrafi zmienić wynik przy niezmienionym ziarnie.
  • Oznacz rekordy jako testowe — dodaj pole znacznikowe albo prefiks w adresie e-mail, żeby jednym zapytaniem usunąć cały zestaw i nie pomylić go z kontami zakładanymi ręcznie na stagingu.
  • Testuj warianty skrajne, nie tylko typowy profil — długie nazwisko, brak drugiego imienia, adres zagraniczny czy osoba urodzona w XXI wieku ujawniają błędy szerokości kolumn i skracania tekstu w UI.
  • Używaj tego samego kodu walidującego co produkcja — generator pilnuje sumy kontrolnej PESEL i formatu telefonu, ale reguły biznesowe aplikacji, na przykład minimalny wiek, trzeba przetestować osobno.

Ograniczenia i pułapki

  • Brak gwarancji unikalności — losowanie może powtórzyć tę samą kombinację pól, więc unikalność e-maila czy loginu musi wymusić baza albo skrypt seedujący, a nie sam generator.
  • Adres nie jest weryfikowany przestrzennie — ulica nie musi istnieć w podanym mieście, a kod pocztowy nie odpowiada realnemu obszarowi. Testy geokodowania i normalizacji adresów wymagają innego źródła danych.
  • Rozkłady nie odwzorowują populacji — słowniki zawierają ograniczoną liczbę imion, nazwisk i miast, więc przy dużym zbiorze proporcje i rzadkie przypadki będą odbiegać od rzeczywistych.
  • Persona nie zna reguł biznesowych — generator nie wie o limitach długości, polach wymaganych, relacjach między tabelami ani unikalnych indeksach; to trzeba narzucić w seed script, inaczej import zakończy się błędem.

Najczęstsze pytania

Jak generować PESEL z datą urodzenia?

1. Wyznacz rok i miesiąc urodzenia. 2. Jeśli ≥ 2000: dodaj 20 do miesiąca. 3. Wygeneruj losowe 4 cyfry XXX (porządkowy) + parzysty/nieparzysty dla płci (ostatni przed kontrolną). 4. Oblicz cyfre kontrolną: wagi 1,3,7,9,1,3,7,9,1,3. suma × odpowiednia cyfra → suma mod 10 → kontrolna = (10 - suma mod 10) mod 10.

Jak generować realistyczne emaile testowe?

Format: [email protected]. Domeny testowe: @example.com, @test.com, @mailtest.net (RFC 2606 zarezerwowane). Unikaj: @gmail.com, @wp.pl (możliwość kolizji z prawdziwymi). Faker: faker.internet.email("Jan", "Kowalski") = "[email protected]". Subaddressing: [email protected].

Jak importować fikcyjne dane do MySQL?

PHP: foreach ($faker->count(100)) → INSERT. Laravel seeder: UserFactory::count(100)->create(). Node.js: faker loop + mysql2 query. SQL: load from CSV (LOAD DATA INFILE). Python: faker loop + pymysql execute. Tip: użyj transakcji (BEGIN/COMMIT) dla szybkości przy dużych zestawach.

Jakie pola powinien zawierać user record?

Minimum: id (UUID), email (unique), password_hash. Standard: + first_name, last_name, created_at, updated_at. E-commerce: + address, phone, date_of_birth. PL system: + PESEL (zaszyfrowany), NIP (dla firm). Avatar: URL do S3 lub placeholder. Soft delete: deleted_at (nullable). Email verified: email_verified_at.

Jak anonimizować prawdziwe dane produkcyjne do testów?

Anonymization script: foreach user: user.email = fake.email(); user.phone = fake.phone(). Pseudonymization: hash(real_email + salt) → traceability zachowana. Tools: ARX Data Anonymization Tool, Amnesia. AWS: Macie wykrywa PII, Glue + DynamoDB do maskowania. Pamiętaj: kopia produkcji z prawdziwymi danymi na staging = naruszenie RODO.

Czy wygenerowane dane można wgrać na produkcję?

Nie. Persony testowe służą do baz deweloperskich, stagingu, mockupów i demonstracji. Na środowisku produkcyjnym konta zakładają realni użytkownicy, a fikcyjne rekordy zaburzają statystyki i mogą łamać reguły biznesowe.

Jak uzyskać powtarzalne wyniki przy kolejnym uruchomieniu?

Ustaw ziarno generatora i zapisz numer wersji biblioteki razem ze skryptem. Ten sam seed i te same słowniki dają identyczny zestaw person, natomiast zmiana wersji biblioteki może zmienić wynik.

Czy PESEL z generatora przejdzie walidację w moim formularzu?

Sam numer tak, bo cyfra kontrolna jest liczona z wag i suma się zgadza. Walidacja w aplikacji może jednak wymagać dodatkowych warunków, na przykład minimalnego wieku albo zgodności numeru z datą urodzenia w profilu.

Generator czy anonimizacja — co wybrać?

Generator, gdy potrzebujesz danych od zera i nie masz dostępu do zbioru produkcyjnego. Anonimizację, gdy wynik ma zachować rozkłady i relacje z prawdziwego zbioru, na przykład przy testach wydajności na realistycznych wolumenach.

Czy e-mail z persony może trafić do prawdziwej skrzynki?

Może, jeśli użyjesz domeny, która istnieje i należy do kogoś innego. Do testów wybierz domenę, którą kontrolujesz, albo domenę przeznaczoną do przykładów, i wyłącz realną wysyłkę wiadomości na środowisku testowym.

Powiązane narzedzia: generator losowych adresow, generator imion i walidator PESEL.

Zainstaluj Webp.pl Miej narzędzia we własnej kieszeni!