• 4 tables
  • 27,397 rows
  • 7 formats
  • synthetic data

Product Dataset

This ready-made product dataset contains 27,397 records across 4 tables, covering product information, categories, suppliers, and sales transactions from 2022-01-01 to 2024-12-31. A free sample is available, with the full download requiring credits.

  • last updated 12 Oct 2026
  • by GoMask
  • Dataset includes 4 tables: categories, suppliers, products, and sales.
  • Contains 27,397 rows and 21 columns of synthetic product data.
  • Covers transactions from January 1, 2022, to December 31, 2024.
  • Available in CSV, Excel, SQL, and Power BI formats.
  • Free sample rows available for preview.

At a glance

  • 4tables
  • 27,397rows
  • 21columns
  • Jan 2022 – Dec 2024date range

The 4 tables

preview and data dictionary per table

Categories categories · dimension table · 50 rows

Contains product category and department information.

Preview

First 10 of 50 rows of the Categories table
category_iduuidcategory_namestringdepartmentstring
9a48eff2-4709-4f96-8e57-95d1b6d69eddPet SuppliesHome
2eec7d93-132c-4aa4-8340-6c566c8908e1Home GoodsHome
a9bd365f-b2cc-4847-89fd-d35be7e878d6Tools & Home ImprovementHome
b7f69221-ba34-4b89-b1f7-cce31f03f83eTools & Home ImprovementHome
9960c9a5-eb73-49ab-9e10-761d3572099eTools & Home ImprovementHome
2fde6ffb-90ae-4303-836a-a8f08f8faf1eHome GoodsHome
3f74480a-6817-4d54-b92c-a029cdefc2cfTools & Home ImprovementHome
f9112302-c684-4c16-8158-2959e7c6dca3Tools & Home ImprovementHome
d99a2bf7-3fa9-4da0-bfe8-8a46954e4c6fTools & Home ImprovementHome
883c5d4a-cc07-4e9e-bbba-1c3f46c248c1Home GoodsHome
10 of 50 rows · 3 columns

Data dictionary

Data dictionary for the Categories table
columntypedescriptionexamplenull %
category_iduuidUnique identifier for each product category.unique9a48eff2-4709-4f96-8e57-95d1b6d69edd0%
category_namestringSpecific retail category name.Pet Supplies0%
departmentstringHigh-level retail department grouping related categories.Home0%

Suppliers suppliers · dimension table · 100 rows

Information about product suppliers.

Preview

First 10 of 100 rows of the Suppliers table
supplier_iduuidsupplier_namestringcountrystringcontact_namestring
17b8c676-1f11-4be1-abee-7ae42f2041f8Rohan Textiles & Agri ExportsIndiaPriya Sharma
a5e96496-783b-4f73-8e9c-3c9447bd8262Bharat Cotton MillsIndiaVikram Singh
ee67d0cd-dfe4-469d-a83a-2e7386cec807Shakti Weavers Co-opIndiaAnanya Patel
6ed93dfe-1061-4d93-84e6-150b9ec2f8b3Ganga River CommoditiesIndiaArjun Desai
b17c9f2b-4bfd-4770-95e9-e81b8465fef8Indus Valley Apparel Ltd.IndiaMeera Krishnan
6c380f23-9e78-472d-bd82-dc0ea4255815Amazonia Agro-Products Inc.BrazilRicardo Santos
688aed5f-7021-4fe7-8f9d-264bfa5929c6Brasilia Fashion GroupBrazilIsabella Costa
e0621824-5d81-4854-86ec-8cb2e65a8483Deccan Harvest FoodsIndiaSanjay Gupta
77aa35d0-1cc4-4814-99e0-b6e689ab6a1aHimalayan Silk & WoolIndiaNandini Iyer
bb6b2783-8daa-4541-90e3-97b5817ba0ddMumbai Garment MakersIndiaRajesh Kumar
10 of 100 rows · 4 columns

Data dictionary

Data dictionary for the Suppliers table
columntypedescriptionexamplenull %
supplier_iduuidUnique identifier for the supplier.unique17b8c676-1f11-4be1-abee-7ae42f2041f80%
supplier_namestringOfficial trade or business name of the supplier company.uniqueRohan Textiles & Agri Exports0%
countrystringSourcing or operational home country of the supplier.India0%
contact_namestringFull name of the designated primary account representative or liaison.Priya Sharma0%

Products products · table · 5,000 rows

Details about individual products, including cost, price, and stock.

Preview

