> ## Documentation Index
> Fetch the complete documentation index at: https://resources.latex-cloud-studio.com/llms.txt
> Use this file to discover all available pages before exploring further.

# LaTeX Lists: Bullet Points, Numbered Lists, itemize, enumerate

> Learn how to create bullet lists and numbered lists in LaTeX with itemize and enumerate, plus nested lists, description lists, and custom labels.

If you need bullet points in LaTeX, use `itemize`. If you need a numbered list, use `enumerate`. LaTeX also includes `description` for term-definition lists and supports nesting, custom labels, and spacing control.

<Info>
  **Quick answer**: `itemize` creates bullet lists, `enumerate` creates numbered lists, and `description` creates labeled definition-style lists.
</Info>

## Choose the Right List Environment

| Environment   | Best for                              | Typical output           |
| ------------- | ------------------------------------- | ------------------------ |
| `itemize`     | Bullet points and unordered lists     | Bullets                  |
| `enumerate`   | Steps, rankings, ordered instructions | Numbers or letters       |
| `description` | Definitions, glossaries, option lists | Bold label + explanation |

## Quick Start

<Tabs>
  <Tab title="Code">
    ```latex theme={null}
    \begin{itemize}
      \item First bullet
      \item Second bullet
    \end{itemize}

    \begin{enumerate}
      \item First step
      \item Second step
    \end{enumerate}
    ```
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <ul className="latex-preview-list">
          <li>First bullet</li>
          <li>Second bullet</li>
        </ul>

        <ol className="latex-preview-numbered-list">
          <li>First step</li>
          <li>Second step</li>
        </ol>
      </div>
    </div>
  </Tab>
</Tabs>

## Unordered Lists (Bullets)

Use the `itemize` environment for bullet points:

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex basic-itemize.tex theme={null}
      \documentclass{article}
      \begin{document}

      Shopping list:
      \begin{itemize}
          \item Milk
          \item Eggs
          \item Bread
          \item LaTeX books
      \end{itemize}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <p className="latex-preview-paragraph">Shopping list:</p>

        <ul className="latex-preview-list">
          <li>Milk</li>
          <li>Eggs</li>
          <li>Bread</li>
          <li>LaTeX books</li>
        </ul>
      </div>
    </div>
  </Tab>
</Tabs>

### Nested Bullet Lists

You can nest lists up to four levels deep:

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex nested-itemize.tex theme={null}
      \documentclass{article}
      \begin{document}

      \begin{itemize}
          \item First level
          \begin{itemize}
              \item Second level
              \begin{itemize}
                  \item Third level
                  \begin{itemize}
                      \item Fourth level
                  \end{itemize}
              \end{itemize}
          \end{itemize}
          \item Back to first level
      \end{itemize}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <p className="latex-preview-paragraph">• First level</p>
        <p className="latex-preview-paragraph" style={{ paddingLeft: "1.2rem" }}>◦ Second level</p>
        <p className="latex-preview-paragraph" style={{ paddingLeft: "2.4rem" }}>▪ Third level</p>
        <p className="latex-preview-paragraph" style={{ paddingLeft: "3.6rem" }}>▸ Fourth level</p>
        <p className="latex-preview-paragraph">• Back to first level</p>
      </div>
    </div>
  </Tab>
</Tabs>

## Ordered Lists (Numbers)

Use the `enumerate` environment for numbered lists:

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex basic-enumerate.tex theme={null}
      \documentclass{article}
      \begin{document}

      Recipe steps:
      \begin{enumerate}
          \item Preheat oven to 350°F
          \item Mix ingredients
          \item Pour into pan
          \item Bake for 30 minutes
          \item Let cool and enjoy
      \end{enumerate}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <p className="latex-preview-paragraph">Recipe steps:</p>

        <ol className="latex-preview-numbered-list">
          <li>Preheat oven to 350°F</li>
          <li>Mix ingredients</li>
          <li>Pour into pan</li>
          <li>Bake for 30 minutes</li>
          <li>Let cool and enjoy</li>
        </ol>
      </div>
    </div>
  </Tab>
</Tabs>

### Nested Numbered Lists

Different numbering styles at each level:

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex nested-enumerate.tex theme={null}
      \documentclass{article}
      \begin{document}

      \begin{enumerate}
          \item First item
          \begin{enumerate}
              \item Sub-item A
              \item Sub-item B
              \begin{enumerate}
                  \item Detail i
                  \item Detail ii
              \end{enumerate}
          \end{enumerate}
          \item Second item
      \end{enumerate}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <p className="latex-preview-paragraph">1. First item</p>
        <p className="latex-preview-paragraph" style={{ paddingLeft: "1.2rem" }}>(a) Sub-item A</p>
        <p className="latex-preview-paragraph" style={{ paddingLeft: "1.2rem" }}>(b) Sub-item B</p>
        <p className="latex-preview-paragraph" style={{ paddingLeft: "2.4rem" }}>i. Detail i</p>
        <p className="latex-preview-paragraph" style={{ paddingLeft: "2.4rem" }}>ii. Detail ii</p>
        <p className="latex-preview-paragraph">2. Second item</p>
      </div>
    </div>
  </Tab>
</Tabs>

## Description Lists

Use the `description` environment for term-definition pairs:

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex description.tex theme={null}
      \documentclass{article}
      \begin{document}

      \begin{description}
          \item[LaTeX] A document preparation system
          \item[PDF] Portable Document Format
          \item[Typography] The art of arranging type
          \item[Compiler] Software that processes LaTeX code
      \end{description}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <ul className="latex-preview-description-list">
          <li><strong>LaTeX</strong> A document preparation system</li>
          <li><strong>PDF</strong> Portable Document Format</li>
          <li><strong>Typography</strong> The art of arranging type</li>
          <li><strong>Compiler</strong> Software that processes LaTeX code</li>
        </ul>
      </div>
    </div>
  </Tab>
</Tabs>

## Mixing List Types

You can combine different list types:

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex mixed-lists.tex theme={null}
      \documentclass{article}
      \begin{document}

      \begin{enumerate}
          \item Prepare ingredients:
          \begin{itemize}
              \item 2 cups flour
              \item 1 cup sugar
              \item 3 eggs
          \end{itemize}
          
          \item Mixing process:
          \begin{itemize}
              \item Beat eggs
              \item Add sugar gradually
              \item Fold in flour
          \end{itemize}
          
          \item Baking times:
          \begin{description}
              \item[Cupcakes] 15-20 minutes
              \item[Layer cake] 25-30 minutes
              \item[Bundt cake] 45-50 minutes
          \end{description}
      \end{enumerate}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <div className="latex-preview-box">
          <span className="latex-preview-label">1. Prepare ingredients</span>
          <p className="latex-preview-paragraph">• 2 cups flour<br />• 1 cup sugar<br />• 3 eggs</p>
        </div>

        <div className="latex-preview-box" style={{ marginTop: "0.85rem" }}>
          <span className="latex-preview-label">2. Mixing process</span>
          <p className="latex-preview-paragraph">• Beat eggs<br />• Add sugar gradually<br />• Fold in flour</p>
        </div>

        <div className="latex-preview-box" style={{ marginTop: "0.85rem" }}>
          <span className="latex-preview-label">3. Baking times</span>
          <p className="latex-preview-paragraph"><strong>Cupcakes</strong> 15-20 minutes<br /><strong>Layer cake</strong> 25-30 minutes<br /><strong>Bundt cake</strong> 45-50 minutes</p>
        </div>
      </div>
    </div>
  </Tab>
</Tabs>

## Customizing Lists

### Custom Bullets

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex custom-bullets.tex theme={null}
      \documentclass{article}
      \begin{document}

      % Temporarily change bullet symbol
      \begin{itemize}
          \item[→] First point
          \item[→] Second point
          \item[→] Third point
      \end{itemize}

      % Using different symbols
      \begin{itemize}
          \item[*] Asterisk bullet
          \item[†] Dagger bullet
          \item[§] Section symbol
          \item[¶] Paragraph symbol
      \end{itemize}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <ul className="latex-preview-description-list">
          <li><strong>→</strong> First point</li>
          <li><strong>→</strong> Second point</li>
          <li><strong>→</strong> Third point</li>
        </ul>

        <ul className="latex-preview-description-list">
          <li><strong>\*</strong> Asterisk bullet</li>
          <li><strong>†</strong> Dagger bullet</li>
          <li><strong>§</strong> Section symbol</li>
          <li><strong>¶</strong> Paragraph symbol</li>
        </ul>
      </div>
    </div>
  </Tab>
</Tabs>

### Custom Numbering

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex custom-numbering.tex theme={null}
      \documentclass{article}
      \begin{document}

      % Roman numerals
      \begin{enumerate}
          \item[(i)] First item
          \item[(ii)] Second item
          \item[(iii)] Third item
      \end{enumerate}

      % Custom starting number
      \begin{enumerate}
          \setcounter{enumi}{4}
          \item This is item 5
          \item This is item 6
      \end{enumerate}

      % Letters instead of numbers
      \begin{enumerate}
          \item[(a)] Option A
          \item[(b)] Option B
          \item[(c)] Option C
      \end{enumerate}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <ol className="latex-preview-numbered-list" style={{ listStyleType: "lower-roman" }}>
          <li>First item</li>
          <li>Second item</li>
          <li>Third item</li>
        </ol>

        <ol className="latex-preview-numbered-list" start={5}>
          <li>This is item 5</li>
          <li>This is item 6</li>
        </ol>

        <ol className="latex-preview-numbered-list" style={{ listStyleType: "lower-alpha" }}>
          <li>Option A</li>
          <li>Option B</li>
          <li>Option C</li>
        </ol>
      </div>
    </div>
  </Tab>
</Tabs>

## List Spacing

### Compact Lists

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex compact-lists.tex theme={null}
      \documentclass{article}
      \usepackage{enumitem}
      \begin{document}

      % Normal spacing
      \begin{itemize}
          \item First item
          \item Second item
          \item Third item
      \end{itemize}

      % Compact spacing
      \begin{itemize}[noitemsep]
          \item First item
          \item Second item
          \item Third item
      \end{itemize}

      % No spacing at all
      \begin{itemize}[noitemsep,topsep=0pt]
          \item First item
          \item Second item
          \item Third item
      \end{itemize}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <p className="latex-preview-label">Normal spacing</p>

        <ul className="latex-preview-list">
          <li>First item</li>
          <li>Second item</li>
          <li>Third item</li>
        </ul>

        <p className="latex-preview-label">Compact spacing</p>

        <ul className="latex-preview-list" style={{ marginBottom: "0.35rem" }}>
          <li>First item</li>
          <li>Second item</li>
          <li>Third item</li>
        </ul>

        <p className="latex-preview-label">No spacing</p>

        <ul className="latex-preview-list" style={{ marginBottom: 0 }}>
          <li>First item</li>
          <li>Second item</li>
          <li>Third item</li>
        </ul>
      </div>
    </div>
  </Tab>
</Tabs>

### Wide Spacing

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex wide-spacing.tex theme={null}
      \documentclass{article}
      \usepackage{enumitem}
      \begin{document}

      \begin{enumerate}[itemsep=1em]
          \item First item with extra space after
          \item Second item with extra space after
          \item Third item
      \end{enumerate}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <ol className="latex-preview-numbered-list">
          <li style={{ marginBottom: "1rem" }}>First item with extra space after</li>
          <li style={{ marginBottom: "1rem" }}>Second item with extra space after</li>
          <li>Third item</li>
        </ol>
      </div>
    </div>
  </Tab>
</Tabs>

## Advanced List Formatting

### The enumitem Package

For full control over lists:

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex enumitem-examples.tex theme={null}
      \documentclass{article}
      \usepackage{enumitem}
      \begin{document}

      % Custom labels
      \begin{enumerate}[label=\arabic*)]
          \item First item
          \item Second item
      \end{enumerate}

      \begin{enumerate}[label=\Alph*.]
          \item First item
          \item Second item
      \end{enumerate}

      % Inline lists
      \begin{enumerate*}[label=(\alph*)]
          \item First \item Second \item Third
      \end{enumerate*}

      % Resume numbering
      \begin{enumerate}
          \item First item
          \item Second item
      \end{enumerate}
      Text in between...
      \begin{enumerate}[resume]
          \item This is item 3
          \item This is item 4
      \end{enumerate}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <ol className="latex-preview-numbered-list">
          <li>First item</li>
          <li>Second item</li>
        </ol>

        <ol className="latex-preview-numbered-list" style={{ listStyleType: "upper-alpha" }}>
          <li>First item</li>
          <li>Second item</li>
        </ol>

        <p className="latex-preview-paragraph">The process includes (a) First, (b) Second, and (c) Third.</p>
        <p className="latex-preview-paragraph">Resume numbering continues with item 3 and item 4 after a paragraph break.</p>
      </div>
    </div>
  </Tab>
</Tabs>

### List Alignment

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex list-alignment.tex theme={null}
      \documentclass{article}
      \usepackage{enumitem}
      \begin{document}

      % Left-aligned labels
      \begin{itemize}[align=left]
          \item Short
          \item A much longer item label
      \end{itemize}

      % Right-aligned labels
      \begin{enumerate}[align=right]
          \item First
          \item Second
          \item Third
      \end{enumerate}

      % Hanging indent
      \begin{itemize}[leftmargin=*]
          \item This is a long item that will wrap to the next line 
                and maintain proper indentation
          \item Another item
      \end{itemize}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <ul className="latex-preview-list">
          <li>Short</li>
          <li>A much longer item label</li>
        </ul>

        <ol className="latex-preview-numbered-list">
          <li>First</li>
          <li>Second</li>
          <li>Third</li>
        </ol>

        <ul className="latex-preview-list">
          <li>This is a long item that wraps to the next line and keeps a consistent hanging indent in the compiled document.</li>
          <li>Another item</li>
        </ul>
      </div>
    </div>
  </Tab>
</Tabs>

## Inline Lists

For lists within paragraphs:

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex inline-lists.tex theme={null}
      \documentclass{article}
      \usepackage{enumitem}
      \begin{document}

      The process involves: 
      \begin{enumerate*}[label=(\roman*)]
          \item preparation,
          \item execution,
          \item evaluation, and
          \item revision.
      \end{enumerate*}
      This keeps the list inline with the text.

      My favorite colors are:
      \begin{itemize*}
          \item red,
          \item blue, and
          \item green.
      \end{itemize*}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <p className="latex-preview-paragraph">The process involves (i) preparation, (ii) execution, (iii) evaluation, and (iv) revision. This keeps the list inline with the text.</p>
        <p className="latex-preview-paragraph">My favorite colors are red, blue, and green.</p>
      </div>
    </div>
  </Tab>
</Tabs>

## Common List Patterns

### To-Do Lists

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex todo-list.tex theme={null}
      \documentclass{article}
      \begin{document}

      \begin{itemize}
          \item[$\square$] Write introduction
          \item[$\square$] Add examples
          \item[$\boxtimes$] Review content
          \item[$\square$] Submit document
      \end{itemize}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <ul className="latex-preview-description-list">
          <li><strong>□</strong> Write introduction</li>
          <li><strong>□</strong> Add examples</li>
          <li><strong>☒</strong> Review content</li>
          <li><strong>□</strong> Submit document</li>
        </ul>
      </div>
    </div>
  </Tab>
</Tabs>

### Pros and Cons

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex pros-cons.tex theme={null}
      \documentclass{article}
      \begin{document}

      \textbf{Pros:}
      \begin{itemize}
          \item[+] Easy to learn
          \item[+] Professional output
          \item[+] Free and open source
      \end{itemize}

      \textbf{Cons:}
      \begin{itemize}
          \item[--] Initial setup required
          \item[--] Compilation needed
      \end{itemize}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <p className="latex-preview-section-title">Pros:</p>

        <ul className="latex-preview-description-list">
          <li><strong>+</strong> Easy to learn</li>
          <li><strong>+</strong> Professional output</li>
          <li><strong>+</strong> Free and open source</li>
        </ul>

        <p className="latex-preview-section-title">Cons:</p>

        <ul className="latex-preview-description-list">
          <li><strong>--</strong> Initial setup required</li>
          <li><strong>--</strong> Compilation needed</li>
        </ul>
      </div>
    </div>
  </Tab>
