Random User Generator website screenshot

Random User Generator

Free random user data API for generating realistic fake user profiles with names, addresses, photos, and contact data for UI mockups and testing. Open-source REST API with no authentication required, seedable for reproducibility, and multi-format output (JSON, CSV, YAML, XML).

1 APIs 8 Features
Test DataSynthetic DataMock DataOpen SourcePublic APIFree API

APIs

Random User Generator API

Single GET endpoint that returns a configurable batch of synthetic users. Supports up to 5000 results per request, multi-nationality mixing, field include/exclude projection, de...

Collections

Pricing Plans

Randomuser Plans Pricing

1 plans

PLANS

Rate Limits

Randomuser Rate Limits

0 limits

RATE LIMITS

FinOps

Features

Free and unauthenticated

No API key, no signup, no per-key quotas; just hit the endpoint.

Seedable reproducibility

The same (seed, page, results, version) tuple always returns the same users.

Multi-nationality cohort

Mix 21 nationalities (v1.4) so addresses, IDs, and phone formats stay locale-appropriate.

Field projection

Use `inc` / `exc` to keep payloads small and skip CPU-heavy fields like `login`.

Multi-format output

JSON, PrettyJSON, CSV, YAML, XML; plus JSONP via `callback`.

Path-pinned versioning

Lock requests to /1.0/ through /1.4/ so upstream releases never break your fixtures.

Pre-generated portrait images

Three resolutions (large, medium, thumbnail) hosted on randomuser.me.

Open source

MIT-licensed Node.js codebase; self-hostable if you need air-gapped operation.

Use Cases

Frontend prototyping

Populate UI mockups, design comps, and Storybook fixtures with realistic users.

Test data for QA / CI

Generate seeded fixtures for unit, integration, and snapshot tests.

Load testing

Bulk-generate up to 5000 users per request to seed performance test runs.

i18n / localization

Request specific nationalities to validate address parsing, phone formats, and Unicode rendering.

Demo content

Populate sales demos, sandbox environments, and tutorials with realistic-looking accounts.

Avatar placeholders

Use the picture URLs as throwaway avatars for prototyping.

Integrations

jQuery / AJAX

Documented usage with $.ajax for browser-side fetches.

Node.js

Use directly from server-side JavaScript; offline module available.

Photoshop Extension

Pull synthetic users straight into design comps (legacy extension).

Sketch Extension

Sketch plugin for filling layers with random users (legacy).

Model Context Protocol

Multiple community MCP servers expose the API to LLM agents (pipeworx-io, hugo-85, rycid).

Solutions

Hosted API

Free, public, donation-funded endpoint at randomuser.me/api.

Offline npm module

Generate the same shape of users without network calls using the offline RandomAPI module.

Self-hosted

Clone Randomuser.me-Node and run the generator inside your own infrastructure.

Semantic Vocabularies

Randomuser Context

39 classes · 1 properties

JSON-LD

API Governance Rules

Random User Generator API Rules

10 rules · 6 errors 3 warnings 1 info

SPECTRAL

JSON Structure

Randomuser User Structure

0 properties

JSON STRUCTURE

Example Payloads

Resources

🔗
Website
Website
🔗
Documentation
Documentation
📄
ChangeLog
ChangeLog
👥
GitHubOrg
GitHubOrg
👥
Randomuser.me-Node (Canonical Source)
GitHubRepository
🔗
X
X
💰
Free (Donation-Funded)
Pricing
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps
💬
Support
Support

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Random User Generator API
  version: '1.4'
items:
- info:
    name: Users
    type: folder
  items:
  - info:
      name: Generate Random Users
      type: http
    http:
      method: GET
      url: https://randomuser.me/api/
      params:
      - name: results
        value: '10'
        type: query
        description: Number of user records to generate. Maximum 5000 per request.
      - name: gender
        value: female
        type: query
        description: Restrict to a single gender. Omit or use any other value to return both.
      - name: nat
        value: us,gb,fr
        type: query
        description: 'Comma-separated list of two-letter nationality codes. Supported (v1.4):

          AU, BR, CA, CH, DE, DK, ES, FI, FR, GB, IE, IN, IR, MX, NL, NO, NZ,

          RS, TR, UA, US. Omit for a mix of all nationalities.

          '
      - name: inc
        value: name,email,nat
        type: query
        description: 'Comma-separated list of top-level fields to include. Allowed values:

          gender, name, location, email, login, registered, dob, phone, cell,

          id, picture, nat. Mutually exclusive with `exc`.

          '
      - name: exc
        value: login
        type: query
        description: 'Comma-separated list of top-level fields to exclude. Allowed values

          same as `inc`. Mutually exclusive with `inc`.

          '
      - name: seed
        value: foobar
        type: query
        description: 'Deterministic seed. The same seed (with the same page, results, and

          version) always returns the same users.

          '
      - name: page
        value: '3'
        type: query
        description: 'Page number (1-based) for paginated seeded results. Use with `seed`

          and a fixed `results` value to walk a stable dataset.

          '
      - name: format
        value: csv
        type: query
        description: 'Response serialization format. Defaults to JSON.

          '
      - name: password
        value: upper,lower,number,8-16
        type: query
        description: 'Password composition rules: `CHARSETS,MIN-MAX` or `CHARSETS,MAX`.

          Charsets: special, upper, lower, number (comma-separated, in any order).

          Default: ~10k top-used passwords; otherwise 8-64 characters.

          '
      - name: dl
        value: ''
        type: query
        description: 'If present, returns the response as a file download with the

          appropriate extension for the requested `format`.

          '
      - name: noinfo
        value: ''
        type: query
        description: 'If present, omits the `info` envelope (seed, results, page, version)

          from the response.

          '
      - name: callback
        value: randomuserdata
        type: query
        description: 'JSONP callback function name. Only honored for JSON formats.

          '
    docs: 'Generate one or more random user records. Supports controlling result count,

      gender, nationality mix, included/excluded fields, password composition,

      format (JSON/CSV/YAML/XML/PrettyJSON), seeded reproducibility, and pagination.

      '
  - info:
      name: Generate Random Users (Pinned Version)
      type: http
    http:
      method: GET
      url: https://randomuser.me/api/:version/
      params:
      - name: version
        value: '1.4'
        type: path
        description: API version to pin (e.g. `1.4`).
      - name: results
        value: '10'
        type: query
        description: Number of user records to generate. Maximum 5000 per request.
      - name: gender
        value: female
        type: query
        description: Restrict to a single gender. Omit or use any other value to return both.
      - name: nat
        value: us,gb,fr
        type: query
        description: 'Comma-separated list of two-letter nationality codes. Supported (v1.4):

          AU, BR, CA, CH, DE, DK, ES, FI, FR, GB, IE, IN, IR, MX, NL, NO, NZ,

          RS, TR, UA, US. Omit for a mix of all nationalities.

          '
      - name: inc
        value: name,email,nat
        type: query
        description: 'Comma-separated list of top-level fields to include. Allowed values:

          gender, name, location, email, login, registered, dob, phone, cell,

          id, picture, nat. Mutually exclusive with `exc`.

          '
      - name: exc
        value: login
        type: query
        description: 'Comma-separated list of top-level fields to exclude. Allowed values

          same as `inc`. Mutually exclusive with `inc`.

          '
      - name: seed
        value: foobar
        type: query
        description: 'Deterministic seed. The same seed (with the same page, results, and

          version) always returns the same users.

          '
      - name: page
        value: '3'
        type: query
        description: 'Page number (1-based) for paginated seeded results. Use with `seed`

          and a fixed `results` value to walk a stable dataset.

          '
      - name: format
        value: csv
        type: query
        description: 'Response serialization format. Defaults to JSON.

          '
      - name: password
        value: upper,lower,number,8-16
        type: query
        description: 'Password composition rules: `CHARSETS,MIN-MAX` or `CHARSETS,MAX`.

          Charsets: special, upper, lower, number (comma-separated, in any order).

          Default: ~10k top-used passwords; otherwise 8-64 characters.

          '
      - name: dl
        value: ''
        type: query
        description: 'If present, returns the response as a file download with the

          appropriate extension for the requested `format`.

          '
      - name: noinfo
        value: ''
        type: query
        description: 'If present, omits the `info` envelope (seed, results, page, version)

          from the response.

          '
      - name: callback
        value: randomuserdata
        type: query
        description: 'JSONP callback function name. Only honored for JSON formats.

          '
    docs: 'Same as `generateUsers` but pinned to a specific API version so future

      releases cannot break the response shape. Supported versions: 1.0, 1.1,

      1.2, 1.3, 1.4.

      '
bundled: true