I Analyzed 11k+ Reddit Comments from "Shopping Addiction" to Understand What Makes Online Shopping Addictive. Here's What I Found.
Disclaimer: This is research. The value is subjective and does not imply any explicit nor implicit "takeaways". The intent is to shed light on why and how people get addicted to online shopping, and what triggers it beyond one's mental state.
What makes online shopping "irresistible"? Impeccable themes, UX and flawless funnel? Manipulative marketing tricks? Perhaps a certain combination of apps? Or the user's own state of mind making them more prone to impulse purchases?
I have analyzed 11,903 comments from r/ShoppingAddiction to understand exactly what kept people stuck in the shopping loop, beyond the psychological reasoning. I wanted to understand what features and traits ecom brands were implementing that fed this behavior, and it surprised me to find out that their stores are not really doing the heavy lifting: social media is.
Once someone gets into that loop (aka doom-scrolling Instagram and whatnot), and the dopamine starts feeding in, they become significantly more prone to buying impulsively.
Methodology: how I found, collected and processed this data
As a senior Shopify developer and merchant, data has always been the main source of value for me and my customers. Using your own experience or "gut feeling" to build a business doesn't tend to work well. Finding and processing fresh data can save weeks (if not months) of trial and error by helping you identify a necessity or pain point, and this is how I helped most of my clients (and myself) to succeed.
Some technical details for the data nerds out there like myself: I did not use Reddit's official API because, in my experience, it does not always return all comments and the rate limits make it painfully slow. Instead, I built my own scraper with SQL, Python and Javascript:
With python I built a simple UI on top of Textual and used beautifulSoup4 to parse the HTML of every single post from a specific subreddit. I simply feed it a subreddit URL, and it automatically paginates and extracts all posts.

