Customer Purchase Frequency Patterns
This dataset provides a comprehensive view of customer purchase frequency patterns, including total purchases, recency, spending, and lapsed status. It is designed to support marketing optimization, retention analysis, and win-back campaign targeting by offering actionable insights into customer engagement and churn risk.
Sample rows
preview · 8 of 120 rows · all 19 columns| customer_idstring | lapse_reasonstring | total_spentfloat | winback_campaign_eligibleboolean | regionstring | emailstring | first_namestring | last_namestring | signup_datedate | last_purchase_datedate | total_purchasesinteger | average_purchase_valuefloat | average_days_between_purchasesfloat | is_lapsedboolean | preferred_channelstring | citystring | statestring | postal_codestring | countrystring |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| C00001 | n/a | 2478.33 | false | Europe | marina.dupont19@ | Marina | Dupont | 2022-11-08 | 2023-11-12 | 33 | 75.1 | 11.1 | false | Lille | HDF | 59000 | France | |
| C00002 | n/a | 58.97 | false | North America | jason_richards23@ | Jason | Richards | 2021-02-16 | 2024-04-19 | 2 | 29.49 | blank | false | sms | Denver | CO | 80205 | USA |
| C00003 | churned | 3249.5 | true | Asia | n.murakami@ | Naoko | Murakami | 2017-08-27 | 2023-04-02 | 29 | 112.05 | 25.7 | true | Nagoya | Aichi | 460-0008 | Japan | |
| C00004 | n/a | 0 | false | Europe | l.martens@ | Lotte | Martens | 2023-03-12 | blank | 0 | 0 | blank | false | none | Gent | OVL | 9000 | Belgium |
| C00005 | n/a | 23.45 | false | Asia | duy.nguyen2000@ | Duy | Nguyen | 2020-07-14 | 2024-02-18 | 1 | 23.45 | blank | false | sms | Hanoi | blank | 100000 | Vietnam |
| C00006 | inactivity | 963.2 | false | Africa | samira_abdi@ | Samira | Abdi | 2019-05-10 | 2023-02-22 | 14 | 68.8 | 33.2 | true | postal | Abidjan | blank | 22501 | Ivory Coast |
| C00007 | n/a | 6450.75 | false | Europe | tomislav.kovac23@ | Tomislav | Kovač | 2016-10-31 | 2024-05-01 | 84 | 76.8 | 15.5 | false | Split | Splitsko | 21000 | Croatia | |
| C00008 | n/a | 71.25 | false | South America | luciana.salazar@ | Luciana | Salazar | 2022-08-20 | 2023-12-15 | 3 | 23.75 | 61.5 | false | Buenos Aires | CABA | C1007 | Argentina | |
| C00009 | churned | 16250.5 | true | Europe | elena.popov@ | Elena | Popov | 2012-04-16 | 2021-11-03 | 197 | 82.5 | 16.8 | true | St Petersburg | blank | 190000 | Russia | |
| C00010 | n/a | 0 | false | Africa | musa.sow2024@ | Musa | Sow | 2023-01-10 | blank | 0 | 0 | blank | false | none | Dakar | blank | 12500 | Senegal |
| C00011 | inactivity | 107.5 | false | Europe | peter.hansson@ | Peter | Hansson | 2019-02-21 | 2023-01-13 | 5 | 21.5 | 101.3 | true | postal | Stockholm | AB | 11432 | Sweden |
| C00012 | n/a | 92.8 | false | Europe | a.rossi@ | Alessandro | Rossi | 2022-07-18 | 2024-03-04 | 1 | 92.8 | blank | false | sms | Milan | MI | 20121 | Italy |
| C00013 | unknown | 512.1 | true | Africa | david.ngugi@ | David | Ngugi | 2018-10-09 | 2022-10-23 | 17 | 30.12 | 41.6 | true | Nairobi | blank | 00200 | Kenya | |
| C00014 | n/a | 15.95 | false | Central America | sofia.lopez@ | Sofia | Lopez | 2023-04-11 | 2024-05-07 | 2 | 7.98 | blank | false | phone | Puebla | PUE | 72000 | Mexico |
| C00015 | churned | 9326.47 | true | Europe | anna.schneider1984@ | Anna | Schneider | 2015-06-19 | 2023-07-15 | 88 | 106 | 16.3 | true | Berlin | BE | 10115 | Germany | |
| C00016 | inactivity | 8.75 | false | Africa | fatima.elhassan@ | Fatima | Elhassan | 2021-12-03 | 2022-02-16 | 1 | 8.75 | blank | true | none | Khartoum | blank | 11111 | Sudan |
| C00017 | n/a | 0 | false | Europe | olga.petrescu@ | Olga | Petrescu | 2023-02-20 | blank | 0 | 0 | blank | false | none | Cluj | CJ | 400000 | Romania |
| C00018 | n/a | 112.85 | false | Europe | diogo.santos@ | Diogo | Santos | 2020-09-12 | 2024-03-21 | 4 | 28.21 | 93.3 | false | Lisbon | blank | 1100-124 | Portugal | |
| C00019 | inactivity | 33.5 | false | Africa | jackson.mwangi@ | Jackson | Mwangi | 2018-04-26 | 2021-02-15 | 3 | 11.17 | 203 | true | postal | Mombasa | blank | 80100 | Kenya |
| C00020 | n/a | 38.99 | false | Europe | sophie.dupuis@ | Sophie | Dupuis | 2023-09-10 | 2024-04-30 | 1 | 38.99 | blank | false | Rennes | BR | 35000 | France |
What the 120 rows show
from the 120-row sampleChurned (lapse reason) stands out: 12 of its 13 rows have winback_
- 19%winback_
campaign_ eligible = true - 85.7median total_
spent - 5preferred channels
- 3median total_
purchases - 32.3median average_
purchase_ value - 43.2median average_
days_ between_ purchases
Churned (lapse reason)'s mean total_
Median 85.7, from 0.0 to 18,523.
- string 11
- integer 1
- float 3
- date 2
- boolean 2
Columns
19 columns in four groups| column | type | description | example |
|---|---|---|---|
| Text 11 columns | |||
customer_id | string | Unique identifier for each customerunique | C00001 |
email | string | Customer's email addressunique | n.murakami@ |
first_name | string | Customer's first name | Marina |
last_name | string | Customer's last name | Dupont |
lapse_reason | string | Reason for lapse if customer is lapsed (e.g., inactivity, churned, etc.)inactivity · churned · unknown · n/a · optional | n/a |
preferred_channel | string | Customer's preferred marketing communication channelemail · sms · phone · postal · none · optional | |
region | string | Geographic region associated with the customer7 regions · optional | Europe |
city | string | City of the customeroptional | Lille |
state | string | State or province of the customeroptional | HDF |
postal_code | string | Postal or ZIP code of the customeroptional | 59000 |
country | string | Country of the customeroptional | France |
| Numbers 4 columns | |||
total_purchases | integer | Total number of purchases made by the customer0 or more | 33 |
total_spent | float | Total amount spent by the customer across all purchases0 or more | 2478.33 |
average_purchase_value | float | Average value of a single purchase by the customer0 or more · optional | 75.1 |
average_days_between_purchases | float | Average number of days between purchases for this customer0 or more · optional | 11.1 |
| Dates and times 2 columns | |||
signup_date | date | Date the customer first registered or made a purchase | 2022-11-08 |
last_purchase_date | date | Date of the customer's most recent purchaseoptional | 2023-11-12 |
| True or false 2 columns | |||
is_lapsed | boolean | Indicates if the customer is considered lapsed based on business criteria | false |
winback_campaign_eligible | boolean | Indicates if the customer is eligible for a win-back marketing campaign | false |
Use it for
A marketing dashboard
The winback_
campaign_ eligible rate, total_ spent by lapse_ reason and a breakdown of region. Excel, Power BI or Tableau. Why do 23 of 120 rows have winback_
campaign_ eligible = true? A root-cause class exercise
Hand out the rows and one question. The answer is in the data, not in the brief.
- Customers120C000012478.33n/aC000033249.5churnedC0000916250.5churned
A software demo
Believable customers with email, first_
name and last_ name to fill a screen in front of a buyer.
blueprint · customer-purchase-frequency-patterns
Behind this dataset
Same schema. As many rows as you need.
These 120 rows came out of a blueprint — 19 columns with generation rules behind each one. Open it in Data Factory to retune a column, add your own, wire in foreign keys, and run it at the size you actually need.
- Each customer has a unique ID
- Purchase frequency calculated per month
- Flag customers inactive for 90+ days
- Calculate average order value for active customers
- Segment customers by purchase frequency
1 credit per row. Preview 20 rows free. Buy rows for the full run.
- Exports
- CSV, JSON, JSONL, Parquet, SQL, Excel, TSV, XML
- Licence
- yours to use, including commercially
- API slug
- customer-purchase-frequency-patterns