SEO at Sensaria covers the things that decide whether a company is found on Google: a site that search engines can crawl and render, one page for each real search intent in each language, content that answers the query better than the pages already ranking, and consistent signals about who the company is and where it operates. It suits SMEs and B2B companies with a multilingual website, a relaunch or migration ahead, or a site that attracts visitors but few inquiries. We work from Lugano with clients in Switzerland and abroad, in English, German, French and Italian.
What does an SEO audit cover?
An audit looks at three layers. The technical layer checks crawling, indexing, rendering, redirects, canonical tags, hreflang, XML sitemaps and Core Web Vitals. The content layer maps every indexable URL to a search intent and flags gaps, thin pages and pages that compete for the same query. The authority layer reviews the Google Business Profile, directory listings and inbound links. Every finding names the template or URL affected, the fix and its priority.
Canonical logic is where multilingual sites often go wrong. Our rules: every language version is self-canonical and never points to the English page (Google asks for a canonical in the same language); filter and parameter URLs point to the clean URL; and the canonical URL, the sitemap entry and the hreflang target are the same string, trailing slash included. After each release we crawl the site again to catch new redirect chains, stray noindex tags or broken alternates.
How does multilingual SEO work for a site in several languages?
Each language gets its own URL, its own keyword research and its own localized slug, and the versions are connected with hreflang. Google requires each version to list itself and every other version, and it ignores the tags when two pages don’t point to each other (localized versions documentation). For a Swiss site in four languages, for example, we use language-region codes plus an x-default:
<link rel="alternate" hreflang="de-CH" href="https://example.ch/de/leistungen/" />
<link rel="alternate" hreflang="fr-CH" href="https://example.ch/fr/prestations/" />
<link rel="alternate" hreflang="it-CH" href="https://example.ch/it/servizi/" />
<link rel="alternate" hreflang="en-CH" href="https://example.ch/en/services/" />
<link rel="alternate" hreflang="x-default" href="https://example.ch/en/services/" />
Keyword research runs separately per language because demand is uneven. In our September 2026 research for Switzerland (Ahrefs data), “seo agentur schweiz” had about 900 searches a month and “seo ticino” about 90. German pages usually carry the volume; Italian pages bring fewer, very local searches with clear intent. Vocabulary differs as well: buyers in German-speaking Switzerland ask for an “Offerte”, in Romandy for a “devis”, in Ticino for a “preventivo”. German copy for Switzerland is written with “ss”, never “ß”. This website uses the same setup with en-CH, it-CH, de-CH and fr-CH alternates, and our bilingual product WABA Index pairs its English and Brazilian Portuguese pages the same way.
How do you plan site structure and internal links?
Each search intent gets one target page, and the structure makes that clear to users and crawlers: hub pages link to every page beneath them, breadcrumbs mirror the URL path, and anchor text describes the target. Informational and commercial queries are kept apart. On this site, for example, “generative engine optimization” is assigned to an explainer article and “GEO agency” to the service page, and the two link to each other instead of competing for the same results.
Which Core Web Vitals thresholds do we work to?
Google rates a page experience as good when Largest Contentful Paint (LCP) is 2.5 seconds or less, Interaction to Next Paint (INP) is 200 milliseconds or less and Cumulative Layout Shift (CLS) is 0.1 or less, measured at the 75th percentile of real page loads, separately for mobile and desktop (web.dev).
We start from field data and use lab tests to find the cause: an oversized hero image, render-blocking fonts, third-party tags, or a consent banner that pushes content down. We treat the thresholds as a baseline for users, not as a ranking shortcut.
How do you appear in Google’s local results and Maps?
Google says local results are mainly based on relevance, distance and popularity, and that no one can pay for a better local ranking (Google Business Profile Help). The work is basic and exact: a verified Google Business Profile at a real address, the right primary category, the same company name, address and phone number everywhere, and reviews from real customers.
In Switzerland, “everywhere” includes the commercial register entry, local.ch, search.ch, localsearch.ch and the site’s own Organization markup; in other countries, the equivalent registers and directories. When we checked commercial queries for Ticino in September 2026, the local pack appeared on almost every one, “web agency lugano” included.
Which structured data do we implement, and why?
We add schema.org markup only where it describes something visible on the page. Organization carries the legal name, address and official profiles that tie the brand together. LocalBusiness fits companies with premises that customers visit. BreadcrumbList describes the page hierarchy, Article carries the author and dates, and Product carries price and availability for shops.
We don’t sell FAQ markup as a Google feature: Google stopped showing FAQ rich results in 2026 (FAQ markup documentation). On InboxRatio we implemented Organization, WebSite, Article, FAQPage, BreadcrumbList, ItemList and WebApplication types, and automated tests enforce the length and uniqueness of every title and description.
What don’t we do?
We don’t buy links, rent link networks or pay for guest posts that pass ranking credit; Google’s spam policies class these as link spam. We don’t build doorway pages for Zurich, Geneva or Lausanne when a client has no office or customers there. We don’t publish mass AI-generated articles, hide text, or promise positions.
How does SEO connect to the rest of your system?
SEO fixes live in templates and code, so they work best when the same team can change the site. Because we also build websites, a canonical bug or a slow template gets fixed in the codebase instead of waiting in someone else’s ticket queue. Leads from organic search can arrive in the CRM with the landing page and source attached through CRM and sales automation. GEO and AI search visibility and content creation build on the same foundation.
Effort depends on the number of URLs and templates, the languages, whether a migration is involved and how much content needs rewriting. After a short discovery call we send a fixed-price or phased proposal.