ToolCabana
Language preview: no interface translation is available for this language yet. Showing English. Use English

Hreflang tag generator

Generate reciprocal locale links with language and region checks.

Favorites are saved in this browser. Find them in My favorites.

Hreflang tag generator

Your input stays in this browser unless stated otherwise
Clear your input, files and result, and restore the default settings.
Load sample text to explore what this tool can do. This replaces your current input.
0 charactersClear the source text.

How to use Hreflang tag generator

Hreflang Tag Generator turns a list of language codes and URLs into link rel=alternate hreflang tags for the head of your pages. Enter one language and URL pair per line, separated by a comma, up to 100 lines. Language tags are checked for format and duplicates, URLs must use HTTP or HTTPS, and an optional x-default URL is appended.

  1. Paste the source into the input editor, or load the built-in example.
  2. Adjust the basic settings, then open Advanced mode for export and fine-tuning options. Custom settings stay active when the panel is closed.
  3. Run hreflang tag generator, review the output, then use the available copy or download controls.

What this tool supports

Generate reciprocal locale links with language and region checks.

x-default URL (optional)
Set this value for your task.

Limits and processing

CSV/XLSX inputs are capped at 10 MB each, 200 columns and 20,000 rows; joined output is capped at 20,000 rows. JSONPath script/filter evaluation is disabled. Other operations apply their visible controls and text limits.

Example source
en,https://example.com/en
es,https://example.com/es

Frequently asked questions

What input format does the hreflang tag generator expect?

Put one pair per line as a language tag, a comma and the full URL, for example en,https://example.com/en. Tags must start with a two- or three-letter language code and can add region or script parts, such as en-GB or zh-Hant.

Do I need to add the hreflang tags to every language version?

Yes. The complete reciprocal set should appear on every equivalent page, including a tag pointing to the page itself, so each version references all the others. Use the same generated block across the whole group.

How do I add an x-default hreflang tag?

Enter a URL in x-default URL and a tag with hreflang x-default is added after your language tags. The field starts with an example address, so replace it or clear it to omit the tag. The URL must use HTTP or HTTPS.

Where is my input processed?

This operation processes its source in your browser. Copy and download are explicit actions; source input is not saved in an account or history.

What are the input limits?

CSV/XLSX inputs are capped at 10 MB each, 200 columns and 20,000 rows; joined output is capped at 20,000 rows. JSONPath script/filter evaluation is disabled. Other operations apply their visible controls and text limits.