Running a bilingual website in Spain sounds straightforward in theory. You have your content in English, you translate it to Spanish, done. But if you care about showing up on Google in both languages, and reaching both audiences effectively, there’s a minefield of technical mistakes waiting for you.
I build websites for businesses on the Costa del Sol. Most of my clients serve both English and Spanish-speaking customers. Over the years, I’ve seen every possible configuration of bilingual sites, and I’d estimate 80% of them are doing it wrong in ways that actively hurt their search rankings.
This guide covers the technical SEO side of running a bilingual website, with specific recommendations for businesses in Spain where the English-Spanish split is the most common scenario.
URL Structure: The Foundation Decision
The first question every bilingual website faces: how do you organize your URLs? There are three main approaches, and the one you pick has lasting consequences.
Subdirectories (recommended for most):
- example.com/en/about/ (English)
- example.com/es/sobre-nosotros/ (Spanish)
Subdomains:
- en.example.com/about/
- es.example.com/sobre-nosotros/
Separate domains:
- example.com (English)
- example.es (Spanish)
For most businesses in Spain, subdirectories are the clear winner. They keep all your domain authority consolidated on one domain, they’re simpler to manage technically, and Google handles them well. Subdomains split your authority across what Google sometimes treats as separate websites. Separate domains are even worse for this, unless you’re a multinational with significant resources for each market.
I’ve seen Costa del Sol businesses buy a .es domain, a .com domain, and a .co.uk domain, thinking they’d cover all their markets. What they ended up with was three weak websites instead of one strong one.
Hreflang Tags: The Most Misunderstood SEO Element
Hreflang tags tell Google which language version of a page to show to which users. They’re simple in concept and infuriating in practice, because even small mistakes cause them to be ignored entirely.
Here’s what a proper hreflang implementation looks like in your HTML head:
<link rel="alternate" hreflang="en" href="https://example.com/en/about/" />
<link rel="alternate" hreflang="es" href="https://example.com/es/sobre-nosotros/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/en/about/" />
The x-default tag tells Google which version to show users whose language doesn’t match any of your specified versions. For a business in Spain targeting English and Spanish, I typically set x-default to the English version, since English-speaking expats and tourists are often the higher-value audience for service businesses.
Common hreflang mistakes I see constantly:
- Missing return tags: If page A points to page B with hreflang, page B MUST point back to page A. Both pages need the full set of hreflang tags. If one is missing, Google ignores them all.
- Wrong language codes: Using “uk” instead of “en-GB”, or “esp” instead of “es”. Use ISO 639-1 codes.
- Pointing to redirects: Your hreflang URLs must be the final, canonical URL. Not a URL that redirects to another.
- Inconsistent with canonical tags: If your canonical URL differs from your hreflang URL, Google gets confused and typically ignores the hreflang.
- Not including self-referencing tags: Each page needs to list ALL language versions, including itself.
If you’re using WordPress with a plugin like TranslatePress or WPML, most of this is handled automatically. But I’d still verify the output, plugins get it wrong more often than you’d expect.
Content Strategy: Translation vs. Transcreation
This is where most bilingual websites fail, and it’s not a technical issue, it’s a content issue.
Literal translation is lazy and ineffective. When I translate a page from English to Spanish, I don’t just swap the words. The Spanish version needs to:
- Use natural Spanish phrasing and idioms
- Reference examples and contexts that resonate with Spanish speakers
- Address concerns specific to the Spanish-speaking audience
- Feel like it was written by a Spanish speaker, for Spanish speakers
For example, a blog post about local SEO would reference Google Maps behavior in both versions. But the English version might talk about expats searching for “English-speaking lawyer in Marbella,” while the Spanish version would focus on “abogado en Marbella centro”, different search patterns, different user intent.
Google’s John Mueller has explicitly said that automatically translated content without human review may be treated as low-quality content. That includes AI translations that nobody bothered to edit. If your “bilingual” website is just Google Translate with a language switcher, you’re doing more harm than good.
The Keyword Research Trap
Here’s a mistake that even experienced SEOs make with bilingual sites: they do keyword research in English, translate the keywords to Spanish, and optimize both versions for the translated terms.
This doesn’t work because people search differently in different languages. The Spanish keyword for a concept isn’t always the direct translation of the English keyword. Search volume, competition, and user intent can be completely different.
Example: “web design” gets decent search volume in English. The direct translation “diseño web” also works in Spanish. But “cuánto cuesta una página web” (how much does a website cost) is a far more common Spanish search than its English equivalent. Meanwhile, “web design near me” is huge in English but “diseño web cerca de mí” is barely searched in Spain, Spanish users tend to search with city names instead.
Do keyword research separately for each language. Use Google’s Keyword Planner set to the correct language and location. Don’t assume parallel search behavior.
Technical Setup for WordPress Bilingual Sites
For WordPress specifically, which is what most businesses in Spain use, here’s my recommended setup:
Plugin choice: TranslatePress for simpler sites (under 50 pages), WPML for larger or more complex sites. Both handle hreflang, URL structure, and content management. Avoid free translation plugins that don’t generate proper hreflang tags.
URL slugs: Translate your URL slugs, not just your content. /en/web-design/ and /es/diseno-web/ is correct. /en/web-design/ and /es/web-design/ is wrong, it misses a ranking opportunity and looks unprofessional.
Metadata: Translate your meta titles, meta descriptions, image alt texts, and Open Graph tags for each language. This is tedious work that gets skipped constantly. Every untranslated meta description is a missed opportunity.
Sitemaps: Your sitemap should include all language versions of all pages, with hreflang annotations. Most SEO plugins handle this if configured correctly.
Language switcher: Make it visible and functional. I prefer flag-free language switchers (use “EN/ES” text instead of flags) because flags represent countries, not languages. The UK flag doesn’t represent American English speakers, and the Spanish flag doesn’t represent Latin American Spanish speakers.
Costa del Sol Specific: What I’ve Learned
Working primarily with businesses on the Costa del Sol, I’ve picked up some patterns specific to this market:
English content often performs better commercially. The English-speaking audience on the Costa del Sol, expats, tourists, property buyers, tends to have higher commercial intent. They’re searching for services to buy, not just information. This doesn’t mean neglect Spanish, but it means your English content deserves serious investment.
Local search is language-split. An English speaker in Marbella searching for a dentist will search “dentist Marbella” and see completely different results than a Spanish speaker searching “dentista Marbella.” You need to rank for both. This means separate local SEO strategies for each language, including separate Google Business Profile posts and responses.
Seasonal content needs differ. English tourist-focused content peaks in search volume during different months than Spanish resident-focused content. Plan your content calendar accordingly.
Don’t forget other languages. Depending on your location, German, French, Dutch, and Scandinavian languages might represent significant search volume. A hotel in Nerja might benefit from German content. A real estate agency in Jávea might need Dutch. Analyze your audience data before expanding beyond two languages.
Common Mistakes That Tank Bilingual SEO
A quick rundown of the most damaging mistakes I see regularly:
- Same content, different URLs, no hreflang: Google sees duplicate content and picks one version to show, usually the wrong one.
- Auto-redirecting based on IP/browser language: This prevents Google from crawling all versions. Use a language switcher instead.
- Mixing languages on a single page: A page that’s 70% English and 30% Spanish confuses Google’s language detection.
- Translating only some pages: If half your site is bilingual and half is English-only, the Spanish version looks thin and incomplete.
- Ignoring translated image alt text: Images need alt text in the correct language for each version.
Getting It Right
A properly implemented bilingual website should effectively give you two complete websites, each one optimized for its language and audience, sharing one domain’s authority. That’s a massive competitive advantage, especially in markets like the Costa del Sol where many competitors only bother with one language.
At Fork IT, every site we build for the Spanish market is bilingual by default. Not as an add-on, not as an afterthought, as a core part of the architecture. Because in a market where your customers speak two languages, your website needs to speak both of them fluently.
If you’re struggling with bilingual SEO or thinking about adding a second language to your site, our SEO services include full hreflang implementation, per-language keyword research, and native content strategy for both English and Spanish markets. And if your current setup is a mess, a redesign with proper multilingual architecture from the start is often faster and cheaper than trying to retrofit a broken implementation.