PHPackages                             humanmade/woocommerce-demo-generator - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Testing &amp; Quality](/categories/testing)
4. /
5. humanmade/woocommerce-demo-generator

ActiveWordpress-plugin[Testing &amp; Quality](/categories/testing)

humanmade/woocommerce-demo-generator
====================================

WP-CLI tool for generating demo products and orders in WooCommerce using Faker.

1.0.0(3mo ago)03GPL-2.0-or-laterPHPPHP &gt;=8.0

Since Jan 30Pushed 3mo agoCompare

[ Source](https://github.com/humanmade/woocommerce-demo-generator)[ Packagist](https://packagist.org/packages/humanmade/woocommerce-demo-generator)[ RSS](/packages/humanmade-woocommerce-demo-generator/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (2)Versions (2)Used By (0)

WooCommerce Demo Generator
==========================

[](#woocommerce-demo-generator)

Lightweight WP-CLI tool for generating demo products and orders in WooCommerce using Faker.

Maintained by [Human Made](https://humanmade.com/), created by Claude Code.

Requirements
------------

[](#requirements)

- PHP 8.0+
- WordPress 6.0+
- WooCommerce 8.0+

Installation
------------

[](#installation)

Install via Composer:

```
composer require humanmade/woocommerce-demo-generator
```

Then activate the plugin:

```
wp plugin activate woocommerce-demo-generator
```

Generating Products
-------------------

[](#generating-products)

Generate demo products with realistic names, descriptions, prices, and stock levels:

```
wp demo-products generate --count=100
```

Products are distributed across 8 categories: Electronics, Clothing, Home &amp; Garden, Sports &amp; Outdoors, Beauty &amp; Health, Books &amp; Media, Toys &amp; Games, and Food &amp; Beverages.

### Options

[](#options)

OptionDescriptionDefault`--count=`Number of products to generate100`--category=`Limit to specific categoryAll`--no-images`Skip placeholder image downloadsfalse`--batch-size=`Products per batch before cache clear100### Examples

[](#examples)

```
# Generate 1000 products without images (faster)
wp demo-products generate --count=1000 --no-images

# Generate 500 electronics products
wp demo-products generate --count=500 --category=electronics

# Generate 10,000 products for load testing
wp demo-products generate --count=10000 --no-images --batch-size=200
```

### Available Categories

[](#available-categories)

View available categories with their configuration:

```
wp demo-products categories
```

SlugNamePrice Range`electronics`Electronics$20 - $2,000`clothing`Clothing$15 - $300`home-garden`Home &amp; Garden$10 - $500`sports`Sports &amp; Outdoors$13 - $600`beauty`Beauty &amp; Health$8 - $150`books`Books &amp; Media$5 - $80`toys`Toys &amp; Games$10 - $150`food`Food &amp; Beverages$6 - $90Each category has 10 brands, 10 style prefixes, and 15 product types for varied product name generation.

Generating Orders
-----------------

[](#generating-orders)

Generate demo orders with realistic customer data, addresses, and order history:

```
wp demo-products generate-orders --count=100
```

Orders include Faker-generated billing/shipping addresses, random product selections, varied order statuses, and dates spread over a configurable time range.

### Options

[](#options-1)

OptionDescriptionDefault`--count=`Number of orders to generate100`--products=`Comma-separated product IDs to useAll products`--demo-products-only`Only use demo-generated productsfalse`--days=`Spread orders over this many days365`--min-items=`Minimum items per order1`--max-items=`Maximum items per order5`--batch-size=`Orders per batch before cache clear50### Examples

[](#examples-1)

```
# Generate 500 orders for specific products
wp demo-products generate-orders --count=500 --products=123,456,789

# Generate 1000 orders using only demo products
wp demo-products generate-orders --count=1000 --demo-products-only

# Generate recent orders (last 30 days)
wp demo-products generate-orders --count=200 --days=30

# Generate larger orders
wp demo-products generate-orders --count=100 --min-items=3 --max-items=10
```

### Order Status Distribution

[](#order-status-distribution)

Orders are created with realistic status distribution:

StatusPercentageCompleted50%Processing20%On Hold10%Cancelled8%Pending5%Refunded5%Failed2%Listing Demo Data
-----------------

[](#listing-demo-data)

View summaries of generated demo data:

```
# List demo products by category
wp demo-products list

# List demo orders by status
wp demo-products list-orders

# Output as JSON
wp demo-products list --format=json
wp demo-products list-orders --format=json
```

Cleanup
-------

[](#cleanup)

Remove all demo data when no longer needed:

```
# Remove all demo products (and their images)
wp demo-products purge --yes

# Remove all demo orders
wp demo-products purge-orders --yes
```

Demo products and orders are tracked with post meta (`_demo_product_generated` and `_demo_order_generated`) so they can be cleanly removed without affecting real data.

Performance
-----------

[](#performance)

For large imports (10,000+ items), the plugin automatically clears object caches periodically to prevent memory exhaustion. Adjust batch sizes based on your server's available memory:

```
# Lower batch size for limited memory
wp demo-products generate --count=10000 --no-images --batch-size=50

# Higher batch size for better performance
wp demo-products generate-orders --count=5000 --batch-size=100
```

Skipping images with `--no-images` significantly improves product generation speed.

Credits
-------

[](#credits)

Created by the team at [Human Made](https://humanmade.com/).

Interested in joining? [We're hiring!](https://humanmade.com/hiring/)

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance81

Actively maintained with recent releases

Popularity3

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity39

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

101d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/f1d0ffccdc5d339ff98a91e1b224a0d92f93dc8c2f772124473a76655b83129c?d=identicon)[joehoyle](/maintainers/joehoyle)

---

Top Contributors

[![joehoyle](https://avatars.githubusercontent.com/u/161683?v=4)](https://github.com/joehoyle "joehoyle (1 commits)")

---

Tags

testingwordpressfakerordersdemoproductswoocommercewp-cli

### Embed Badge

![Health badge](/badges/humanmade-woocommerce-demo-generator/health.svg)

```
[![Health](https://phpackages.com/badges/humanmade-woocommerce-demo-generator/health.svg)](https://phpackages.com/packages/humanmade-woocommerce-demo-generator)
```

###  Alternatives

[orchestra/testbench

Laravel Testing Helper for Packages Development

2.2k39.1M32.1k](/packages/orchestra-testbench)[league/factory-muffin-faker

The goal of this package is to wrap faker to make it super easy to use with factory muffin.

4411.3M27](/packages/league-factory-muffin-faker)[orchestra/workbench

Workbench Companion for Laravel Packages Development

8017.0M43](/packages/orchestra-workbench)[yoast/wp-test-utils

PHPUnit cross-version compatibility layer for testing plugins and themes build for WordPress

632.3M52](/packages/yoast-wp-test-utils)[jonpurvis/faker-stripe

Faker provider for generating fake Stripe IDs

8762.2k](/packages/jonpurvis-faker-stripe)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
