Products · Product
Tailwind CSS
Raised as a usability problem by 60 people on Hacker News over 9 years (2018–2026), in 38 threads.
No issue was raised by at least 3 people in 3 threads this year.
- 1
- 2
Every issue, all time, most people first
Long utility class strings are hard to read and maintainUnreviewed
20182026- Hard to modify and parse the long utility-class HTML when restyling sites2026-02-23
- Hard to spot duplicated or useless classes inside long utility-class strings2025-07-22
- Long lists of class names are hard to maintain and the syntax is awkward2025-05-10
Markup gets messy with duplicated classes, hard to debugUnreviewed
20182026- Markup becomes bloated with many cryptic classes that are hard to read2024-07-10
- Markup becomes messy and hard to debug, with duplicated utility classes and unclear styles2022-06-10
- Inline utility classes make markup hard to read and styles hard to debug2021-12-09
Abbreviated class names are hard to read and map to CSSUnreviewed
20182026- Tailwind's utility-class styling is hard to work with and messy2022-09-02
- Tailwind's abbreviated class names are hard to read and map to CSS2021-03-11
- Tailwind's class names are cumbersome and long, bloating components2020-12-07
Unreviewed issues were grouped by machine: Claude Haiku labelled each comment as a usability complaint, named what it's about and summed up the problem in a line, and a small model grouped similar problems. Nobody has checked them by hand. Expect mistakes.
The newest 50 complaints
- Website is completely unusable on iOS 13.6 for the commenter2026-09-10
- Utility class names lack intuitive mapping, so users must look up names and risk confusion2026-09-09
- Templates are hard to use: too opinionated, mixed technologies, must learn them first2026-09-09
- Encourages adding extra divs just to hold CSS classes, making markup cluttered2026-05-16
- Hard to modify and parse the long utility-class HTML when restyling sites2026-02-23
- Copied elements drift out of sync after edits, so styles get missed or inconsistent2026-01-10
- Hard to tell generated colour classes are wrong, so each must be fixed manually2025-07-22
- Hard to spot duplicated or useless classes inside long utility-class strings2025-07-22
- Class attributes hundreds of characters long make DOM tree and styles panel unnavigable when debugging2025-06-17
- Long lists of class names are hard to maintain and the syntax is awkward2025-05-10
- Hard to learn; constant Google searching and many browser tabs because docs are poorly arranged2025-02-21
- Long utility class lists clutter HTML, making it harder to read and maintain2025-01-25
- Long utility class strings are unreadable and hard to maintain compared to standard CSS2025-01-24
- Long horizontal lines of utility class names look overwhelming and hard to read2025-01-23
- Design decisions buried in cryptic utility class strings, hard for designers to read or change2025-01-17
- Verbose selector syntax in markup makes styles hard to read and maintain2024-08-31
- Markup becomes bloated with many cryptic classes that are hard to read2024-07-10
- Hard to work out inherited text-xs styling and rebuild buttons when switching codebases2024-07-10
- Must leave the editor, load docs and scroll to find the right class name2024-04-11
- Sweeping style changes require editing dozens of files, causing huge pull requests and merge conflicts2024-02-18
- Can't find an RSS feed for the blog2024-02-18
- Can't figure out how to search colors quickly2024-02-02
- Copy-and-paste button only works in Chrome, not other browsers2023-09-11
- Compiled HTML becomes hard to read, with huge repeated class strings on every element2023-08-18
- Browser Elements tab breaks; adding classes on the fly fails for unused classes2023-08-02
- Long class lists are unreadable, and changing one style means repeating classes across components2023-07-07
- Utility class names become unreadable letter soup once layouts get complex2023-07-07
- Pricing is hidden in footer; signup leads to unclear access and cost2023-04-07
- Building customizable components like a Button requires writing lots of code2022-11-29
- Tailwind's utility-class styling is hard to work with and messy2022-09-02
- Markup becomes messy and hard to debug, with duplicated utility classes and unclear styles2022-06-10
- Hard to remember which selector holds states; wrangling classes gets confusing2022-06-10
- Hard to scan long single-line lists of classes; pseudoclasses make markup a mess2022-06-10
- Finding specifics about function return values requires digging into source code2022-04-30
- Back button requires hitting multiple times to reach category page on mobile2022-04-25
- W-screen ignores the vertical scrollbar, causing an unwanted horizontal scrollbar to appear2022-02-05
- Page content squeezed into a narrow portion of the screen on foldable phone2021-12-09
- No standard component classes, so reusable modal, card, button components must be built and maintained manually2021-12-09
- Inline utility classes make markup hard to read and styles hard to debug2021-12-09
- Clicking Components leads to the TailwindUI pricing page instead of documentation2021-12-09
- Steep learning curve; must constantly consult docs and markup feels messy2021-11-04
- Setup requires many extra packages and an extra tool layered over Create-React-App2021-11-04
- Shorthand utility syntax is hard to memorize and sometimes unintuitive2021-09-27
- Long utility class lists make restyling a page hard to maintain in user styles2021-04-08
- Adjusting small styles like padding requires slogging through docs and source2021-04-07
- Per-element breakpoint classes make a single breakpoint's layout hard to comprehend2021-04-02
- Tailwind's abbreviated class names are hard to read and map to CSS2021-03-11
- Forces naming wrapper classes, which causes confusion and bugs later2021-03-11
- Working on a site built with it is a massive drag on productivity2021-03-11
- Dev startup takes 5+ seconds, up to 28 seconds on slower machines2020-12-07