При продвижении сайта в России и других странах важно правильно указать язык каждой страницы. Это особенно актуально для мультиязычных и мультирегиональных проектов, которые работают с пользователями из России, Казахстана, Беларуси, Армении, Узбекистана и других государств.
Российский сайт может индексироваться и показываться в поиске за пределами РФ. Но поисковым системам, браузерам и вспомогательным технологиям необходимо понимать, на каком языке написана конкретная страница.
Для этого часто используют термин Language Meta Tag — тег указания языка документа. Однако с технической точки зрения язык современной HTML-страницы следует указывать не обычным метатегом, а атрибутом lang в корневом элементе <html>.
Правильный вариант для русскоязычной страницы:
<html lang="ru">
Атрибут помогает браузерам, программам экранного доступа, системам автоматического перевода и другим сервисам правильно обрабатывать содержание документа.
Для международного проекта важно разделять язык текущей страницы и ссылки на её альтернативные версии. Подробнее о втором механизме — в статье про hreflang-разметку.
Что такое Language Meta Tag#
Language Meta Tag — распространённое название HTML-разметки, с помощью которой указывается основной язык содержимого страницы.
Фактически для этой задачи используется атрибут:
lang
Его рекомендуется размещать в открывающем теге <html>:
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Продвижение сайта</title>
</head>
<body>
<h1>Продвижение сайта в поисковых системах</h1>
</body>
</html>
Значение ru сообщает, что основное содержание документа написано на русском языке.
W3C рекомендует всегда указывать язык страницы с помощью атрибута lang именно в элементе <html>. Это значение наследуется остальными элементами документа.
Это соответствует рекомендации W3C по обозначению языка HTML-документа: основной язык задают в корневом элементе, а для иноязычных фрагментов используют собственный lang.
Почему название Language Meta Tag не совсем точное#
Раньше на сайтах можно было встретить такую конструкцию:
<meta http-equiv="Content-Language" content="ru">
Иногда используется и такой вариант:
<meta name="language" content="Russian">
Эти записи не следует считать основным способом указания языка современной HTML-страницы.
Корректная разметка:
<html lang="ru">
W3C не рекомендует использовать meta http-equiv="Content-Language" для обозначения языка текста страницы. Даже если сервер передаёт информацию о языке в HTTP-заголовке, язык содержимого всё равно следует указывать атрибутом lang в элементе <html>.
Поэтому в статье используется распространённый термин Language Meta Tag, но при технической настройке сайта необходимо применять именно атрибут lang.
Для чего нужен атрибут lang#
Правильное указание языка помогает различным системам корректно интерпретировать содержание страницы.
Атрибут lang используется для:
- определения основного языка документа;
- корректной работы программ экранного доступа;
- выбора правил произношения текста;
- автоматического перевода страницы;
- проверки орфографии;
- выбора подходящих шрифтов;
- расстановки переносов;
- обработки кавычек и знаков препинания;
- правильного отображения отдельных языковых конструкций;
- улучшения доступности сайта;
- обозначения фрагментов текста на другом языке.
Например, программа экранного доступа может произнести русское слово неправильно, если в коде страницы указан английский язык.
В документации Google отдельно сказано: язык страницы определяется по видимому содержимому, а не по атрибуту lang.
Влияет ли lang на SEO#
Атрибут lang является важным элементом технического качества и доступности сайта, но его не следует считать самостоятельным фактором, который автоматически повышает позиции.
Google указывает, что определяет язык страницы преимущественно по видимому содержимому, а не по URL или атрибуту lang. Поэтому нельзя создать русскую страницу, поставить:
<html lang="en">
и рассчитывать, что поисковая система будет воспринимать её как англоязычную.
Язык навигации, основного текста, заголовков и других видимых элементов должен быть последовательным и соответствовать заявленной версии страницы.
Тем не менее правильный lang полезен, потому что:
- устраняет технические противоречия;
- улучшает доступность;
- помогает сторонним сервисам обрабатывать страницу;
- делает мультиязычную структуру сайта понятнее;
- снижает вероятность неправильного произношения текста;
- поддерживает общую логику международного SEO.
Неправильно рассматривать lang как способ продвижения сам по себе. Это часть комплексной настройки вместе с отдельными URL, переводом контента, hreflang, внутренними ссылками и региональной адаптацией.
Основные языковые коды#
В значении lang используются стандартизированные языковые теги.
Примеры:
| Язык | Код | Пример |
|---|---|---|
| Русский | ru |
<html lang="ru"> |
| Английский | en |
<html lang="en"> |
| Казахский | kk |
<html lang="kk"> |
| Белорусский | be |
<html lang="be"> |
| Армянский | hy |
<html lang="hy"> |
| Узбекский | uz |
<html lang="uz"> |
| Немецкий | de |
<html lang="de"> |
| Французский | fr |
<html lang="fr"> |
| Испанский | es |
<html lang="es"> |
| Китайский | zh |
<html lang="zh"> |
Для обычной русскоязычной страницы достаточно:
<html lang="ru">
Для англоязычной:
<html lang="en">
Для страницы на казахском языке:
<html lang="kk">
Для белорусского языка используется код be, а не by:
<html lang="be">
Это важное различие:
be— код белорусского языка;BY— код страны Беларусь.
Язык и регион#
При необходимости языковой тег можно дополнить кодом региона:
<html lang="ru-RU">
Здесь:
ru— русский язык;RU— Россия.
Другие примеры:
<html lang="ru-KZ">
Русский язык для аудитории Казахстана.
<html lang="ru-BY">
Русский язык для аудитории Беларуси.
<html lang="en-US">
Английский язык для США.
<html lang="en-GB">
Английский язык для Великобритании.
Код языка обычно пишется строчными буквами, а код страны — прописными. Между ними ставится дефис.
Для обычной страницы на русском языке чаще всего достаточно:
<html lang="ru">
Региональное уточнение имеет смысл, если содержание страницы действительно ориентировано на определённую страну и в языке существуют значимые региональные особенности.
Примеры для российского сайта#
Предположим, российская компания выходит на рынки Казахстана и Беларуси.
Структура сайта:
site.ru/ — Россия
site.ru/kz/ — Казахстан
site.ru/by/ — Беларусь
site.ru/en/ — английская версия
Если страницы для России, Казахстана и Беларуси написаны на русском языке, возможна такая настройка:
<!-- Россия -->
<html lang="ru-RU">
<!-- Казахстан, русский язык -->
<html lang="ru-KZ">
<!-- Беларусь, русский язык -->
<html lang="ru-BY">
<!-- Английская версия -->
<html lang="en">
Если для Казахстана создан отдельный перевод на казахский язык:
<html lang="kk-KZ">
При этом атрибут lang должен соответствовать фактическому языку текста. Нельзя указывать kk-KZ, если основное содержание страницы осталось на русском языке.
Код региона в lang уточняет языковой вариант, но сам по себе не задаёт геотаргетинг в Google. Для региональной версии важнее отдельный URL, фактическое содержание и мультирегиональная SEO-структура.
Нужно ли указывать страну в lang#
Код страны не является обязательным.
Для большинства страниц достаточно языка:
<html lang="ru">
Уточнённый вариант:
<html lang="ru-KZ">
имеет смысл, если страница действительно предназначена для русскоязычных пользователей Казахстана и содержит региональные условия:
- цены в тенге;
- доставку по Казахстану;
- местные контактные данные;
- региональные способы оплаты;
- адаптированный текст;
- информацию о документах;
- региональные предложения.
Добавление кода страны без реальной адаптации контента не превращает страницу в региональную версию и не гарантирует её продвижение в соответствующем государстве.

lang описывает язык текущего документа, а hreflang связывает отдельные языковые или региональные URL.Разница между lang и hreflang#
Атрибуты lang и hreflang выполняют разные задачи.
Атрибут lang#
Указывает язык текущего документа или отдельного фрагмента:
<html lang="ru">
Он сообщает, что данная страница написана на русском языке.
Атрибут hreflang#
Связывает альтернативные языковые или региональные версии страницы:
<link rel="alternate"
hreflang="ru-RU"
href="https://site.ru/service/" />
<link rel="alternate"
hreflang="ru-KZ"
href="https://site.ru/kz/service/" />
<link rel="alternate"
hreflang="ru-BY"
href="https://site.ru/by/service/" />
<link rel="alternate"
hreflang="en"
href="https://site.ru/en/service/" />
Кратко различие можно представить так:
| Атрибут | Назначение |
|---|---|
lang |
Указывает язык текущей страницы или фрагмента |
hreflang |
Указывает альтернативные языковые и региональные URL |
canonical |
Указывает предпочтительный адрес страницы |
dir |
Определяет направление текста |
lang не заменяет hreflang, а hreflang не отменяет необходимость правильно указывать язык документа.
Если языковые версии находятся в каталогах, смотрите подробный разбор Language Subdirectory. Для вариантов на поддоменах — Language Subdomain.
Как оформить мультиязычную страницу#
Для каждой языковой версии рекомендуется использовать отдельный URL.
Например:
site.ru/service/ — русский
site.ru/en/service/ — английский
site.ru/kk/service/ — казахский
Русская версия:
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Продвижение сайта</title>
<link rel="alternate"
hreflang="ru"
href="https://site.ru/service/" />
<link rel="alternate"
hreflang="en"
href="https://site.ru/en/service/" />
<link rel="alternate"
hreflang="kk"
href="https://site.ru/kk/service/" />
</head>
<body>
<h1>Продвижение сайта</h1>
</body>
</html>
Английская версия:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Website Promotion</title>
</head>
<body>
<h1>Website Promotion</h1>
</body>
</html>
Казахская версия:
<!DOCTYPE html>
<html lang="kk">
<head>
<meta charset="UTF-8">
<title>Сайтты ілгерілету</title>
</head>
<body>
<h1>Сайтты ілгерілету</h1>
</body>
</html>
Google рекомендует использовать разные URL для разных языковых версий и связывать их с помощью hreflang. Автоматическая замена языка по настройкам браузера или принудительные перенаправления могут помешать поисковому роботу обнаружить все версии сайта.
Как обозначить фрагмент на другом языке#
Не всегда вся страница написана на одном языке. В русскоязычной статье могут встречаться английские термины, названия или цитаты.
В этом случае основной язык задаётся для документа:
<html lang="ru">
А для отдельного фрагмента указывается другое значение:
<p>
Термин
<span lang="en">Search Engine Optimization</span>
переводится как поисковая оптимизация.
</p>
Для англоязычной цитаты:
<blockquote lang="en">
Content is created primarily to benefit people.
</blockquote>
Для названия книги на французском языке:
<p>
Книга называется
<span lang="fr">Le Petit Prince</span>.
</p>
Это помогает программам экранного доступа изменить произношение только для нужного фрагмента.
Можно ли указывать lang в body#
Технически атрибут lang можно использовать на разных HTML-элементах:
<body lang="ru">
Однако основной язык документа рекомендуется задавать в элементе <html>:
<html lang="ru">
Элемент <html> охватывает весь документ, включая содержимое раздела <head>. Если поставить язык только в <body>, информация не будет распространяться на весь документ.
lang для арабского и других языков с направлением справа налево#
Атрибут lang указывает язык, но не всегда определяет правильное направление текста.
Для арабского языка используется:
<html lang="ar" dir="rtl">
Для иврита:
<html lang="he" dir="rtl">
Значение dir="rtl" сообщает браузеру, что основной текст необходимо отображать справа налево.
Для русского и английского языков обычно используется направление слева направо:
<html lang="ru" dir="ltr">
Указывать dir="ltr" необязательно, поскольку это стандартное направление, но в сложных мультиязычных интерфейсах оно может задаваться явно.
Когда нужно использовать коды письменности#
Некоторые языки используют несколько систем письменности.
Например, для китайского языка можно уточнить вариант:
<html lang="zh-Hans">
Упрощённая китайская письменность.
<html lang="zh-Hant">
Традиционная китайская письменность.
Для сербского языка:
<html lang="sr-Cyrl">
Сербский язык, кириллица.
<html lang="sr-Latn">
Сербский язык, латиница.
Для большинства российских коммерческих сайтов такие уточнения не требуются, но они важны при полноценном международном продвижении.

Как настроить lang в CMS#
WordPress#
В WordPress язык сайта обычно задаётся в административной панели:
Настройки → Общие → Язык сайта
После выбора система должна сформировать:
<html lang="ru-RU">
В теме WordPress рекомендуется использовать штатную функцию:
<html <?php language_attributes(); ?>>
Если в шаблоне жёстко прописано:
<html lang="en">
то после изменения языка в настройках значение может остаться неправильным.
Для мультиязычных сайтов необходимо проверить, меняется ли lang при переходе между языковыми версиями.
Другие CMS#
В любой системе управления необходимо проверить:
- где хранится язык сайта;
- поддерживаются ли языки отдельных разделов;
- меняется ли
langна региональных версиях; - не прописано ли одно значение во всех шаблонах;
- правильно ли работает кэш;
- соответствует ли язык фактическому содержимому.
Если CMS не поддерживает такую настройку, атрибут добавляется в общий шаблон страницы.
Как проверить язык документа#
Через исходный код#
Откройте страницу, выберите команду «Просмотреть код страницы» и найдите:
<html
Правильный пример:
<html lang="ru">
или:
<html lang="ru-RU">
Через инструменты разработчика#
В браузере можно нажать F12, открыть вкладку Elements и проверить корневой элемент документа.
Важно проверить не только исходный HTML, но и фактический DOM, если значение изменяется с помощью JavaScript.
С помощью валидатора#
HTML-разметку можно проверить валидатором. Он поможет обнаружить:
- отсутствие языка;
- неправильное расположение атрибута;
- некорректный языковой код;
- ошибки в структуре документа.
Через SEO-аудит#
При техническом аудите необходимо просканировать все страницы и сравнить:
- URL;
- фактический язык текста;
- значение
lang; - значение
hreflang; - регион страницы;
- канонический адрес;
- статус индексации.
Типичные ошибки Language Meta Tag#
Атрибут lang отсутствует#
Страница не содержит явного указания основного языка:
<html>
Правильно:
<html lang="ru">
Указан неправильный язык#
На русскоязычной странице осталось значение из шаблона:
<html lang="en">
Такое часто встречается после покупки готовой темы или копирования иностранного шаблона.
Используется код страны вместо языка#
Неправильно:
<html lang="RU">
Правильно:
<html lang="ru">
RU обозначает страну, а ru — русский язык.
Неправильно для белорусского языка:
<html lang="by">
Правильно:
<html lang="be">
Используется подчёркивание#
Неправильно:
<html lang="ru_RU">
Правильно:
<html lang="ru-RU">
Между кодом языка и кодом региона ставится дефис.
В одном значении перечислено несколько языков#
Неправильно:
<html lang="ru,en">
Атрибут должен обозначать один основной язык. Для фрагментов на другом языке используются отдельные элементы с собственным lang.
Язык указан только через meta#
Недостаточно:
<meta http-equiv="Content-Language" content="ru">
Необходимо:
<html lang="ru">
На всех версиях стоит одно значение#
Русская, английская и казахская страницы получают:
<html lang="ru">
Каждая версия должна иметь собственное корректное значение.
lang меняется только через JavaScript#
Если исходный HTML содержит неправильный язык, а значение обновляется после выполнения скрипта, некоторые системы могут получить первоначальную версию.
Надёжнее сразу формировать корректный атрибут на сервере.
lang не соответствует содержанию#
На странице указано:
<html lang="kk">
но основной текст написан на русском. Формальное значение не заменяет полноценный перевод.
Путаются lang и hreflang#
На страницу добавляется lang, но отсутствуют ссылки на альтернативные версии. Или, наоборот, настроен hreflang, но язык документа указан неправильно.
Оба элемента необходимо проверять отдельно.
Чек-лист настройки#
Перед публикацией мультиязычного раздела следует проверить:
- Атрибут
langрасположен в элементе<html>. - Код соответствует фактическому языку страницы.
- Используется стандартизированный языковой тег.
- Код языка и региона разделены дефисом.
- Для каждой языковой версии установлено своё значение.
- Фрагменты на другом языке отмечены отдельно.
- Для языков справа налево настроен
dir="rtl". - Языковые версии имеют отдельные URL.
- Между страницами настроен
hreflang. - Пользователь может самостоятельно выбрать язык.
- Отсутствуют принудительные перенаправления.
- Навигация и основной контент написаны на одном языке.
- Значение не изменяется ошибочно из-за кэша.
- Настройки CMS соответствуют шаблону.
- Страницы проверены валидатором и SEO-сканером.
Наш опыт настройки Language Meta Tag#
Мы имеем опыт технической оптимизации мультиязычных и мультирегиональных сайтов. При проверке Language Meta Tag мы оцениваем не только наличие атрибута lang, но и согласованность всей международной структуры проекта.
В работу могут входить:
- определение фактического языка страниц;
- проверка языковых кодов;
- исправление шаблона
<html>; - настройка значений для разных разделов;
- проверка языковых поддоменов и подкаталогов;
- аудит
hreflang; - проверка
canonical; - настройка ссылок между языковыми версиями;
- поиск страниц с неправильным языком;
- проверка CMS и серверных шаблонов;
- устранение ошибок кэширования;
- проверка страниц, создаваемых JavaScript;
- анализ индексации языковых разделов;
- подготовка технического задания программисту;
- контроль после внедрения изменений.
Мы рассматриваем lang как часть комплексного международного SEO. Само указание языка не заменяет перевод, локализацию и региональный контент, но помогает правильно оформить техническую структуру сайта.
Вывод#
Language Meta Tag — это распространённое название разметки, указывающей язык документа. В современном HTML для этой задачи необходимо использовать атрибут lang в элементе <html>.
Для русскоязычной страницы:
<html lang="ru">
Для английской:
<html lang="en">
Для страницы на казахском языке:
<html lang="kk">
Для русскоязычной версии, ориентированной на Казахстан:
<html lang="ru-KZ">
Атрибут lang улучшает доступность, помогает браузерам и вспомогательным технологиям правильно обрабатывать текст и поддерживает общую логику мультиязычного сайта. При этом поисковые системы определяют язык прежде всего по видимому содержимому, поэтому одна строка кода не заменяет качественный перевод и полноценную локализацию.
Для эффективного международного продвижения необходимо одновременно использовать правильный lang, отдельные URL, региональный контент, hreflang, корректные канонические ссылки и удобный переключатель языка.
Обсудим ваш проект
Посмотрим на сайт, текущую видимость и предложим понятный план дальнейших действий.
Заказать консультацию
