Web + technical SEO / Immigration advisory Spanish visas and residency · pt-BR · es · en

Trilingual site and technical SEO for an immigration advisory

A lead-capture site for a visa consultancy whose audience researches from Brazil, on mobile, on unreliable connections. Not a single third-party tag blocking first render.

Challenge

An immigration advisory competes in SERPs crowded with content farms, forums and law firms holding twenty-year-old domains. The visitor arrives at a high-stakes moment, moving country, and arrives on mobile, often on Brazilian mobile data. Every second before the first content is a consultation that leaves for another tab. The sector also carries a trust problem: someone searching for a Spanish digital nomad visa has already seen half a dozen pages promising the same thing without saying who answers.

Impact delivered

The result is a site that renders its main content in under two seconds on simulated mobile and shifts nothing while loading. Lighthouse's three untimed categories — accessibility, best practices and SEO — sit at 100 on both mobile and desktop. The concrete numbers, with their date and method, are below.

In production

100 • Lighthouse SEO

Propiziare Immigra — Spanish visa and residency advisory
01

The Problem (The Gap)

An immigration advisory competes in SERPs crowded with content farms, forums and law firms holding twenty-year-old domains. The visitor arrives at a high-stakes moment, moving country, and arrives on mobile, often on Brazilian mobile data. Every second before the first content is a consultation that leaves for another tab. The sector also carries a trust problem: someone searching for a Spanish digital nomad visa has already seen half a dozen pages promising the same thing without saying who answers.

The real cost of disintegration

The audience is genuinely trilingual, not trilingual out of politeness: Brazilians researching in Portuguese, residents already in Spain comparing in Spanish, and international profiles arriving in English. That makes hreflang infrastructure rather than a footer ornament.

See the technical SEO service
02

The Engineering (The Tech)

The site was built on one hard rule: no third parties in the critical path. No tag manager, no embedded chat widget, no blocking remote fonts. Lead capture goes to WhatsApp through a direct link instead of an SDK, and analytics is not paid for with the visitor's load time. The rest is familiar discipline: static output served from a CDN, brotli compression, modern image formats with deferred loading below the fold, and a single canonical version per language with reciprocal hreflang.

03
Impact delivered

The result is a site that renders its main content in under two seconds on simulated mobile and shifts nothing while loading. Lighthouse's three untimed categories — accessibility, best practices and SEO — sit at 100 on both mobile and desktop. The concrete numbers, with their date and method, are below.

What it does

  • Explains each route in: student, digital nomad, work, non-lucrative, family reunification and arraigo
  • Captures qualified enquiries through a pre-consultation form with a direct WhatsApp handoff
  • Serves three languages with reciprocal hreflang and one canonical per version
  • Marks up the entity with organisation and advisor-person schema
  • Publishes supporting content on living in Spain after approval

How it works

  1. Content architecture by intent: one page per visa route, not a generic services page
  2. Static rendering served from a CDN, with brotli and cache headers
  3. Zero third-party JavaScript in the critical path, so main-thread blocking stays flat
  4. Modern image formats, deferred loading only below the fold
  5. hreflang pt-BR / es / en plus x-default, reciprocal in all three directions

Pillars

Genuinely trilingual, not translated on top

Three versions with their own canonical and reciprocal hreflang. Without it, Google picks which version a Brazilian sees, and it usually picks wrong.

  • pt-BR, es and en, plus x-default
  • One canonical per language, no orphan versions
  • Content adapted to the reader, not a literal translation of the Spanish

Zero third parties in the critical path

The most profitable engineering decision in the project. A typical tag manager costs 150 to 270 kB of JavaScript the visitor downloads before reading anything.

  • No tag manager and no embedded chat SDK
  • Lead capture through a direct WhatsApp link, not a widget
  • Main-thread blocking flat on desktop and minimal on mobile

The entity marked up, not just the pages

In a sector where the search engine weighs who signs the advice, declaring the organisation and the person advising is part of the SEO work, not an add-on.

  • Organisation and person schema linked to each other
  • Consistent authorship signals across all three language versions

Performance measured, not promised

Lighthouse scores via Google's PageSpeed Insights API. Anyone can reproduce them.

Mobile

  • 97PerformanceGood
  • 100AccessibilityGood
  • 100Best practicesGood
  • 100SEOGood
LCP
1.88 s
Good
Largest Contentful Paint
CLS
0.000
Good
Cumulative Layout Shift
TBT
0 ms
Good
Total Blocking Time

Desktop

  • 100PerformanceGood
  • 100AccessibilityGood
  • 100Best practicesGood
  • 100SEOGood
LCP
462 ms
Good
Largest Contentful Paint
CLS
0.007
Good
Cumulative Layout Shift
TBT
0 ms
Good
Total Blocking Time

Methodology: PageSpeed Insights API v5 · Lighthouse 13.4.1 · Measured on .

Performance is the median of 5 mobile runs and 3 desktop runs; the other categories are deterministic.

No CrUX field data: the site does not yet gather enough traffic in Chrome's public dataset, so these are lab measurements.

Verify on PageSpeed Insights ↗

Security & compliance

Genuinely trilingual, not translated on top Zero third parties in the critical path The entity marked up, not just the pages
  • The pre-consultation form collects the minimum needed to call back: name, contact and route of interest.
  • The conversation continues on WhatsApp, off the site, with no consultation history stored on the front end.
  • No third-party tags also means no silent data collection by scripts we do not control.

Frequently asked questions

Why give up Google Tag Manager?

+

Because its cost is not zero and the visitor pays it. On comparable sites we have measured 150 to 270 kB of JavaScript from the tag container alone, with roughly half of it never executing. For an audience arriving on mobile data, that turns into seconds before the first content. When the client needs measurement, lightweight server-side analytics can be added without handing that weight back to the browser.

Doesn't the language switcher take care of hreflang?

+

No. The switcher is navigation for people; hreflang is a declaration to the search engine about which version belongs to which audience, and it has to be reciprocal: each version lists itself and every equivalent. Without reciprocity Google ignores the set and decides on its own.

Do these scores hold over time?

+

Not automatically. They degrade the moment someone adds a widget, a remote font or a campaign tag. That is why we publish the measurement date and method next to the number, and re-measure instead of keeping a screenshot.