No começo também achei que o Tailwind deixava o código muito sujo, mas depois vi algumas discussões e exemplos sobre o assunto e vi que a idéia dele é para ser usado em componentes. Dessa forma, acho que faz bem mais sentido.
Por exemplo, no Laravel com Blade, você pode criar componentes como botões, navbars, menus... Dessa forma, o código não vai ficar sujo e vai obedecer o DRY. Uma grande vantagem que vi foi não ficar alternando entre arquivos html/blade e css.
No site https://tailwindui.com/ você pode encontrar exemplos de componentes com tailwind.