Start Markdown Lists at Any Number (Not Just 1)

Create numbered lists that begin at 5, 10, or any number you need.

March 7, 2026

Normally, markdown ordered lists start at 1:

1. Clone the repository
2. Install dependencies  
3. Build the project
<ol>
  <li>Clone the repository</li>
  <li>Install dependencies</li>
  <li>Build the project</li>
</ol>
https://example.com
  1. Clone the repository
  2. Install dependencies
  3. Build the project

But you can start at any number by putting it before the dot:

4. Install dependencies
5. Build the project
6. Deploy to staging
<ol start="4">
  <li>Install dependencies</li>
  <li>Build the project</li>
  <li>Deploy to staging</li>
</ol>
https://example.com
  1. Install dependencies
  2. Build the project
  3. Deploy to staging

This is especially useful when you want to continue numbering across different sections:

## Getting Started

1. Clone the repository
2. Install Node.js
3. Run npm install

## Building for Production

4. Run npm run build
5. Upload files to server
6. Update DNS records
<h2>Getting Started</h2>
<ol>
  <li>Clone the repository</li>
  <li>Install Node.js</li>
  <li>Run npm install</li>
</ol>

<h2>Building for Production</h2>
<ol start="4">
  <li>Run npm run build</li>
  <li>Upload files to server</li>
  <li>Update DNS records</li>
</ol>
https://example.com

Getting Started

  1. Clone the repository
  2. Install Node.js
  3. Run npm install

Building for Production

  1. Run npm run build
  2. Upload files to server
  3. Update DNS records

Pro tip: Only the first number matters. You can use any number for the rest:

10. Install dependencies
10. Build the project
10. Deploy to staging
<ol start="10">
  <li>Install dependencies</li>
  <li>Build the project</li>
  <li>Deploy to staging</li>
</ol>
https://example.com
  1. Install dependencies
  2. Build the project
  3. Deploy to staging

You can even start at zero:

0. List Item
<ol start="0">
	<li>List Item</li>
</ol>
https://example.com
  1. List Item

But negative numbers won't work. They're treated as regular text:

-1. Not List Item
<p>-1. Not List Item</p>
https://example.com

-1. Not List Item

How it works

When you write 4. First item, the markdown parser looks at that first number and thinks "aha, this list starts at 4!" It then generates HTML like <ol start="4"> and your browser takes care of the rest, automatically numbering 4, 5, 6, etc.

The CommonMark specification puts it more formally:

The start number of an ordered list is determined by the list number of its initial list item. The numbers of subsequent list items are disregarded.

That's why you can be lazy with the numbering after the first item. Only that first number matters!

Hope this helps :)