Skip to main content

Core Directives

spec_version

Required. Declares the specification version being used.
All llmtag.txt files must include this directive. Files without it are considered invalid and will be ignored by compliant AI agents.

Content Usage Directives

ai_training_data

Controls whether content can be used as training data for machine learning models.
This is the most critical directive for most publishers, as it directly controls whether their content can be used to train AI models.
Examples:

ai_use

Controls specific AI applications and use cases beyond training.
Examples:

Advanced Directives

verification_challenge

Establishes a cryptographic handshake to verify that an AI agent has actually read and understood the rules.
This is an advanced feature for publishers who want to implement verification mechanisms. Most implementations can ignore this directive.
Example:

Scope Directives

User-agent

Defines a scope block for specific AI agents or crawlers.
Common AI Agent User-Agents:

Path

Defines a scope block for specific URL paths or patterns.
Examples:

Directive Processing

Precedence Order

Directives are processed in the following order of precedence (highest to lowest):
  1. Path-specific directives - Most specific
  2. User-agent specific directives - Agent-specific
  3. Global directives - Least specific

Inheritance

When a directive is not specified at a more specific level, it inherits from the global level:

Default Values

If no directive is specified at any level, these defaults apply:
  • ai_training_data: allow
  • ai_use: search_indexing

Comments

Use # to add comments to your llmtag.txt file:
Comments are ignored by AI agents and are purely for human readability and documentation purposes.

Best Practices

1. Start Simple

Begin with a basic global policy and add complexity as needed:

2. Use Clear Comments

Document your policies for future reference:

3. Test Your Implementation

Always verify your llmtag.txt file is accessible and properly formatted:

4. Keep It Maintainable

Use consistent formatting and logical grouping: