If you run a business in Malmö, Lund, Helsingborg, or anywhere else in Skåne and you're planning a new website (or rebuilding an existing one), the answer to "how do people find me?" is no longer just ranking on Google — it's being cited by AI search engines too.
This guide collects the technical and strategic items you need to think about — for both classic SEO (Google, Bing) and GEO, Generative Engine Optimization (ChatGPT, Perplexity, Google AI Overviews, Claude, Gemini) — when you're building or rebuilding a site.
1. Technical foundation: where SEO and GEO overlap
AI search engines (LLM-based systems) expect clean, semantic, well-structured HTML to crawl, index, and summarize content. A WordPress-plus-plugins stack rarely delivers that cleanliness.
With Next.js static export, the way we build at Skåne Digital:
| Feature | SEO impact | GEO impact |
|---|---|---|
| Server response time of 120-200ms | Core Web Vitals (LCP/INP/CLS) ranking signal | Fast crawling, full content retrieval |
| No database, PHP, or admin panel | Minimal attack surface, no wasted crawl budget | LLM bots (GPTBot, ClaudeBot, PerplexityBot) crawl without friction |
| Static HTML served from a CDN edge | Optimized TTFB and LCP | Content is instantly accessible, no waiting for JavaScript render |
| Semantic HTML5 (<article>, <section>, <header>, <nav>) | Google's crawler understands the structure | LLMs correctly parse sections, headings, lists |
| JSON-LD structured data (build-time) | Rich results (FAQ, HowTo, LocalBusiness, Service) | AI systems read the schema to understand entities and relationships |
Rule of thumb: if your site shows 50+ requests, dozens of third-party scripts, and a TTFB over 2 seconds in the browser's F12 → Network tab, both Google and AI bots will struggle with it.
2. Local SEO: the requirements for Malmö/Lund
To show up in Google's local map pack, your Google Business Profile (GBP) and your website need to match exactly.
Checklist:
-
NAP consistency (Name, Address, Phone)
- Your GBP profile, site footer,
LocalBusinessJSON-LD, hitta.se, eniro.se, Bing Places, Apple Maps — identical, character for character. - Address format consistent everywhere it appears.
- Your GBP profile, site footer,
-
The right primary category
- "Web designer" / "Webbyrå" / "Software company" — describe what you do with a single, accurate category. Add secondary categories for services you genuinely offer (SEO, e-commerce, maintenance).
-
LocalBusiness+WebSite+OrganizationJSON-LD{ "@context": "https://schema.org", "@type": "LocalBusiness", "name": "Skåne Digital", "address": { "@type": "PostalAddress", "addressLocality": "Malmö", "addressRegion": "Skåne", "addressCountry": "SE" }, "geo": { "@type": "GeoCoordinates", "latitude": 55.605, "longitude": 13.0038 }, "telephone": "+46 72 680 78 34", "url": "https://skanedigital.com", "priceRange": "$$", "areaServed": ["Malmö", "Lund", "Helsingborg", "Skåne län"] }(If you deliberately don't publish a street address — as we don't — skip the
streetAddressfield and stay at city/region/country level.)This needs to be injected into the static HTML at build time, not added later through a plugin.
-
City / service pages
- A dedicated page for each target city/service combination (e.g. a page for "web design in Malmö," another for "web design in Lund").
- Content: references from that city, local search intent, a "we're here too" signal for nearby businesses.
- Link the multilingual versions with
hreflang(sv/en/tr/...).
-
A review strategy
- After every project, ask the client for a review with a direct link to your GBP.
- Reply to reviews — Google treats answered reviews as a signal of an "active business."
3. Content architecture: topic clusters and semantic depth
Google no longer looks for "keyword density" — it looks for topical authority. AI search engines work on the same principle: sites that cover a topic comprehensively, in a structured way, from credible sources, come out ahead.
Example cluster structure for a Malmö/Lund business:
Pillar page: a service overview page — scope, process, pricing model, references, FAQ.
Cluster pages (examples):
- E-commerce site for Malmö businesses
- SEO consulting for Lund businesses
- WordPress vs. Next.js comparison for Skåne businesses
- Google Business Profile optimization guide
- Core Web Vitals / site speed explained
Internal linking strategy:
- Every cluster page links back to the pillar page
- The pillar page links out to every cluster
- Blog posts link to the relevant cluster/service pages
BreadcrumbListJSON-LD communicates the hierarchy to Google and AI systems
4. GEO (Generative Engine Optimization): optimizing for AI search engines
ChatGPT (Bing-backed), Perplexity, Google AI Overviews, Claude, Gemini — these systems don't run a classic ranking algorithm, they do LLM-based summarizing and answering. To be cited as a "source" by these systems:
4.1. Publish llms.txt and llms-full.txt
- An
/llms.txtfile at the root: what your site is about, a list of key pages, brand identity. /llms-full.txt: a combined markdown/text version of all key pages.- These files help AI bots (GPTBot, ClaudeBot, PerplexityBot) understand your site quickly and fully.
On Skåne Digital sites, these files are generated automatically as
public/llms.txtandpublic/llms-full.txt.
4.2. Structured data (Schema.org) — build-time, not a plugin
AI systems extract JSON-LD from HTML and process it as knowledge graph nodes. The following are essential:
| Schema type | Why? |
|---|---|
| Organization / LocalBusiness | Who you are, where you are, what you do |
| WebSite + SearchAction | On-site search can surface in AI Overviews |
| Service / Product | Your services/products are recognized as entities |
| FAQPage | FAQ answers get quoted directly in AI responses |
| BreadcrumbList | Page hierarchy makes context clear |
| Article / BlogPosting | Your blog posts can be cited as a "source" |
| Review / AggregateRating | Social proof, trust score |
Important: this schema must be written into the static HTML at build time. Schema rendered client-side (in the browser) is usually not read by AI bots.
4.3. Content format: answer-first, structured, quotable
AI systems prefer short, clear, headed, listed, tabular content over long paragraphs.
Writing rules:
- Phrase H2/H3 headings as questions: "How long does a website take in Malmö?", "Next.js or WordPress?"
- Give the answer in the first 2-3 sentences, details after (inverted pyramid)
- Use bulleted lists, comparison tables, numbered step lists
- Include at least one
FAQPageblock (3-5 common questions) per page - Give statistics, sources, dates, measurable data ("40% faster," "LCP 1.2s," "2026 data")
4.4. Encode E-E-A-T signals
Person/Authorschema attributing content to a real name, LinkedIn, photo, bioPublisher/Organizationfor corporate identitydatePublished,dateModifiedin ISO 8601 format- External sources you cite should be credible (government, educational, industry bodies)
5. Multilingual structure: critical for the Skåne market
Malmö/Lund businesses typically target Swedish + English at minimum, and often Arabic, Polish, Somali, Turkish, or Farsi as well.
Technical implementation (Next.js or similar):
├── /sv/ (Swedish - default)
├── /en/ (English)
├── /ar/ (Arabic)
├── /tr/ (Turkish)
└── /pl/ (Polish)
Required techniques:
hreflangon every page (HTML<head>+ HTTP header + sitemap)x-defaultpointing to/sv/or/en/- A language switcher that preserves context (links to the translation of the current page, not back to the homepage)
- The JSON-LD
inLanguagefield set correctly on every page - A separate sitemap
<url>entry for every language
6. Speed and Core Web Vitals: the common ground for ranking and AI crawling
| Metric | Good threshold | Why it matters | |---|---|---| | LCP (Largest Contentful Paint) | < 2.5s | Google ranking, AI crawl time | | INP (Interaction to Next Paint) | < 200ms | User experience, ranking tie-breaker | | CLS (Cumulative Layout Shift) | < 0.1 | Visual stability, trust signal | | TTFB (Time to First Byte) | < 200ms | Crawl budget, full content retrieval by AI bots | | Total requests | < 30 | Faster crawling, fewer failures | | Third-party scripts | 0-1 (excluding analytics) | Security, privacy, speed |
Testing tools:
- PageSpeed Insights — Google's own data
- WebPageTest — real device/network simulation
curl -I https://yoursite.com— checkserver-timing,cf-cache-status,content-encoding: br
7. Security and trust signals
Both Google and AI systems favor secure, transparent, clearly-owned sites.
- HTTPS + HSTS (required)
security.txt(/.well-known/security.txt) — a security disclosure channel- A privacy policy and a GDPR-compliant cookie banner (Google Consent Mode v2)
robots.txt— decide deliberately whether you allow or restrict AI bots (GPTBot, ClaudeBot, PerplexityBot, Google-Extended)- On the contact page: physical address (or service area), phone, email, org number, VAT registration number
8. Measurement and process: this is never "done"
Check monthly:
- Google Search Console → Performance → Pages / Queries / Countries / Devices
- GBP Performance → Search / Maps / Directions / Search terms
- PageSpeed (mobile/desktop) — homepage plus your 5 most important pages
- Sitemap /
robots.txt/llms.txt— accessibility, freshness - AI visibility test: ask ChatGPT/Perplexity/Gemini "web design agency in Malmö" — which sites come up? Are you one of them?
Check quarterly:
- Content updates (dates, pricing, references, FAQ)
- New blog post / case study
- Schema/JSON-LD audit (Google Rich Results Test)
- Competitive analysis: which terms are competitors ranking for
9. The Skåne Digital difference: we hand you this checklist as a starting point
When you work with a team based in Malmö, living the Skåne market daily, coding from scratch on a Next.js static architecture:
| Process | Skåne Digital | Typical agency |
|---|---|---|
| Technical SEO/GEO foundation | Ready at handover (build-time) | Added later via plugin, or not at all |
| LocalBusiness + Service + FAQ JSON-LD | On every page, static | Via plugin, dynamic, sometimes missing |
| llms.txt / llms-full.txt | Generated automatically | Unknown / absent |
| Multilingual hreflang + city pages | Built into the architecture | Manual / plugin / incomplete |
| Core Web Vitals report | Included at delivery | A separate service, if offered at all |
| Local SEO (GBP, NAP, review strategy) | Included as consulting | Separate fee / external package |
| Portability (no vendor lock-in) | Static files, yours to keep | Dependent on the WP database |
10. Three steps to get started
- A free discovery call (coffee at our Malmö office, or a video call) — your goals, current site, competitors, budget.
- A fixed-scope quote — what's included, what isn't, timeline, cost. No surprises.
- Kick-off — content gathering, design approval, development, testing, launch, 30 days of support.
Bottom line
If you run a business in Malmö or Lund and you want your website to work on Google, in AI search engines, and in turning visitors into customers — don't compromise on the five-sided foundation: infrastructure, local knowledge, speed, transparency, and measurability.
Take a look at our services, browse our past work, or get in touch to schedule a free discovery call.
At our Malmö office, or online — let's talk about your project.