deLatin scriptHow to translate WordPress to German
German (Deutsch) reaches roughly ~135 millionspeakers. Here's what's actually involved in translating a WordPress site into it — the technical setup, the German-specific gotchas, and the SEO.
What's specific to German
Most of translating WordPress is the same in any language, but each language has quirks that break layouts or SEO if you ignore them. For German:
- Compound nouns get very long (Geschwindigkeitsbegrenzung) — leave room in buttons and menus so text doesn't clip.
- Nouns are capitalized; don't lowercase them when transforming case.
- Regional variants exist (de-AT Austria, de-CH Switzerland) — only split them if content actually differs.
- Formality: Formal vs. informal address (Sie vs. du) — pick one and stay consistent.
Step by step
1. Add German as a target language
Set your source language, then add German (de) as a target. With an automatic plugin you don't create a translated copy of every page by hand — it translates on the fly.
2. Translate — automatically or by hand
Machine and AI translation get you German coverage in minutes; review the strings that matter (navigation, calls to action, legal) for the right register. Estimate the cost with the translation cost calculator.
3. Serve it under a clean URL
Publish German under a language-prefixed path like /de/. Give pages readable slugs with the slug generator.
4. Get the German SEO right
Add reciprocal hreflang pointing at your de version (with x-default), set <html lang="de">, and translate titles and meta descriptions. Build the tags with the hreflang generator and verify with the hreflang checker.
Doing it the easy way
Gloty translates your whole site into German automatically with the AI provider you choose, stores it in your own database, and emits the correct hreflang and lang/dir attributes for you. See how it stacks up against Weglot and WPML, or read the pillar guide on making WordPress multilingual.
Add German to your WordPress site in minutes — automatic AI translation, stored in your own database.