First 10 of 5,000 rows of the Products table
product_iduuidproduct_namestringdescriptionstringunit_costdecimalpricedecimalstock_quantityintegercategory_iduuidsupplier_iduuid
769fe943-b85d-4341-894c-db8887c09572Premium Cat Food - Salmon FlavorErgonomic office chair with adjustable lumbar support and mesh back.76.07134.84919a48eff2-4709-4f96-8e57-95d1b6d69eddb515934d-c5bf-4082-8e2f-395af9f6cdcc
0ca1f6b9-7fb4-40be-a2cf-46b136a7024bArtisan Ceramic Vase - Blue GlazeGourmet dark chocolate bar, 70% cacao, with sea salt flakes.21.7427.19115883c5d4a-cc07-4e9e-bbba-1c3f46c248c16fcd2649-4d56-4631-8d8e-99f3f2d07c78
61f5625a-ef86-4d46-9dd9-5f284ffa0cc7High-Precision Digital ScaleOrganic cotton baby onesie, snap closure, soft and gentle on skin.85.64194.8330e7e52058-be73-4f64-8f35-6f293da0efddcd123f6a-14e5-4bde-9abd-2e253eb162b6
a6ea460a-b589-4458-8e65-a70fddfa9aa4Men's Cotton Blend Casual Shirt - NavyGourmet dark chocolate bar, 70% cacao, with sea salt flakes.69.6121.951033948598e-ff55-4cc9-8cc0-5dfd14989a47064fab43-26c8-4eee-891f-b18697aa3534
bb78edfb-9a93-4be4-bed6-1dfa62e93cf8Ergonomic Gel Mouse PadStainless steel travel mug, 16 oz, keeps beverages hot or cold for hours.49.7476.032903f40ade4-21df-470b-a0c2-28aadfd30b255e9f56e8-2a2f-49a8-9601-7dcf89c8cc30
61dd8dbe-2973-4fce-86a7-8818cbb8ed71The Art of War - Classic EditionRelaxing chamomile tea bags, caffeine-free, 20 count box.80.47183.79256a7c98c5f-1096-4c0d-9b46-ed238c6b56f8cd123f6a-14e5-4bde-9abd-2e253eb162b6
56e1fa8c-0033-43c7-9baf-afbb54f7ceb0Heavy-Duty Cordless Drill SetHigh-quality mechanical keyboard with customizable RGB backlighting.106.34189.41105b8fa32ea-4d3a-4adb-852a-a85e70abcd1656a11bef-140a-4134-8971-777e829847f5
b994f34f-c4e9-49c7-9c58-217bc3625732Wireless Bluetooth Earbuds - BlackOrganic whole bean coffee, medium roast, 12 oz bag.35.7676.467805a1fcfc-8e44-4dff-a808-d3f880c1b663ee67d0cd-dfe4-469d-a83a-2e7386cec807
526f4e88-8b37-41e8-b4ef-8478500997afAcoustic Guitar - Natural FinishRecycled glass vase, modern minimalist design.63.63149.6772eac8dbcd-5e63-4fdf-851f-fa4a14d693e2a5e96496-783b-4f73-8e9c-3c9447bd8262
05593fc3-3e49-4b37-8a09-c8151f9e6bc4Building Blocks Set - Creative FunHigh-performance running shoes with responsive cushioning and breathable upper.79.53151.8342bf50d752-3920-4229-ba44-4ee53ebe649a1a637f7b-a2cb-42f0-9679-9d39112d18c0
10 of 5,000 rows · 8 columns

Data dictionary

Data dictionary for the Products table
columntypedescriptionexamplenull %
product_iduuidUnique identifier for each product record.unique769fe943-b85d-4341-894c-db8887c095720%
product_namestringFull commercial title and brand label of the product.Premium Cat Food - Salmon Flavor0%
descriptionstringDetailed merchandising description outlining features, materials, and product specifications.Ergonomic office chair with adjustable lumbar support and mesh back.0%
unit_costdecimalDirect acquisition or manufacturing cost per unit in USD.76.070%
pricedecimalStandard retail selling price in USD, maintaining a positive margin over unit cost.134.840%
stock_quantityintegerTotal available units physically on hand in warehouse fulfillment centers.910%
category_iduuidForeign key to categories.category_id.9a48eff2-4709-4f96-8e57-95d1b6d69edd0%
supplier_iduuidForeign key to suppliers.supplier_id.b515934d-c5bf-4082-8e2f-395af9f6cdcc0%

Sales sales · fact table · 22,247 rows

Records of sales transactions, including quantity, amount, and date.

Preview

First 1 of 22,247 rows of the Sales table
sale_iduuidcustomer_idintegersale_datedatequantity_soldintegersale_amountdecimalproduct_iduuid
26d9ecd5-a1ba-48f8-bfab-aa7d4d9cd20e148092024-01-263501.4556e1fa8c-0033-43c7-9baf-afbb54f7ceb0
1 of 22,247 rows · 6 columns

Data dictionary

Data dictionary for the Sales table
columntypedescriptionexamplenull %
sale_iduuidUnique identifier for the sale transaction.b2f28e6f-af24-44d7-9c1e-35452bc2c28f0%
customer_idintegerIdentifier of the purchasing customer.106300%
sale_datedateDate on which the sales transaction occurred.2024-04-210%
quantity_soldintegerNumber of units purchased in the transaction.30%
sale_amountdecimalFinal monetary amount paid for the transaction after applicable discounts.191.530%
product_iduuidForeign key to products.product_id.d6e85188-d826-4f6d-bde0-615f6cbf6af20%