</Tabs>

### Multi-column Lists

<Tabs>
  <Tab title="Code">
    <CodeGroup>
      ```latex multicolumn-lists.tex theme={null}
      \documentclass{article}
      \usepackage{multicol}
      \begin{document}

      \begin{multicols}{2}
      \begin{itemize}
          \item Apple
          \item Banana
          \item Cherry
          \item Date
          \item Elderberry
          \item Fig
      \end{itemize}
      \end{multicols}

      \end{document}
      ```
    </CodeGroup>
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <div className="latex-preview-two-up">
          <ul className="latex-preview-list">
            <li>Apple</li>
            <li>Banana</li>
            <li>Cherry</li>
          </ul>

          <ul className="latex-preview-list">
            <li>Date</li>
            <li>Elderberry</li>
            <li>Fig</li>
          </ul>
        </div>
      </div>
    </div>
  </Tab>
</Tabs>

## Best Practices

<Tip>
  **List guidelines:**

  1. **Consistency** - Use the same list type for similar content
  2. **Parallel structure** - Start items with the same part of speech
  3. **Punctuation** - Be consistent with periods and commas
  4. **Nesting depth** - Rarely go beyond three levels
  5. **Item length** - Keep items concise when possible
</Tip>

## Common Mistakes

<Warning>
  **Avoid these errors:**

  1. **Missing `\item`** - Every list entry needs this command
  2. **Incorrect nesting** - Close inner lists before outer ones
  3. **Too many levels** - More than 3-4 levels is hard to follow
  4. **Inconsistent formatting** - Match punctuation and capitalization
  5. **Wrong environment** - Use the appropriate list type
</Warning>

## Troubleshooting

### List Not Appearing

Check for:

<Tabs>
  <Tab title="Code">
    ```latex theme={null}
    % Wrong - missing \item
    \begin{itemize}
    First item  % Error!
    \end{itemize}

    % Correct
    \begin{itemize}
    \item First item
    \end{itemize}
    ```
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <p className="latex-preview-label">Correct compiled result</p>

        <ul className="latex-preview-list">
          <li>First item</li>
        </ul>

        <p className="latex-preview-footnote">Without <span className="latex-preview-inline-code">\item</span>, LaTeX throws an error instead of producing a list.</p>
      </div>
    </div>
  </Tab>
</Tabs>

### Spacing Issues

Adjust with enumitem:

<Tabs>
  <Tab title="Code">
    ```latex theme={null}
    \usepackage{enumitem}
    \setlist{noitemsep} % Global setting

    % Or per-list
    \begin{itemize}[topsep=0pt, partopsep=0pt]
    ```
  </Tab>

  <Tab title="Rendered output">
    <div className="latex-preview-shell">
      <div className="latex-preview-paper latex-preview-paper--narrow">
        <ul className="latex-preview-list" style={{ marginTop: 0, marginBottom: "0.2rem" }}>
          <li>First compact item</li>
          <li>Second compact item</li>
          <li>Third compact item</li>
        </ul>

        <p className="latex-preview-footnote">The list sits closer to the surrounding paragraph because <span className="latex-preview-inline-code">topsep</span> and <span className="latex-preview-inline-code">partopsep</span> are reduced.</p>
      </div>
    </div>
  </Tab>
</Tabs>

## Quick Reference

| Environment   | Purpose          | Basic Syntax             |
| ------------- | ---------------- | ------------------------ |
| `itemize`     | Bullet points    | `\item Text`             |
| `enumerate`   | Numbered list    | `\item Text`             |
| `description` | Term definitions | `\item[Term] Definition` |

| Package    | Purpose                 |
| ---------- | ----------------------- |
| `enumitem` | Full list customization |
| `multicol` | Multi-column lists      |

***

<Info>
  **Next**: Learn about handling [Errors](/learn/latex/basics/errors) in LaTeX to troubleshoot your documents effectively.
</Info>