Then, once I had all posts, I used puppeeteer with Javascript to extract all comments visible and not immediately visible: the script automatically scrolls through the page, clicks on the "expand" buttons for the replies, and captures every single available comment. I use multiple workers at once, so this process is not as slow as it seems; it took me 49 minutes to fetch all the 11k+ comments.
I have only fetched comments starting from October 1st, 2025, to April 10th, 2026.
So, what is mostly bought and where?
Most impulsively bought categories, by mention count:
- Clothes: 985
- Books: 287
- Thrift / vintage: 237
- Bags: 220
- Shoes: 207
- Makeup: 191
- Perfume: 140
- Skincare: 108
- Jewelry: 73
Clothes dominate by a wide margin. The clothes and accessories cluster connects to the "fantasy self" pattern: buying clothing for a version of yourself you want to become.
Top platforms and payment tools, by mention count:
- Credit card: 296
- TikTok: 146
- Amazon: 138
- YouTube: 116
- eBay: 84
- Instagram: 78
- Pinterest: 61
- Klarna: 39
- Affirm: 26
- Afterpay: 19
TikTok is the single most mentioned social trigger. YouTube operates differently, mainly through haul content and reviews that build desire over time. Pinterest drives aspirational wishlist behavior that delays purchase but keeps desire alive. Email marketing appears mostly in the context of people trying to unsubscribe from it, which says everything about how effective it is.
The most common self-justification phrases before buying:
- "I needed it" (110 mentions)
- "Stressed" (79)
- "Worth it" (71)
- "Birthday treat" (69)
- "Treat yourself" (41)
- "Investment" (45)
- "One more" (34)
- "Treat myself" (28)
- "I deserve it" (16)
What did stores do to facilitate pulling the trigger, according to the comments
Checkout enablers, by mention count:
- BNPL combined (Klarna + Affirm + Afterpay): 84
- "Buy now" button: 31
- Next-day delivery: 27
- Amazon Prime: 20
- PayPal: 18
- Saved card: 14
- Apple Pay: 5
Saved payment information is the number one enabler, mentioned by multiple comments. Removing the step of typing a card number eliminates the one moment of physical friction that might have broken the spell. BNPL removes the psychological barrier of "I can't afford this."
"Klarna has been destroying me for years."
UX patterns mentioned by name:
- Scarcity / "limited": 119
- Sold out anxiety: 24
- Restock alerts: 17
- Notifications: 17
- Flash sale: 11
- Free shipping minimum: 6
- Countdown timer: 5
These users are not fooled. Here is a direct quote that received 36 upvotes:
"Those little notes when I'm online that say 'Hurry, 5 other people have this in their carts!' Ok they can have it. I've survived without this clothing item up until now so I don't actually HAVE to have it. Read up on shopping psychology."
UX patterns that contribute to impulsive buying, as named by users, by mention count:
- Sale pricing / limited-time framing: 414
- Wishlist dopamine loop: 116
- Package tracking ritual: 98
- BNPL at checkout: 83
- Fast shipping badges: 77
- Personalized recommendations: 30
- Back-in-stock notifications: 20
- App-native one-tap checkout: 20
- Infinite scroll: 7
- Abandoned cart retargeting: 1
"Temu gamified shopping for stuff you don't need. I got lost in the app over several days. Every time I was about to leave, something pulled me back."
The main cause of impulsive purchases, from a UX standpoint
Impulse-driving mechanics, by mention count:
- Sale / discount: 516
- Cart / wishlist loop: 350
- Scarcity / "limited": 119
- Package tracking ritual: 94
- Coupon / promo code: 25
- Sold out anxiety: 24
- Restock alert: 17
- "One in every color" trap: frequent pattern, not a single count
The "one in every color" trap is one of the most-cited impulse patterns in the entire dataset. Offering a full color range or a "buy the set" option actively triggers compulsive buying.
"I would buy certain athleisure pieces in every color because they fit great and I thought more is better. Now my body has changed and I'm dealing with selling it all on Poshmark."
Urgency works differently than most merchants assume. It is not the countdown timer that creates the buy. It is the fear of missing a restock. The emotional loop is: "I was being responsible by not buying it. Now it's gone. That's a loss." The perceived loss is the trigger, not the sale.
"I worry it won't get restocked." — top comment on the post "Why do I feel sad when it sells out, even though I was holding off on buying it?"
How much did shoppers typically spend?
Most mentioned dollar amounts:
- $500: 49 mentions
- $100: 45
- $20: 39
- $300: 37
- $200: 35
- $50: 29
- $1,200: 28
- $1,000: 20
- $400: 19
- $600: 14
Three distinct price tiers emerge:
- Micro tier ($5 to $50): high volume, low guilt. Temu, Shein, fast fashion. The addiction lives here day to day.
- Mid tier ($100 to $500): highest frequency in the data. Clothes, shoes, skincare, bags. Most regret volume in this range. Common justification: "investment" or "cost per wear."
- Luxury tier ($1,000+): lower frequency, highest emotional stakes. The $1,200 coat is the most-discussed single item in the dataset with 28 dedicated mentions. Often enabled by BNPL.
Notable single-purchase stories from the data:
- $7,500 — Cartier purchase on two credit cards during a trip to Mexico City
- $32,000 — total spent in 5 months (highest reported)
- $10,000 — wasted in a single month
- $1,200 — the coat dilemma (dedicated viral post, 63 comments)
Price is not a barrier. Both $5 and $500 purchases appear with similar emotional weight. Impulse buying is not price-gated. It is emotion-gated. BNPL specifically removes the psychological barrier at the luxury tier.
The buyer types
Five distinct segments emerge clearly from the data.
ADHD / Dopamine buyers
Cycle through hobby fixations. Buy heavily in each phase and move on. Most impulsive by volume. Price insensitive during a hyperfocus phase. Trigger: novelty and a new interest.
Emotional self-medicators
Stress, anxiety, loneliness, and depression drive purchases. No specific product category, just an escalation during emotional lows. Trigger: bad day or late night.
Fantasy-self buyers
Buying for an identity they want to have. Clothes for events that don't happen, fitness gear for workouts that don't exist. Highest regret rate in the dataset. The gap between purchase and actual use is widest here. Trigger: aspirational content.
Deal / thrift hunters
Motivated by the hunt, not the item. The discount is the dopamine. Active on eBay, Vinted, clearance sections. Impulsive but within a rationalized frame. Trigger: sale notification.
Debt cycle buyers
Have crossed into financial crisis territory. Using Klarna, Affirm, or multiple credit cards. Most motivated to change. Trigger: BNPL removes the upfront cost barrier.
What this means for merchants
Most ecom advice is written from one angle: get them to checkout, remove friction, close the sale. This data suggests a more nuanced picture.
The purchase decision does not start on your store. It starts on social media, sometimes hours earlier, inside an emotional and algorithmic loop that your product page had nothing to do with. Your store's job, in many cases, is simply to not lose someone who already wanted to buy.
Some interesting findings:
Transparency over manipulation. Users repeatedly describe relief when something is honestly priced, honestly stocked, and honestly described. No countdown timer, no "only 2 left," no BNPL pushed aggressively at checkout. Several users name specific brands they trust precisely because they don't feel hunted by them.
The wishlist is a long-term tool, not just intent capture. Multiple users describe wishlisting something, receiving restock or price-drop notifications over 30 days, and eventually buying. The wishlist kept them in the loop without forcing a premature decision.
Frictionless returns build loyalty. Merchants typically treat returns as a loss, but the data shows otherwise: easy, shame-free returns are repeatedly praised. Users who experience a painless return become repeat buyers. Users who hit a difficult return process leave and don't come back.
Excessive retargeting after a browse. Being followed around the internet by ads for something they looked at once is the single most-cited trust destroyer in the dataset, alongside fake scarcity. Several users name it as a reason to permanently avoid a brand. Merchants assume retargeting converts. For a significant segment, it does the opposite.
The return-intent buyer is actually a high-value signal. Users who buy planning to return also browse the most, have high product awareness, and are emotionally engaged with the category. A frictionless return process converts them into loyal customers over time.
The segment that buys less but trusts more has strong long-term LTV. It exists. It is large. And it is actively looking for brands it can trust.
Subscribe for Shopify researches, tips & guides
Get high quality posts about Shopify insights. No spam, unsubscribe anytime.