Google Trends-Analyse

Praktische Beispiele für Pharma- & Healthcare-Marken

SerpAPI-Integration | SEO-Wording | Zielgruppen-Insights

API-Konfiguration

SerpAPI Credentials

const SERPAPI_KEY = "cc85514613cc3acdfc92a65f66fdfe4af4a4c84be0e13568b639e7ff5e18ace4"; const SERPAPI_ENDPOINT = "https://serpapi.com/search"; // Base-Parameter für alle Anfragen const baseParams = { api_key: SERPAPI_KEY, engine: "google_trends" };

Beispiel 1: Marken-Trend-Analyse

Suchvolumen einer Marke (Zeitreihe - 5 Jahre)

Analysiert die Entwicklung des Suchvolumens für eine Pharma-Marke über die letzten 5 Jahre.

// Beispiel: "Aspirin" Trends in Deutschland const params = { ...baseParams, q: "Aspirin", data_type: "TIMESERIES", geo: "DE", date: "today 5-y" }; // Fetch-Anfrage fetch(`${SERPAPI_ENDPOINT}?${new URLSearchParams(params)}`) .then(response => response.json()) .then(data => { console.log("Trend-Daten:", data); // Visualisierung der Zeitreihe const timeline = data.interest_over_time.timeline_data; timeline.forEach(point => { console.log(`${point.date}: ${point.values[0].value}% Interesse`); }); }) .catch(error => console.error("Fehler:", error));

Erwartetes Ergebnis

Sie erhalten eine Zeitreihe mit monatlichen Suchvolumen-Werten (0-100 Index) für die letzten 5 Jahre. Suchspitzen können auf saisonale Muster hinweisen (z.B. erhöhtes Interesse an Schmerzmitteln während der Erkältungssaison).

Beispiel 2: Marken-Vergleich (DACH-Region)

Vergleich mehrerer Konkurrenz-Marken

Vergleicht 3 Konkurrenz-Marken im deutschen, österreichischen und schweizer Markt.

// Beispiel: Vergleich von 3 Schmerzmittel-Marken const params = { ...baseParams, q: "Aspirin,Ibuprofen,Paracetamol", // Komma-separiert data_type: "TIMESERIES", geo: "DE", // Deutschland (auch: AT, CH) date: "today 12-m" // Letzte 12 Monate }; fetch(`${SERPAPI_ENDPOINT}?${new URLSearchParams(params)}`) .then(response => response.json()) .then(data => { const timeline = data.interest_over_time.timeline_data; // Vergleichsanalyse timeline.forEach(point => { console.log(`${point.date}:`); point.values.forEach((val, idx) => { const brands = ["Aspirin", "Ibuprofen", "Paracetamol"]; console.log(` ${brands[idx]}: ${val.value}%`); }); }); // Durchschnittliche Performance const avgInterest = calculateAverageInterest(timeline); console.log("Durchschnittliches Interesse:", avgInterest); }) .catch(error => console.error("Fehler:", error)); function calculateAverageInterest(timeline) { const brands = ["Aspirin", "Ibuprofen", "Paracetamol"]; const totals = [0, 0, 0]; timeline.forEach(point => { point.values.forEach((val, idx) => { totals[idx] += val.value; }); }); return brands.map((brand, idx) => ({ brand: brand, average: (totals[idx] / timeline.length).toFixed(2) })); }

Anwendungsfall

Identifizieren Sie, welche Marke das höchste durchschnittliche Suchvolumen hat. Analysieren Sie saisonale Unterschiede (z.B. "Aspirin" könnte während der Erkältungssaison höher ranken als "Ibuprofen").

Beispiel 3: Verwandte Suchanfragen & SEO-Keywords

Rising Queries & Top Keywords

Findet verwandte Suchanfragen und aufstrebende Keywords für SEO-Optimierung.

// Beispiel: Verwandte Suchanfragen für "Diabetes Medikament" const params = { ...baseParams, q: "Diabetes Medikament", data_type: "RELATED_QUERIES", geo: "DE" }; fetch(`${SERPAPI_ENDPOINT}?${new URLSearchParams(params)}`) .then(response => response.json()) .then(data => { // Top Rising Queries (aufsteigende Trends) console.log("=== RISING QUERIES (SEO-Potenzial) ==="); data.related_queries.rising.forEach(query => { console.log(`${query.query}: +${query.value} (Anstieg)`); }); // Top Queries (etablierte Keywords) console.log("\n=== TOP QUERIES (Hohes Volumen) ==="); data.related_queries.top.forEach(query => { console.log(`${query.query}: ${query.value}% Interesse`); }); // SEO-Wording-Vorschläge generieren const seoKeywords = generateSEOKeywords(data.related_queries); console.log("\n=== SEO-WORDING-VORSCHLÄGE ==="); console.log(seoKeywords); }) .catch(error => console.error("Fehler:", error)); function generateSEOKeywords(relatedQueries) { return { highVolume: relatedQueries.top.slice(0, 5).map(q => q.query), midTail: relatedQueries.top.slice(5, 10).map(q => q.query), longTail: relatedQueries.rising.slice(0, 10).map(q => q.query) }; }

SEO-Strategie

Rising Queries zeigen aufstrebende Suchanfragen mit hohem Wachstumspotenzial. Nutzen Sie diese für neue Content-Ideen und Blog-Artikel. Top Queries sind etablierte Keywords mit hohem Suchvolumen – ideal für Meta-Tags und H1-Überschriften.

Beispiel 4: Regionale Analyse (DACH-Vergleich)

Interesse nach Region vergleichen

Vergleicht Suchinteresse für eine Marke in Deutschland, Österreich und der Schweiz.

// DACH-Vergleich für "Aspirin" async function analyzeDACHRegion(keyword) { const regions = { DE: "Deutschland", AT: "Österreich", CH: "Schweiz" }; const results = {}; for (const [code, name] of Object.entries(regions)) { const params = { ...baseParams, q: keyword, data_type: "TIMESERIES", geo: code, date: "today 12-m" }; const response = await fetch(`${SERPAPI_ENDPOINT}?${new URLSearchParams(params)}`); const data = await response.json(); // Durchschnittliches Interesse berechnen const timeline = data.interest_over_time.timeline_data; const avgInterest = timeline.reduce((sum, point) => sum + point.values[0].value, 0) / timeline.length; results[name] = { average: avgInterest.toFixed(2), peak: Math.max(...timeline.map(p => p.values[0].value)), trend: calculateTrend(timeline) }; } return results; } function calculateTrend(timeline) { const firstHalf = timeline.slice(0, 6); const secondHalf = timeline.slice(6); const avgFirst = firstHalf.reduce((sum, p) => sum + p.values[0].value, 0) / 6; const avgSecond = secondHalf.reduce((sum, p) => sum + p.values[0].value, 0) / 6; const change = ((avgSecond - avgFirst) / avgFirst * 100).toFixed(2); return change > 0 ? `+${change}%` : `${change}%`; } // Verwendung analyzeDACHRegion("Aspirin").then(results => { console.log("=== DACH-REGIONEN-ANALYSE ==="); Object.entries(results).forEach(([region, data]) => { console.log(`\n${region}:`); console.log(` Durchschnitt: ${data.average}`); console.log(` Peak: ${data.peak}`); console.log(` Trend: ${data.trend}`); }); });

Regionale Insights

Identifizieren Sie regionale Unterschiede im Suchverhalten. Eine Marke könnte in Deutschland stärker gesucht werden als in der Schweiz – nutzen Sie diese Insights für gezielte Marketing-Kampagnen.

Beispiel 5: Saisonalitäts-Muster erkennen

Saisonale Trends identifizieren

Erkennt wiederkehrende Muster im Suchverhalten (z.B. Erkältungssaison, Allergiezeit).

// Saisonalitäts-Analyse für "Heuschnupfen Medikament" async function analyzeSeasonality(keyword, years = 3) { const params = { ...baseParams, q: keyword, data_type: "TIMESERIES", geo: "DE", date: `today ${years}-y` }; const response = await fetch(`${SERPAPI_ENDPOINT}?${new URLSearchParams(params)}`); const data = await response.json(); const timeline = data.interest_over_time.timeline_data; // Gruppierung nach Monaten const monthlyData = {}; timeline.forEach(point => { const month = new Date(point.date).getMonth() + 1; // 1-12 if (!monthlyData[month]) { monthlyData[month] = []; } monthlyData[month].push(point.values[0].value); }); // Durchschnittliches Interesse pro Monat const monthlyAverages = Object.entries(monthlyData).map(([month, values]) => ({ month: getMonthName(parseInt(month)), average: (values.reduce((sum, v) => sum + v, 0) / values.length).toFixed(2), peak: Math.max(...values) })); // Sortierung nach Durchschnitt monthlyAverages.sort((a, b) => b.average - a.average); return { keyword: keyword, peakMonths: monthlyAverages.slice(0, 3), lowMonths: monthlyAverages.slice(-3), seasonalityScore: calculateSeasonalityScore(monthlyAverages) }; } function getMonthName(monthNum) { const months = ["Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"]; return months[monthNum - 1]; } function calculateSeasonalityScore(monthlyData) { const values = monthlyData.map(m => parseFloat(m.average)); const max = Math.max(...values); const min = Math.min(...values); const variance = max - min; // Score 0-100: Je höher, desto stärker die Saisonalität return ((variance / max) * 100).toFixed(2); } // Verwendung analyzeSeasonality("Heuschnupfen Medikament", 3).then(result => { console.log("=== SAISONALITÄTS-ANALYSE ==="); console.log(`Keyword: ${result.keyword}`); console.log(`Saisonalitäts-Score: ${result.seasonalityScore}% (0=keine, 100=sehr stark)`); console.log("\nPeak-Monate (höchstes Suchvolumen):"); result.peakMonths.forEach(m => { console.log(` ${m.month}: ${m.average} (Peak: ${m.peak})`); }); console.log("\nNiedrige Monate:"); result.lowMonths.forEach(m => { console.log(` ${m.month}: ${m.average}`); }); });