How the tables join

  • products.category_id references categories.category_idmany to one: each Products row points to one Categories row
  • products.supplier_id references suppliers.supplier_idmany to one: each Products row points to one Suppliers row
  • sales.product_id references products.product_idmany to one: each Sales row points to one Products row

Questions to answer with it

  1. What is the total sales amount for each product category?

    Join products with categories and sales, then group by category name and sum sale amount.

    tables: products, categories, sales

  2. Which suppliers provide products with the highest unit cost?

    Join products with suppliers and order by unit_cost in descending order.

    tables: products, suppliers

  3. Analyze the distribution of sales amounts across different product prices.

    Join products and sales, then analyze the relationship between product price and sale_amount.

    tables: products, sales

  4. Create a dashboard showing top-selling products by quantity sold over time.

    Join products and sales, group by product name and sale_date, and sum quantity_sold.

    tables: products, sales

Starter SQL

run against this data before publishing

Table names match the SQLite file and the SQL script.

Total Sales Amount per Product Category

sql
SELECT c.category_name, SUM(s.sale_amount) AS total_sales
FROM sales s
JOIN products p ON s.product_id = p.product_id
JOIN categories c ON p.category_id = c.category_id
GROUP BY c.category_name
ORDER BY total_sales DESC
LIMIT 20;

Top 5 Suppliers by Average Product Unit Cost

sql
SELECT su.supplier_name, AVG(p.unit_cost) AS average_unit_cost
FROM products p
JOIN suppliers su ON p.supplier_id = su.supplier_id
GROUP BY su.supplier_name
ORDER BY average_unit_cost DESC
LIMIT 5;

Sales Quantity for Each Product

sql
SELECT p.product_name, SUM(s.quantity_sold) AS total_quantity_sold
FROM sales s
JOIN products p ON s.product_id = p.product_id
GROUP BY p.product_name
ORDER BY total_quantity_sold DESC
LIMIT 20;

Products with Stock Below 50 Units

sql
SELECT product_id, product_name, stock_quantity
FROM products
WHERE stock_quantity < 50
ORDER BY stock_quantity ASC
LIMIT 20;

Load it with pandas

python
import pandas as pd

# Unzip the CSV download first: one file per table
categories = pd.read_csv("categories.csv")
suppliers = pd.read_csv("suppliers.csv")
products = pd.read_csv("products.csv")
sales = pd.read_csv("sales.csv")

# Join products to categories
df = products.merge(categories, left_on="category_id", right_on="category_id", how="left", suffixes=("", "_categories"))
print(df.groupby("category_name").size().sort_values(ascending=False))

Using it in your tool

Excel
Load each table into a separate sheet. Use XLOOKUP to join tables or Power Query for more complex data transformations. Create PivotTables on the sales data to analyze sales by category or over time.
Power BI
Model the data using a star schema: 'sales' as the fact table, and 'products', 'categories', and 'suppliers' as dimension tables. Create relationships between 'sales.product_id' and 'products.product_id', and 'products.category_id' and 'categories.category_id'. Example DAX Measures: Total Sales = SUM(sales[sale_amount]) Total Quantity Sold = SUM(sales[quantity_sold]) Average Unit Cost = AVERAGE(products[unit_cost])
SQL
Load the SQLite or SQL dump into your preferred database. The primary keys and foreign keys are defined in the schema, allowing for joins between tables like sales to products and products to categories or suppliers.
Python
Use pandas to load CSV or SQL data. Merge tables using `pd.merge()` and perform aggregations with `groupby()` and `agg()`. Utilize libraries like Matplotlib or Seaborn for visualizations.

Formats available

  • CSV (zip)One CSV file per table, zipped
  • Excel workbookOne worksheet per table
  • SQLite databaseA ready-to-query database file with every table
  • Parquet (zip)One Parquet file per table, zipped
  • SQL scriptCREATE TABLE with primary and foreign keys, then INSERTs
  • CSVA single CSV file
  • JSONA single JSON file

How this data was generated

Synthetic data. Every row was generated: no real people, customers or companies are in this dataset.

Synthetic data generated by GoMask DataFactory from a relational blueprint: keys, links and rules are enforced in code, text columns are filled by a language model. No real people, companies or transactions.

  • Data generated by GoMask DataFactory.
  • Synthetic data mimics product catalog and sales transaction structures.
  • Includes relationships between products, categories, and suppliers.
  • Checked by an automated quality gate: unique keys, no orphan foreign keys, required columns filled, declared rules and date ranges (realism score 92).

Limitations

  • The data is synthetic and does not represent actual market conditions.
  • Customer behavior and sales patterns are simulated.
  • Does not include external factors like marketing campaigns or economic indicators.
  • Distributions and correlations are modelled, not measured from real records.

blueprint · product-dataset

Scale this dataset

Same tables. As many rows as you need.

Open the blueprint behind these 4 tables in Data Factory: keep the relationships, change a column, and generate it at the size you need.

  • 200,000 rows
  • 1,000,000 rows
Scale this dataset in Data Factory
Tables
categories, suppliers, products, sales
Licence
yours to use, including commercially
API slug
product-dataset

What should your data show?

Preview 20 rows free
No signup. No card.