--- title: How to install Tailwind CSS v3 in your Next.js application nav_title: Tailwind CSS v3 description: Style your Next.js Application using Tailwind CSS v3 for broader browser support. --- {/* The content of this doc is shared between the app and pages router. You can use the `Content` component to add content that is specific to the Pages Router. Any shared content should not be wrapped in a component. */} This guide will walk you through how to install [Tailwind CSS v3](https://v3.tailwindcss.com/) in your Next.js application. > **Good to know:** For the latest Tailwind 4 setup, see the [Tailwind CSS setup instructions](/docs/app/getting-started/css#tailwind-css). ## Installing Tailwind v3 Install Tailwind CSS and its peer dependencies, then run the `init` command to generate both `tailwind.config.js` and `postcss.config.js` files: ```bash package="pnpm" pnpm add -D tailwindcss@^3 postcss autoprefixer npx tailwindcss init -p ``` ```bash package="npm" npm install -D tailwindcss@^3 postcss autoprefixer npx tailwindcss init -p ``` ```bash package="yarn" yarn add -D tailwindcss@^3 postcss autoprefixer npx tailwindcss init -p ``` ```bash package="bun" bun add -D tailwindcss@^3 postcss autoprefixer bunx tailwindcss init -p ``` ## Configuring Tailwind v3 Configure your template paths in your `tailwind.config.js` file: ```js filename="tailwind.config.js" /** @type {import('tailwindcss').Config} */ module.exports = { content: [ './app/**/*.{js,ts,jsx,tsx,mdx}', './pages/**/*.{js,ts,jsx,tsx,mdx}', './components/**/*.{js,ts,jsx,tsx,mdx}', ], theme: { extend: {}, }, plugins: [], } ``` Add the Tailwind directives to your global CSS file: ```css filename="app/globals.css" @tailwind base; @tailwind components; @tailwind utilities; ``` Import the CSS file in your root layout: ```tsx filename="app/layout.tsx" switcher import './globals.css' export default function RootLayout({ children, }: { children: React.ReactNode }) { return ( {children} ) } ``` ```jsx filename="app/layout.js" switcher import './globals.css' export default function RootLayout({ children }) { return ( {children} ) } ``` ```js filename="tailwind.config.js" /** @type {import('tailwindcss').Config} */ module.exports = { content: [ './pages/**/*.{js,ts,jsx,tsx,mdx}', './components/**/*.{js,ts,jsx,tsx,mdx}', './app/**/*.{js,ts,jsx,tsx,mdx}', ], theme: { extend: {}, }, plugins: [], } ``` Add the Tailwind directives to your global CSS file: ```css filename="styles/globals.css" @tailwind base; @tailwind components; @tailwind utilities; ``` Import the CSS file in your `pages/_app.js` file: ```jsx filename="pages/_app.js" import '@/styles/globals.css' export default function MyApp({ Component, pageProps }) { return } ``` ## Using classes After installing Tailwind CSS and adding the global styles, you can use Tailwind's utility classes in your application. ```tsx filename="app/page.tsx" switcher export default function Page() { return

Hello, Next.js!

} ``` ```jsx filename="app/page.js" switcher export default function Page() { return

Hello, Next.js!

} ```
```tsx filename="pages/index.tsx" switcher export default function Page() { return

Hello, Next.js!

} ``` ```jsx filename="pages/index.js" switcher export default function Page() { return

Hello, Next.js!

} ```
## Usage with Turbopack As of Next.js 13.1, Tailwind CSS and PostCSS are supported with [Turbopack](https://turbo.build/pack/docs/features/css#tailwind-css).