Kampagnen-Timing

Nutzen Sie diese Daten für strategisches Kampagnen-Timing. Bei hoher Saisonalität sollten Marketing-Budgets in Peak-Monaten erhöht werden. Beispiel: "Heuschnupfen Medikament" hat typischerweise im März-Mai die höchsten Suchvolumina.

Beispiel 6: Indikationsgebiete-Trends

Vergleich mehrerer Indikationsgebiete

Analysiert Trends für verschiedene Krankheitsbilder/Indikationen.

// Beispiel: Vergleich verschiedener chronischer Erkrankungen const indications = [ "Diabetes", "Bluthochdruck", "Arthritis", "Asthma", "Depression" ]; async function compareIndications(indications) { const params = { ...baseParams, q: indications.join(","), data_type: "TIMESERIES", geo: "DE", date: "today 12-m" }; const response = await fetch(`${SERPAPI_ENDPOINT}?${new URLSearchParams(params)}`); const data = await response.json(); // Analyse der Ergebnisse const results = indications.map((indication, idx) => { const values = data.interest_over_time.timeline_data.map( point => point.values[idx].value ); return { indication: indication, average: (values.reduce((sum, v) => sum + v, 0) / values.length).toFixed(2), trend: calculateTrend(data.interest_over_time.timeline_data, idx), volatility: calculateVolatility(values) }; }); return results.sort((a, b) => b.average - a.average); } function calculateVolatility(values) { const avg = values.reduce((sum, v) => sum + v, 0) / values.length; const variance = values.reduce((sum, v) => sum + Math.pow(v - avg, 2), 0) / values.length; return Math.sqrt(variance).toFixed(2); } // Verwendung compareIndications(indications).then(results => { console.log("=== INDIKATIONSGEBIETE-RANKING ===\n"); results.forEach((result, idx) => { console.log(`${idx + 1}. ${result.indication}`); console.log(` Durchschnitt: ${result.average}`); console.log(` Trend: ${result.trend}`); console.log(` Volatilität: ${result.volatility}\n`); }); });

Portfolio-Strategie

Identifizieren Sie, welche Indikationsgebiete das höchste Suchinteresse haben. Nutzen Sie diese Insights für Produkt-Portfolio-Entscheidungen und Ressourcen-Allokation.

Zusammenfassung & Best Practices

Wichtige Erkenntnisse

Dos

  • Verwenden Sie aussagekräftige Keywords (Marke + "Erfahrungen", "Nebenwirkungen")
  • Analysieren Sie mindestens 12 Monate für saisonale Muster
  • Vergleichen Sie max. 5 Begriffe gleichzeitig
  • Nutzen Sie "RELATED_QUERIES" für SEO-Keyword-Research
  • Kombinieren Sie regionale Analysen (DE, AT, CH)
  • Dokumentieren Sie Datenquellen mit Abrufdatum

Don'ts

  • Überschreiten Sie nicht die API-Rate-Limits
  • Verwenden Sie keine zu generischen Keywords ("Medikament")
  • Interpretieren Sie niedrige Werte (<10) nicht über
  • Vermeiden Sie Zeiträume <3 Monate (zu volatil)
  • Vergleichen Sie nicht zu viele Begriffe (>5)
  • Ignorieren Sie nicht regionale Unterschiede

Strategische Anwendungen

Content-Marketing

Rising Queries für Blog-Themen, Long-tail Keywords für SEO-optimierte Artikel

Paid Search

High-volume Keywords für Google Ads, Saisonale Budget-Planung

Wettbewerb

Marken-Vergleiche, Share-of-Search-Analysen, Threat-Detection

Google Trends-Analyse | Teil von Marken-Analyzer 3.1

🚀 Zur Analyse-Anwendung | Dokumentation