XML Indentation Styles — Spaces, Tabs, and Depth Control

Compare XML indentation styles: 2 spaces, 4 spaces, and tabs. Learn how indentation depth affects readability, team conventions, and tool compatibility for XML documents.

Basic Formatting

Detailed Explanation

XML Indentation Styles

Indentation is the primary tool for making XML documents readable. The choice of indentation style affects readability, file size, and team collaboration. There is no single "correct" style — the best choice depends on your project conventions.

2-Space Indentation

<project>
  <dependencies>
    <dependency>
      <groupId>com.example</groupId>
      <artifactId>library</artifactId>
    </dependency>
  </dependencies>
</project>

Pros: Compact, less horizontal scrolling for deeply nested XML, popular in web/frontend ecosystems. Cons: Hierarchy can be harder to distinguish at a glance.

4-Space Indentation

<project>
    <dependencies>
        <dependency>
            <groupId>com.example</groupId>
            <artifactId>library</artifactId>
        </dependency>
    </dependencies>
</project>

Pros: Clear visual hierarchy, widely used in Java and enterprise XML tooling. Cons: Deeply nested documents require significant horizontal space.

Tab Indentation

<project>
	<dependencies>
		<dependency>
			<groupId>com.example</groupId>
			<artifactId>library</artifactId>
		</dependency>
	</dependencies>
</project>

Pros: Each developer can configure their editor to display tabs at their preferred width. Slightly smaller file sizes since one tab character replaces multiple spaces. Cons: Inconsistent rendering across tools and code review platforms.

Depth and Nesting

XML documents can nest deeply, especially in configuration-heavy formats like Maven POMs or XSLT stylesheets. When nesting exceeds 6-8 levels, even 2-space indentation leads to long lines. Strategies to manage this include:

  • Wrapping attributes on separate lines
  • Extracting nested structures into separate files
  • Using XML Includes (<xi:include>) to modularize

Consistency Is Key

Whatever style you choose, consistency across a project is more important than the specific choice. Use an XML formatter with a fixed configuration to enforce the team's style automatically.

Use Case

Understanding XML indentation styles is important when setting up linting and formatting rules for a development team, configuring IDE auto-formatting for XML files, establishing coding standards for projects that rely heavily on XML configuration (Java/Spring, Android, Maven), or converting between indentation styles during a project migration.

Try It — XML Formatter

Open full tool