{"id":4833,"date":"2026-02-07T18:48:00","date_gmt":"2026-02-07T17:48:00","guid":{"rendered":"https:\/\/trackboxx.com\/?post_type=free-tools&#038;p=4833"},"modified":"2026-02-07T18:48:02","modified_gmt":"2026-02-07T17:48:02","slug":"analys-av-google-annonser","status":"publish","type":"free-tools","link":"https:\/\/trackboxx.com\/sv\/free-tools\/google-ads-analyse","title":{"rendered":"Analys av Google Ads"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Kostenlos pr\u00fcfen, warum Ihre Kampagnen Performance verlieren<\/h2>\n\n\n\n<p>Viele Google Ads Kampagnen liefern Klicks, aber keine echten Ergebnisse. H\u00e4ufig liegt das Problem nicht an einzelnen Anzeigen, sondern an Struktur, Keywordstrategie, Gebotslogik oder ungenauen Daten. Mit diesem kostenlosen Google Ads Check k\u00f6nnen Sie Ihre Kampagnen Schritt f\u00fcr Schritt pr\u00fcfen und schnell erkennen, wo Performance verloren geht. Der Selbsttest analysiert zentrale Bereiche wie Kampagnenaufbau, Keywords, Anzeigen, Budgetsteuerung und Tracking \u2013 und zeigt Ihnen, wo konkreter Handlungsbedarf besteht.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Google Ads Analyse starten<\/h2>\n\n\n\n<!-- Google Ads Health Check \u2013 Gutenberg Custom HTML Widget -->\n<div id=\"gads-healthcheck\">\n  <style>\n    \/* Scope everything to the widget *\/\n    #gads-healthcheck{\n      --hc-primary:#0E2352;\n      --hc-accent:#3B82F6;\n      --hc-danger:#EF4444;\n      --hc-warn:#F59E0B;\n      --hc-success:#10B981;\n      --hc-bg:#F8FAFC;\n      --hc-card:#FFFFFF;\n      --hc-text:#1E293B;\n      --hc-muted:#64748B;\n      --hc-border:#E2E8F0;\n      --hc-font:-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Oxygen,Ubuntu,sans-serif;\n\n      font-family:var(--hc-font);\n      color:var(--hc-text);\n\n      width:100%;\n      max-width:760px;\n      margin:2.5em auto;\n      padding:0 16px; \/* prevents \u201csqueezed\u201d look inside narrow content columns *\/\n      box-sizing:border-box;\n    }\n\n    #gads-healthcheck, \n    #gads-healthcheck * , \n    #gads-healthcheck *::before, \n    #gads-healthcheck *::after{\n      box-sizing:border-box;\n    }\n\n    \/* container *\/\n    #gads-healthcheck .hc-container{\n      background:var(--hc-card);\n      border:1px solid var(--hc-border);\n      border-radius:12px;\n      overflow:hidden;\n      box-shadow:0 1px 3px rgba(0,0,0,0.06);\n    }\n\n    \/* Header *\/\n    #gads-healthcheck .hc-header{\n      background:var(--hc-primary);\n      padding:28px 32px;\n      position:relative;\n      overflow:hidden;\n    }\n    #gads-healthcheck .hc-header::after{\n      content:'';\n      position:absolute;\n      top:-40px; right:-20px;\n      width:160px; height:160px;\n      background:rgba(59,130,246,0.1);\n      border-radius:50%;\n    }\n    #gads-healthcheck .hc-header-label{\n      font-size:11px;\n      letter-spacing:2px;\n      text-transform:uppercase;\n      color:rgba(255,255,255,0.5);\n      margin:0 0 8px 0;\n    }\n    #gads-healthcheck .hc-header-title{\n      font-size:22px;\n      font-weight:700;\n      color:#fff;\n      line-height:1.3;\n      margin:0;\n    }\n    #gads-healthcheck .hc-header-sub{\n      font-size:14px;\n      color:rgba(255,255,255,0.6);\n      margin:6px 0 0 0;\n      line-height:1.5;\n    }\n\n    \/* Progress *\/\n    #gads-healthcheck .hc-progress-wrap{\n      padding:0 32px;\n      background:var(--hc-bg);\n      border-bottom:1px solid var(--hc-border);\n    }\n    #gads-healthcheck .hc-progress-bar-bg{\n      height:3px;\n      background:var(--hc-border);\n      border-radius:2px;\n      margin:16px 0;\n      position:relative;\n    }\n    #gads-healthcheck .hc-progress-bar-fill{\n      height:100%;\n      background:var(--hc-accent);\n      border-radius:2px;\n      transition:width .4s ease;\n      width:0%;\n    }\n    #gads-healthcheck .hc-progress-info{\n      display:flex;\n      justify-content:space-between;\n      align-items:center;\n      padding:0 0 14px 0;\n    }\n    #gads-healthcheck .hc-progress-step{\n      font-size:12px;\n      color:var(--hc-muted);\n    }\n    #gads-healthcheck .hc-progress-cat{\n      font-size:12px;\n      font-weight:600;\n      color:var(--hc-primary);\n    }\n\n    \/* Category icon *\/\n    #gads-healthcheck .hc-cat-icon{\n      display:inline-flex;\n      align-items:center;\n      justify-content:center;\n      width:36px; height:36px;\n      border-radius:8px;\n      background:rgba(59,130,246,0.08);\n      margin:0 0 12px 0;\n      font-size:18px;\n    }\n\n    \/* Body *\/\n    #gads-healthcheck .hc-body{ padding:28px 32px; }\n    #gads-healthcheck .hc-category-title{\n      font-size:17px;\n      font-weight:700;\n      color:var(--hc-primary);\n      margin:0 0 4px 0;\n    }\n    #gads-healthcheck .hc-category-desc{\n      font-size:13px;\n      color:var(--hc-muted);\n      margin:0 0 22px 0;\n      line-height:1.5;\n    }\n\n    \/* Questions *\/\n    #gads-healthcheck .hc-question{\n      margin:0 0 16px 0;\n      padding:16px;\n      background:var(--hc-bg);\n      border:1px solid var(--hc-border);\n      border-radius:8px;\n      transition:border-color .2s;\n    }\n    #gads-healthcheck .hc-question.answered-yes{\n      border-color:var(--hc-success);\n      background:rgba(16,185,129,0.03);\n    }\n    #gads-healthcheck .hc-question.answered-no{\n      border-color:var(--hc-danger);\n      background:rgba(239,68,68,0.03);\n    }\n    #gads-healthcheck .hc-question-text{\n      font-size:14px;\n      font-weight:500;\n      color:var(--hc-text);\n      margin:0 0 12px 0;\n      line-height:1.5;\n    }\n    #gads-healthcheck .hc-btn-group{\n      display:flex;\n      gap:8px;\n      flex-wrap:wrap;\n    }\n    #gads-healthcheck .hc-btn{\n      padding:7px 20px;\n      border-radius:6px;\n      border:1px solid var(--hc-border);\n      background:var(--hc-card);\n      color:var(--hc-text);\n      font-size:13px;\n      font-weight:500;\n      cursor:pointer;\n      transition:all .15s;\n      font-family:var(--hc-font);\n      line-height:1.2;\n    }\n    #gads-healthcheck .hc-btn:hover{\n      border-color:var(--hc-accent);\n      color:var(--hc-accent);\n    }\n    #gads-healthcheck .hc-btn.selected-yes{\n      background:var(--hc-success);\n      color:#fff;\n      border-color:var(--hc-success);\n    }\n    #gads-healthcheck .hc-btn.selected-no{\n      background:var(--hc-danger);\n      color:#fff;\n      border-color:var(--hc-danger);\n    }\n\n    \/* Nav *\/\n    #gads-healthcheck .hc-nav{\n      display:flex;\n      justify-content:space-between;\n      align-items:center;\n      padding:20px 32px;\n      border-top:1px solid var(--hc-border);\n      gap:12px;\n    }\n    #gads-healthcheck .hc-nav-btn{\n      padding:10px 24px;\n      border-radius:8px;\n      border:none;\n      font-size:14px;\n      font-weight:600;\n      cursor:pointer;\n      font-family:var(--hc-font);\n      transition:all .15s;\n      line-height:1.2;\n      white-space:nowrap;\n    }\n    #gads-healthcheck .hc-nav-btn.back{\n      background:transparent;\n      color:var(--hc-muted);\n      border:1px solid var(--hc-border);\n    }\n    #gads-healthcheck .hc-nav-btn.back:hover{\n      color:var(--hc-text);\n      border-color:var(--hc-text);\n    }\n    #gads-healthcheck .hc-nav-btn.next{\n      background:var(--hc-accent);\n      color:#fff;\n    }\n    #gads-healthcheck .hc-nav-btn.next:hover{\n      background:#2563EB;\n    }\n    #gads-healthcheck .hc-nav-btn:disabled{\n      opacity:.4;\n      cursor:default;\n    }\n\n    \/* Results *\/\n    #gads-healthcheck .hc-results{ padding:32px; }\n    #gads-healthcheck .hc-results-title{\n      font-size:20px;\n      font-weight:700;\n      color:var(--hc-primary);\n      margin:0 0 6px 0;\n    }\n    #gads-healthcheck .hc-results-sub{\n      font-size:14px;\n      color:var(--hc-muted);\n      margin:0 0 28px 0;\n      line-height:1.5;\n    }\n    #gads-healthcheck .hc-chart-wrap{\n      display:flex;\n      justify-content:center;\n      margin:0 0 32px 0;\n    }\n    #gads-healthcheck .hc-chart-wrap canvas{\n      width:320px;\n      height:320px;\n      max-width:100%;\n      max-height:320px;\n      display:block;\n    }\n\n    \/* Score bars *\/\n    #gads-healthcheck .hc-score-section{ margin:0 0 16px 0; }\n    #gads-healthcheck .hc-score-header{\n      display:flex;\n      justify-content:space-between;\n      align-items:center;\n      margin:0 0 6px 0;\n      gap:12px;\n    }\n    #gads-healthcheck .hc-score-label{\n      font-size:13px;\n      font-weight:600;\n      color:var(--hc-text);\n    }\n    #gads-healthcheck .hc-score-value{\n      font-size:13px;\n      font-weight:700;\n    }\n    #gads-healthcheck .hc-score-bar-bg{\n      height:8px;\n      background:var(--hc-border);\n      border-radius:4px;\n      overflow:hidden;\n    }\n    #gads-healthcheck .hc-score-bar-fill{\n      height:100%;\n      border-radius:4px;\n      transition:width .8s ease;\n    }\n\n    \/* Diagnosis cards *\/\n    #gads-healthcheck .hc-diagnosis{ margin:28px 0 0 0; }\n    #gads-healthcheck .hc-diagnosis-title{\n      font-size:15px;\n      font-weight:700;\n      color:var(--hc-primary);\n      margin:0 0 14px 0;\n    }\n    #gads-healthcheck .hc-diagnosis-card{\n      padding:14px 16px;\n      border-radius:8px;\n      margin:0 0 10px 0;\n      border-left:3px solid;\n    }\n    #gads-healthcheck .hc-diagnosis-card.critical{\n      background:rgba(239,68,68,0.05);\n      border-color:var(--hc-danger);\n    }\n    #gads-healthcheck .hc-diagnosis-card.warning{\n      background:rgba(245,158,11,0.05);\n      border-color:var(--hc-warn);\n    }\n    #gads-healthcheck .hc-diagnosis-card.good{\n      background:rgba(16,185,129,0.05);\n      border-color:var(--hc-success);\n    }\n    #gads-healthcheck .hc-diagnosis-card-title{\n      font-size:13px;\n      font-weight:600;\n      margin:0 0 4px 0;\n    }\n    #gads-healthcheck .hc-diagnosis-card.critical .hc-diagnosis-card-title{ color:var(--hc-danger); }\n    #gads-healthcheck .hc-diagnosis-card.warning  .hc-diagnosis-card-title{ color:var(--hc-warn); }\n    #gads-healthcheck .hc-diagnosis-card.good     .hc-diagnosis-card-title{ color:var(--hc-success); }\n    #gads-healthcheck .hc-diagnosis-card-text{\n      font-size:13px;\n      color:var(--hc-muted);\n      line-height:1.5;\n      margin:0;\n    }\n\n    \/* CTA *\/\n    #gads-healthcheck .hc-cta{\n      margin:28px 0 0 0;\n      padding:20px;\n      background:linear-gradient(135deg,#0E2352,#1a3a7a);\n      border-radius:10px;\n    }\n    #gads-healthcheck .hc-cta-text{\n      font-size:14px;\n      color:rgba(255,255,255,0.85);\n      line-height:1.6;\n      margin:0 0 14px 0;\n    }\n    #gads-healthcheck .hc-cta-text strong{ color:#fff; }\n    #gads-healthcheck .hc-cta-btn{\n      display:inline-block;\n      padding:10px 24px;\n      background:var(--hc-accent);\n      color:#fff;\n      border-radius:7px;\n      font-size:14px;\n      font-weight:600;\n      text-decoration:none;\n      transition:background .15s;\n    }\n    #gads-healthcheck .hc-cta-btn:hover{ background:#2563EB; }\n\n    \/* Restart *\/\n    #gads-healthcheck .hc-restart{ text-align:center; margin:20px 0 0 0; }\n    #gads-healthcheck .hc-restart-btn{\n      background:none;\n      border:none;\n      color:var(--hc-muted);\n      font-size:13px;\n      cursor:pointer;\n      text-decoration:underline;\n      font-family:var(--hc-font);\n      padding:6px 8px;\n    }\n\n    \/* Responsive: expand breakpoint to avoid \u201csqueezed\u201d look in narrow blog columns *\/\n    @media (max-width: 820px){\n      #gads-healthcheck .hc-header,\n      #gads-healthcheck .hc-body,\n      #gads-healthcheck .hc-nav,\n      #gads-healthcheck .hc-results,\n      #gads-healthcheck .hc-progress-wrap{\n        padding-left:18px;\n        padding-right:18px;\n      }\n      #gads-healthcheck .hc-header-title{ font-size:18px; }\n      #gads-healthcheck .hc-chart-wrap canvas{\n        width:260px;\n        height:260px;\n        max-height:260px;\n      }\n    }\n  <\/style>\n\n  <div class=\"hc-container\">\n    <div class=\"hc-header\">\n      <div class=\"hc-header-label\">Interaktiver Selbsttest<\/div>\n      <div class=\"hc-header-title\">Google Ads Health Check<\/div>\n      <div class=\"hc-header-sub\">12 Fragen, 5 Bereiche. Finden Sie heraus, wo Ihre Kampagnen Leistung verlieren.<\/div>\n    <\/div>\n\n    <div class=\"hc-progress-wrap\" id=\"hcProgress\">\n      <div class=\"hc-progress-bar-bg\"><div class=\"hc-progress-bar-fill\" id=\"hcBarFill\"><\/div><\/div>\n      <div class=\"hc-progress-info\">\n        <span class=\"hc-progress-step\" id=\"hcStepLabel\">Bereich 1 von 5<\/span>\n        <span class=\"hc-progress-cat\" id=\"hcCatLabel\">Struktur<\/span>\n      <\/div>\n    <\/div>\n\n    <div class=\"hc-body\" id=\"hcBody\"><\/div>\n\n    <div class=\"hc-nav\" id=\"hcNav\">\n      <button class=\"hc-nav-btn back\" id=\"hcBack\" onclick=\"hcPrev()\">Zur\u00fcck<\/button>\n      <button class=\"hc-nav-btn next\" id=\"hcNext\" onclick=\"hcNext()\" disabled>Weiter<\/button>\n    <\/div>\n\n    <div class=\"hc-results\" id=\"hcResults\" style=\"display:none;\"><\/div>\n  <\/div>\n\n  <script>\n  (function(){\n    var cats = [\n      { id:'structure', name:'Kampagnenstruktur', icon:'\u2630', desc:'Struktur bestimmt, wie gut sich Daten auswerten lassen und ob Anzeigen zur Suchintention passen.',\n        questions:[\n          {q:'Sind Brand-Keywords in eigenen Kampagnen von generischen Suchanfragen getrennt?', tip:'Vermischte Brand- und generische Keywords verf\u00e4lschen Ihre Performance-Daten und machen Optimierung schwierig.'},\n          {q:'Hat jede Anzeigengruppe ein klar abgegrenztes Thema oder eine Produktgruppe?', tip:'Zu breit gef\u00e4cherte Anzeigengruppen f\u00fchren zu allgemeinen Anzeigen und schlechter Landingpage-Relevanz.'},\n          {q:'Ist das Displaynetzwerk in reinen Suchkampagnen deaktiviert?', tip:'Aktiviertes Display in Suchkampagnen verbraucht Budget f\u00fcr irrelevante Placements.'}\n        ]},\n      { id:'keywords', name:'Keywordstrategie', icon:'\u2315', desc:'Keywords steuern, wann Ihre Anzeigen erscheinen. Unpr\u00e4zise Auswahl verbrennt Budget.',\n        questions:[\n          {q:'Nutzen Sie aktiv negative Keywords, um irrelevante Suchanfragen auszuschlie\u00dfen?', tip:'Fehlende negative Keywords sind einer der h\u00e4ufigsten Budgetfresser.'},\n          {q:'Pr\u00fcfen Sie regelm\u00e4\u00dfig den Suchbegriffe-Report?', tip:'Der Suchbegriffe-Report zeigt, f\u00fcr welche Begriffe Ihre Anzeigen tats\u00e4chlich ausgespielt werden.'},\n          {q:'Vermeiden Sie Broad Match bei Keywords mit weniger als 50 Conversions pro Monat?', tip:'Broad Match braucht ausreichend Conversion-Daten. Ohne diese Basis streut das System zu breit.'}\n        ]},\n      { id:'ads', name:'Anzeigen & Assets', icon:'\u270e', desc:'Performance entsteht durch Varianten und kontinuierliches Testen.',\n        questions:[\n          {q:'Haben Sie mindestens zwei Anzeigenvarianten pro Anzeigengruppe?', tip:'Ohne Varianten kann Google nicht testen, welche Botschaften besser funktionieren.'},\n          {q:'Nutzen Sie Anzeigenerweiterungen wie Sitelinks, Callouts oder Bilder?', tip:'Erweiterungen erh\u00f6hen die Anzeigenfl\u00e4che und verbessern die Klickrate.'}\n        ]},\n      { id:'bidding', name:'Gebote & Budget', icon:'\u2696', desc:'Automatische Gebotsstrategien brauchen ausreichend Daten. Zu fr\u00fche Automatisierung f\u00fchrt zu unpr\u00e4zisen Ergebnissen.',\n        questions:[\n          {q:'Haben Ihre Kampagnen mindestens 30 Conversions in den letzten 30 Tagen, bevor Sie Ziel-CPA oder Ziel-ROAS nutzen?', tip:'Ohne ausreichende Conversionbasis reagieren automatische Gebote ungenau.'},\n          {q:'Bleibt Ihr Tagesbudget mindestens 14 Tage stabil, bevor Sie Ergebnisse bewerten?', tip:'H\u00e4ufige Budget\u00e4nderungen st\u00f6ren die Lernphase des Algorithmus.'}\n        ]},\n      { id:'tracking', name:'Tracking & Daten', icon:'\u2609', desc:'Datenqualit\u00e4t ist die Grundlage jeder Optimierung. Fehlerhafte Daten f\u00fchren zu falschen Entscheidungen.',\n        questions:[\n          {q:'Ist Ihr Conversion Tracking eingerichtet und misst die richtigen Aktionen?', tip:'Fehlerhaftes Tracking ist eine der h\u00e4ufigsten Ursachen f\u00fcr schlechte Kampagnensteuerung.'},\n          {q:'Stimmen die Conversionwerte in Google Ads mit Ihren realen Gesch\u00e4ftszahlen \u00fcberein?', tip:'Abweichungen zwischen gemeldeten und realen Werten verf\u00e4lschen jede ROI-Berechnung.'}\n        ]}\n    ];\n\n    var answers = {};\n    var stepIndex = 0;\n    var totalQ = 0;\n    cats.forEach(function(c){ totalQ += c.questions.length; });\n\n    function qs(id){ return document.getElementById(id); }\n\n    function render(){\n      if(stepIndex >= cats.length){ showResults(); return; }\n\n      var c = cats[stepIndex];\n      var html = '';\n      html += '<div class=\"hc-cat-icon\">'+c.icon+'<\/div>';\n      html += '<div class=\"hc-category-title\">'+c.name+'<\/div>';\n      html += '<div class=\"hc-category-desc\">'+c.desc+'<\/div>';\n\n      c.questions.forEach(function(q,i){\n        var key = c.id+'_'+i;\n        var val = answers[key];\n        var cls = (val===true)?'answered-yes':(val===false)?'answered-no':'';\n        var yBtn = (val===true)?'selected-yes':'';\n        var nBtn = (val===false)?'selected-no':'';\n        html += '<div class=\"hc-question '+cls+'\" id=\"hcq_'+key+'\">';\n        html +=   '<div class=\"hc-question-text\">'+q.q+'<\/div>';\n        html +=   '<div class=\"hc-btn-group\">';\n        html +=     '<button class=\"hc-btn '+yBtn+'\" onclick=\"hcAnswer(\\''+key+'\\',true)\">Ja<\/button>';\n        html +=     '<button class=\"hc-btn '+nBtn+'\" onclick=\"hcAnswer(\\''+key+'\\',false)\">Nein<\/button>';\n        html +=   '<\/div>';\n        html += '<\/div>';\n      });\n\n      qs('hcBody').innerHTML = html;\n      qs('hcResults').style.display = 'none';\n      qs('hcBody').style.display = 'block';\n      qs('hcNav').style.display = 'flex';\n      qs('hcProgress').style.display = 'block';\n\n      var answered = 0;\n      cats.slice(0, stepIndex).forEach(function(cc){ answered += cc.questions.length; });\n      c.questions.forEach(function(_, i){\n        if(answers[c.id+'_'+i] !== undefined) answered++;\n      });\n\n      qs('hcBarFill').style.width = Math.round(answered\/totalQ*100) + '%';\n      qs('hcStepLabel').textContent = 'Bereich ' + (stepIndex+1) + ' von ' + cats.length;\n      qs('hcCatLabel').textContent = c.name;\n      qs('hcBack').style.visibility = (stepIndex===0) ? 'hidden' : 'visible';\n\n      checkNav();\n    }\n\n    function checkNav(){\n      var c = cats[stepIndex];\n      var allAnswered = true;\n      c.questions.forEach(function(_, i){\n        if(answers[c.id+'_'+i] === undefined) allAnswered = false;\n      });\n      var btn = qs('hcNext');\n      btn.disabled = !allAnswered;\n      btn.textContent = (stepIndex === cats.length-1) ? 'Auswertung anzeigen' : 'Weiter';\n    }\n\n    window.hcAnswer = function(key, val){\n      answers[key] = val;\n\n      var el = document.getElementById('hcq_'+key);\n      if(el){\n        el.className = 'hc-question ' + (val ? 'answered-yes' : 'answered-no');\n        var btns = el.querySelectorAll('.hc-btn');\n        if(btns && btns.length >= 2){\n          btns[0].className = 'hc-btn ' + (val ? 'selected-yes' : '');\n          btns[1].className = 'hc-btn ' + (!val ? 'selected-no' : '');\n        }\n      }\n\n      checkNav();\n\n      var answered = 0;\n      cats.forEach(function(cc){\n        cc.questions.forEach(function(_, i){\n          if(answers[cc.id+'_'+i] !== undefined) answered++;\n        });\n      });\n      qs('hcBarFill').style.width = Math.round(answered\/totalQ*100) + '%';\n    };\n\n    window.hcNext = function(){\n      if(stepIndex < cats.length){\n        stepIndex++;\n        render();\n      }\n    };\n\n    window.hcPrev = function(){\n      if(stepIndex > 0){\n        stepIndex--;\n        render();\n      }\n    };\n\n    window.hcRestart = function(){\n      answers = {};\n      stepIndex = 0;\n      render();\n    };\n\n    function getScores(){\n      var scores = {};\n      cats.forEach(function(c){\n        var yes = 0;\n        c.questions.forEach(function(_, i){\n          if(answers[c.id+'_'+i] === true) yes++;\n        });\n        scores[c.id] = Math.round(yes \/ c.questions.length * 100);\n      });\n      return scores;\n    }\n\n    function showResults(){\n      qs('hcBody').style.display = 'none';\n      qs('hcNav').style.display = 'none';\n      qs('hcProgress').style.display = 'none';\n\n      var res = qs('hcResults');\n      res.style.display = 'block';\n\n      var scores = getScores();\n      var total = 0, cnt = 0;\n      cats.forEach(function(c){ total += scores[c.id]; cnt++; });\n      var avg = Math.round(total \/ cnt);\n\n      var html = '';\n      html += '<div class=\"hc-results-title\">Ihr Google Ads Health Score: ' + avg + '%<\/div>';\n      html += '<div class=\"hc-results-sub\">Ergebnis basierend auf ' + totalQ + ' Pr\u00fcfpunkten in ' + cats.length + ' Bereichen.<\/div>';\n      html += '<div class=\"hc-chart-wrap\"><canvas id=\"hcCanvas\" width=\"320\" height=\"320\"><\/canvas><\/div>';\n\n      cats.forEach(function(c){\n        var s = scores[c.id];\n        var col = (s>=80) ? 'var(--hc-success)' : (s>=50) ? 'var(--hc-warn)' : 'var(--hc-danger)';\n        html += '<div class=\"hc-score-section\">';\n        html +=   '<div class=\"hc-score-header\"><span class=\"hc-score-label\">'+c.name+'<\/span><span class=\"hc-score-value\" style=\"color:'+col+'\">'+s+'%<\/span><\/div>';\n        html +=   '<div class=\"hc-score-bar-bg\"><div class=\"hc-score-bar-fill\" style=\"width:0%;background:'+col+'\" data-w=\"'+s+'%\"><\/div><\/div>';\n        html += '<\/div>';\n      });\n\n      html += '<div class=\"hc-diagnosis\"><div class=\"hc-diagnosis-title\">Diagnose<\/div>';\n      cats.forEach(function(c){\n        var s = scores[c.id];\n        var tips = [];\n        c.questions.forEach(function(q, i){\n          if(answers[c.id+'_'+i] === false) tips.push(q.tip);\n        });\n        if(tips.length === 0) return;\n\n        var sev = (s<50) ? 'critical' : (s<80) ? 'warning' : 'good';\n        var sevLabel = (s<50) ? 'Handlungsbedarf' : (s<80) ? 'Optimierungspotenzial' : 'Weitgehend ok';\n\n        html += '<div class=\"hc-diagnosis-card '+sev+'\">';\n        html +=   '<div class=\"hc-diagnosis-card-title\">'+c.name+' \u2013 '+sevLabel+'<\/div>';\n        tips.forEach(function(t){ html += '<div class=\"hc-diagnosis-card-text\">\u2192 '+t+'<\/div>'; });\n        html += '<\/div>';\n      });\n      html += '<\/div>';\n\n      if(scores.tracking < 100){\n        html += '<div class=\"hc-cta\">';\n        html +=   '<div class=\"hc-cta-text\">Ihr Tracking-Score liegt bei <strong>'+scores.tracking+'%<\/strong>. L\u00fcckenhafte Daten verf\u00e4lschen jede Optimierung. <strong>Trackboxx<\/strong> erfasst 100% Ihres Traffics ohne Cookies und zeigt Ihnen, ob Ihre Conversion-Daten vollst\u00e4ndig sind.<\/div>';\n        html +=   '<a href=\"https:\/\/www.trackboxx.com\" target=\"_blank\" rel=\"noopener\" class=\"hc-cta-btn\">Trackboxx kostenlos testen \u2192<\/a>';\n        html += '<\/div>';\n      } else {\n        html += '<div class=\"hc-cta\">';\n        html +=   '<div class=\"hc-cta-text\">Ihr Tracking ist gut aufgestellt. Mit <strong>Trackboxx<\/strong> k\u00f6nnen Sie zus\u00e4tzlich pr\u00fcfen, wie viel Traffic Ihnen durch Cookie-Consent-L\u00fccken entgeht \u2013 cookieless und DSGVO-konform.<\/div>';\n        html +=   '<a href=\"https:\/\/www.trackboxx.com\" target=\"_blank\" rel=\"noopener\" class=\"hc-cta-btn\">Trackboxx kennenlernen \u2192<\/a>';\n        html += '<\/div>';\n      }\n\n      html += '<div class=\"hc-restart\"><button class=\"hc-restart-btn\" onclick=\"hcRestart()\">Test wiederholen<\/button><\/div>';\n\n      res.innerHTML = html;\n\n      setTimeout(function(){\n        var fills = res.querySelectorAll('.hc-score-bar-fill');\n        fills.forEach(function(f){ f.style.width = f.getAttribute('data-w'); });\n        drawRadar(scores);\n      }, 80);\n    }\n\n    function drawRadar(scores){\n      var canvas = document.getElementById('hcCanvas');\n      if(!canvas || !canvas.getContext) return;\n\n      var cssSize = (window.matchMedia && window.matchMedia('(max-width: 820px)').matches) ? 260 : 320;\n\n      var ctx = canvas.getContext('2d');\n      var dpr = window.devicePixelRatio || 1;\n\n      canvas.width  = cssSize * dpr;\n      canvas.height = cssSize * dpr;\n      canvas.style.width  = cssSize + 'px';\n      canvas.style.height = cssSize + 'px';\n\n      ctx.setTransform(dpr, 0, 0, dpr, 0, 0);\n\n      var cx = cssSize\/2, cy = cssSize\/2;\n      var r  = (cssSize === 260) ? 90 : 110;\n\n      var labels = [];\n      var vals = [];\n      cats.forEach(function(c){ labels.push(c.name); vals.push(scores[c.id]\/100); });\n\n      var n = labels.length;\n      var angStep = Math.PI*2\/n;\n      var startAngle = -Math.PI\/2;\n\n      \/\/ Grid\n      [0.25,0.5,0.75,1].forEach(function(f){\n        ctx.beginPath();\n        for(var i=0;i<=n;i++){\n          var a = startAngle + (i%n)*angStep;\n          var x = cx + Math.cos(a)*r*f;\n          var y = cy + Math.sin(a)*r*f;\n          (i===0) ? ctx.moveTo(x,y) : ctx.lineTo(x,y);\n        }\n        ctx.closePath();\n        ctx.strokeStyle = '#E2E8F0';\n        ctx.lineWidth = 1;\n        ctx.stroke();\n      });\n\n      \/\/ Axes\n      for(var i=0;i<n;i++){\n        var a = startAngle + i*angStep;\n        ctx.beginPath();\n        ctx.moveTo(cx,cy);\n        ctx.lineTo(cx+Math.cos(a)*r, cy+Math.sin(a)*r);\n        ctx.strokeStyle = '#E2E8F0';\n        ctx.lineWidth = 1;\n        ctx.stroke();\n      }\n\n      \/\/ Data area\n      ctx.beginPath();\n      for(var i=0;i<=n;i++){\n        var a = startAngle + (i%n)*angStep;\n        var v = vals[i%n];\n        var x = cx + Math.cos(a)*r*v;\n        var y = cy + Math.sin(a)*r*v;\n        (i===0) ? ctx.moveTo(x,y) : ctx.lineTo(x,y);\n      }\n      ctx.closePath();\n      ctx.fillStyle = 'rgba(59,130,246,0.12)';\n      ctx.fill();\n      ctx.strokeStyle = '#3B82F6';\n      ctx.lineWidth = 2;\n      ctx.stroke();\n\n      \/\/ Points\n      for(var i=0;i<n;i++){\n        var a = startAngle + i*angStep;\n        var v = vals[i];\n        var x = cx + Math.cos(a)*r*v;\n        var y = cy + Math.sin(a)*r*v;\n        ctx.beginPath();\n        ctx.arc(x,y,4,0,Math.PI*2);\n        var col = (v>=0.8) ? '#10B981' : (v>=0.5) ? '#F59E0B' : '#EF4444';\n        ctx.fillStyle = col;\n        ctx.fill();\n        ctx.strokeStyle = '#fff';\n        ctx.lineWidth = 2;\n        ctx.stroke();\n      }\n\n      \/\/ Labels\n      ctx.font = '11px -apple-system,BlinkMacSystemFont,sans-serif';\n      ctx.fillStyle = '#64748B';\n      ctx.textAlign = 'center';\n\n      var labelRadius = r + (cssSize === 260 ? 18 : 22);\n\n      for(var i=0;i<n;i++){\n        var a = startAngle + i*angStep;\n        var lx = cx + Math.cos(a)*labelRadius;\n        var ly = cy + Math.sin(a)*labelRadius;\n\n        var text = labels[i];\n        var words = text.split(' ');\n        if(words.length > 1 && text.length > 14){\n          ctx.fillText(words.slice(0, Math.ceil(words.length\/2)).join(' '), lx, ly-6);\n          ctx.fillText(words.slice(Math.ceil(words.length\/2)).join(' '), lx, ly+6);\n        } else {\n          ctx.fillText(text, lx, ly+3);\n        }\n      }\n    }\n\n    render();\n  })();\n  <\/script>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Was analysiert der Google Ads Check?<\/h2>\n\n\n\n<p>Der Selbsttest konzentriert sich auf die wichtigsten Bereiche, die direkten Einfluss auf die Performance haben:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Kampagnenstruktur und Aufteilung nach Suchintention<\/li>\n\n\n\n<li>Einsatz und Qualit\u00e4t von Keywords inklusive negativer Keywords<\/li>\n\n\n\n<li>Aufbau von Anzeigen und Nutzung von Erweiterungen<\/li>\n\n\n\n<li>Gebotsstrategien und Budgetsteuerung<\/li>\n\n\n\n<li>Conversion Tracking und Datenqualit\u00e4t<\/li>\n<\/ul>\n\n\n\n<p>Jeder Bereich wird anhand konkreter Fragen bewertet. Das Ergebnis zeigt, wo Ihre Kampagnen stabil aufgestellt sind und wo Handlungsbedarf besteht.<\/p>\n\n\n\n<p class=\"has-background\" style=\"border-top-left-radius:10px;border-top-right-radius:10px;border-bottom-left-radius:10px;border-bottom-right-radius:10px;border-top-color:var(--wp--preset--color--cyan-bluish-gray);border-top-width:1px;border-right-color:var(--wp--preset--color--cyan-bluish-gray);border-right-width:1px;border-bottom-color:var(--wp--preset--color--cyan-bluish-gray);border-bottom-width:1px;border-left-color:var(--wp--preset--color--cyan-bluish-gray);border-left-width:5px;background-color:#f6f6f6;padding-top:20px;padding-right:20px;padding-bottom:20px;padding-left:20px\"><a href=\"https:\/\/trackboxx.com\/warum-viele-google-ads-kampagnen-scheitern\/\">Warum viele Google Ads Kampagnen scheitern!<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">F\u00fcr wen ist dieser Google Ads Selbsttest geeignet?<\/h2>\n\n\n\n<p>Der Check richtet sich an alle, die schnell einsch\u00e4tzen m\u00f6chten, ob ihre Kampagnen technisch und strategisch sauber aufgebaut sind:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Unternehmen, die viele Klicks erhalten, aber wenig Anfragen oder Verk\u00e4ufe generieren<\/li>\n\n\n\n<li>Marketingverantwortliche, die eine erste Analyse ohne komplexe Tools durchf\u00fchren m\u00f6chten<\/li>\n\n\n\n<li>Agenturen, die eine schnelle Ersteinsch\u00e4tzung f\u00fcr Kundenprojekte ben\u00f6tigen<\/li>\n\n\n\n<li>Selbstst\u00e4ndige oder Inhouse-Marketer, die ihre Kampagnen eigenst\u00e4ndig betreuen<\/li>\n<\/ul>\n\n\n\n<p>Der Test ersetzt keine vollst\u00e4ndige Analyse, bietet aber eine klare Orientierung und hilft dabei, typische Schwachstellen fr\u00fch zu erkennen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">H\u00e4ufige Gr\u00fcnde f\u00fcr schlechte Google Ads Performance<\/h2>\n\n\n\n<p>Viele Probleme entstehen durch wiederkehrende Muster:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>zu breite Kampagnen ohne klare Struktur<\/li>\n\n\n\n<li>fehlende negative Keywords, die irrelevanten Traffic verhindern k\u00f6nnten<\/li>\n\n\n\n<li>automatisierte Gebotsstrategien ohne ausreichende Datenbasis<\/li>\n\n\n\n<li>Anzeigen ohne klare Handlungsaufforderung<\/li>\n\n\n\n<li>unvollst\u00e4ndiges oder fehlerhaftes Conversion Tracking<\/li>\n<\/ul>\n\n\n\n<p>Schon kleine Anpassungen in diesen Bereichen k\u00f6nnen deutliche Auswirkungen auf die Ergebnisse haben.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">FAQ<\/h2>\n\n\n<div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-1770486330407\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Warum bringen meine Google Ads Kampagnen viele Klicks, aber keine Anfragen?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Hohe Klickzahlen ohne Conversions entstehen h\u00e4ufig durch falsche Suchintention oder zu generische Keywords. Nutzer informieren sich dann nur, ohne eine konkrete Kaufabsicht zu haben. Zus\u00e4tzlich kann ungenaues Tracking die tats\u00e4chliche Performance verf\u00e4lschen.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1770486342141\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Wie lange dauert der Google Ads Check?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Der Selbsttest besteht aus wenigen Fragen und kann in wenigen Minuten abgeschlossen werden. Ziel ist eine schnelle erste Einsch\u00e4tzung, keine umfassende Kampagnenanalyse.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1770486350066\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Ersetzt der Selbsttest eine vollst\u00e4ndige Google Ads Analyse?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Nein. Der Check dient als Orientierungshilfe, um typische Schwachstellen zu erkennen. Eine detaillierte Analyse ber\u00fccksichtigt zus\u00e4tzlich individuelle Ziele, Wettbewerbsumfeld und historische Daten.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1770486358349\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Warum spielt Tracking eine so gro\u00dfe Rolle f\u00fcr Google Ads?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Tracking bestimmt, welche Daten zur Optimierung genutzt werden. Wenn Conversions falsch erfasst werden oder wichtige Ereignisse fehlen, entstehen falsche Entscheidungen bei Geboten, Budgets und Anzeigen.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1770486367998\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Wann sollte ich meine Google Ads Kampagnen \u00fcberpr\u00fcfen?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Eine regelm\u00e4\u00dfige Pr\u00fcfung ist sinnvoll, insbesondere bei steigenden Kosten, sinkender Conversion Rate oder starken Leistungsschwankungen. Auch nach gr\u00f6\u00dferen \u00c4nderungen an Kampagnen oder Landingpages empfiehlt sich ein Check.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n<p><\/p>\n","protected":false},"featured_media":0,"template":"","class_list":["post-4833","free-tools","type-free-tools","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/trackboxx.com\/sv\/wp-json\/wp\/v2\/free-tools\/4833","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/trackboxx.com\/sv\/wp-json\/wp\/v2\/free-tools"}],"about":[{"href":"https:\/\/trackboxx.com\/sv\/wp-json\/wp\/v2\/types\/free-tools"}],"wp:attachment":[{"href":"https:\/\/trackboxx.com\/sv\/wp-json\/wp\/v2\/media?parent=4833"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}