{"id":2519,"date":"2026-06-26T08:29:57","date_gmt":"2026-06-26T08:29:57","guid":{"rendered":"http:\/\/grp-digital.com\/nl\/?p=2519"},"modified":"2026-06-26T14:30:29","modified_gmt":"2026-06-26T14:30:29","slug":"javascript-seo","status":"publish","type":"post","link":"https:\/\/grp-digital.com\/en\/kennisbank\/technische-seo\/javascript-seo\/","title":{"rendered":"JavaScript and SEO: why Google (and AI) don't see what you see in your CMS"},"content":{"rendered":"<p class=\"wp-block-paragraph\">Your content is online, so it\u2019s findable. Right? On sites that lean heavily on JavaScript, that\u2019s often not the case. There\u2019s usually a gap between what you see in your CMS and what Google and AI actually see. JavaScript SEO is about exactly that gap: making sure a site built with JavaScript stays findable, crawlable and indexable. In this article we show you where it goes wrong, how to test it yourself and how to fix it, for both Google and the new generation of AI search engines.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What is JavaScript SEO?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">JavaScript SEO is the part of technical SEO that makes sure websites running on JavaScript can be crawled, rendered and indexed properly. Many modern sites build their pages in the browser with JavaScript: think single-page applications, dynamic filters, or content loaded from an external source. For a visitor that works fine. For a search engine or AI model, the question is whether it gets to see that content at all.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How Google crawls and renders JavaScript<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Google can process JavaScript, but not in one go and not for free. The process runs in two steps, as Google describes in its own <a href=\"https:\/\/developers.google.com\/search\/docs\/crawling-indexing\/javascript\/javascript-seo-basics\" target=\"_blank\" rel=\"noopener\">documentation on JavaScript SEO<\/a> . Googlebot first crawls the raw HTML. Then, in a second pass, the page is rendered to run the JavaScript. That second pass doesn\u2019t always happen right away: the page can sit in the queue for a few seconds, but under heavy load for days. If your most important content lives only in that rendered version, you depend on whether and when Google runs that render. On large or slow sites that sometimes means content is picked up late, or not at all.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The visibility gap: your CMS versus the crawler<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In your CMS everything looks complete. Pages, products, vacancies: they\u2019re all neatly there. But a search engine or AI model doesn\u2019t see your back end, it sees the HTML your site returns. If important content only loads via JavaScript, through an external connection or via an embedded widget, the crawler may pick up none of it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We see it in our audits more often than you\u2019d think. At one organisation with a large catalogue, dozens of pages sat neatly in the back end, but were loaded through an external feed (an ATS or XML connection). In the raw HTML that Google and AI fetched, not one of them could be found. The content existed, but not for the people looking for it. You\u2019re then paying for content nobody can find.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img fetchpriority=\"high\" decoding=\"async\" width=\"2400\" height=\"1260\" src=\"https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler.png\" alt=\"Illustratie: wat een bezoeker ziet versus wat Google en AI zien bij content die via JavaScript laadt\" class=\"wp-image-2522\" srcset=\"https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler.png 2400w, https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler-300x158.png 300w, https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler-1024x538.png 1024w, https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler-768x403.png 768w, https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler-1536x806.png 1536w, https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler-2048x1075.png 2048w, https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler-18x9.png 18w\" sizes=\"(max-width: 2400px) 100vw, 2400px\" \/><figcaption class=\"wp-element-caption\">Illustration: if your content only loads via JavaScript, the crawler often fetches an empty page.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Why you don\u2019t see it yourself<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The tricky part: in your own browser everything works. You\u2019re logged in, your JavaScript runs, the feed loads nicely. But a search engine or AI model arrives anonymously, renders only partially and doesn\u2019t wait for slow or external scripts. What\u2019s obviously visible to you is an empty page to them. Common culprits: content that only appears via JavaScript, embedded iframes and feeds, infinite scroll, and information that only shows up after a click.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">You want the search engine to take you seriously. Give it mixed signals and it drops off.<\/p>\n<cite>Giacomo Perticara, founder and SEO strategist at GRP Digital<\/cite><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">AI makes the gap bigger, not smaller<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Many people think AI is smarter and therefore sees through this kind of thing better. The opposite is true. According to <a href=\"https:\/\/vercel.com\/blog\/the-rise-of-the-ai-crawler\" target=\"_blank\" rel=\"noopener\">research by Vercel<\/a> , the crawlers of ChatGPT and Claude do fetch JavaScript files but don\u2019t execute them. They read only the raw HTML. The consequence is sharp: a page can rank number one in Google and at the same time be virtually invisible to AI search engines. And AI answers are exactly where you want to be mentioned, because that\u2019s increasingly the moment people <a href=\"https:\/\/grp-digital.com\/en\/knowledge-base\/ai-visibility\/ai-changes-search-behaviour\/\">make their choice<\/a>. Steer by classic SEO alone and you miss that new layer.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">A technical SEO audit is like a vehicle\u2019s annual inspection: you do it every year, even when nothing is broken.<\/p>\n<cite>Giacomo Perticara, founder and SEO strategist at GRP Digital<\/cite><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">How to test what Google and AI really see<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You don\u2019t have to guess. This is exactly what we check first in our audits, and you can do it yourself in a few minutes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>View the page source (Ctrl+U or Cmd+U): is your important text literally in the HTML, or is it largely empty?<\/li>\n<li>Turn off JavaScript in your browser (via the developer tools) and reload the page. What\u2019s left, is that what you want to rank?<\/li>\n<li>Use the URL inspection in Google Search Console and look at the rendered HTML Google actually fetches.<\/li>\n<li>Search for a literal sentence from your page in Google, in quotation marks. No result? Then that text probably isn\u2019t indexed.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">How to close the visibility gap<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Serve important content in the HTML from the start, with server-side rendering (SSR) or static generation (SSG), instead of only via JavaScript.<\/li>\n<li>Have external feeds and embeds (ATS, vacancies, product data) render server-side, or mirror them to your own indexable pages.<\/li>\n<li>Give every important entity (vacancy, product, service) its own indexable URL with structured data.<\/li>\n<li>Don\u2019t block your JavaScript and CSS files in robots.txt; the crawler needs them to render correctly.<\/li>\n<li>Monitor it structurally: keep an eye on the coverage reports in Search Console and run a render check periodically.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Is JavaScript bad for SEO?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">No. JavaScript is essential for modern websites and doesn\u2019t have to get in the way of SEO. It only goes wrong when important content is built entirely through JavaScript without search engines being able to render it. Done well, with server-side rendering and indexable URLs, a JavaScript site can rank just fine, for Google and for AI.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">We don\u2019t build pages, we build logic.<\/p>\n<cite>Giacomo Perticara, founder and SEO strategist at GRP Digital<\/cite><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">Visibility is not an assumption<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The cheapest growth often sits in content you already have, but that nobody can see. Before you invest in more content or more ads: first check that what\u2019s there is actually visible to people, Google and AI. Visibility is not an assumption, it\u2019s something you test.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Want to know what search engines and AI really see of your site? At GRP Digital we map the visibility gap and close it.<\/p>","protected":false},"excerpt":{"rendered":"<p>JavaScript SEO zorgt dat een site die op JavaScript draait vindbaar blijft. Zo spoor je het zichtbaarheidsgat op en dicht je het, voor Google en AI.<\/p>","protected":false},"author":2,"featured_media":2522,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[31],"tags":[],"class_list":["post-2519","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technische-seo"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>JavaScript SEO: waarom Google en AI je content niet zien - GRP Digital<\/title>\n<meta name=\"description\" content=\"JavaScript SEO zorgt dat een site die op JavaScript draait vindbaar blijft. Zo spoor je het zichtbaarheidsgat op en dicht je het, voor Google en AI.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/grp-digital.com\/en\/knowledge-base\/technical-seo\/javascript-seo\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JavaScript SEO: waarom Google en AI je content niet zien - GRP Digital\" \/>\n<meta property=\"og:description\" content=\"JavaScript SEO zorgt dat een site die op JavaScript draait vindbaar blijft. Zo spoor je het zichtbaarheidsgat op en dicht je het, voor Google en AI.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/grp-digital.com\/en\/knowledge-base\/technical-seo\/javascript-seo\/\" \/>\n<meta property=\"og:site_name\" content=\"GRP Digital\" \/>\n<meta property=\"article:published_time\" content=\"2026-06-26T08:29:57+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-26T14:30:29+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2400\" \/>\n\t<meta property=\"og:image:height\" content=\"1260\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Giacomo Perticara\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Giacomo Perticara\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/technische-seo\\\/javascript-seo\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/technische-seo\\\/javascript-seo\\\/\"},\"author\":{\"name\":\"Giacomo Perticara\",\"@id\":\"https:\\\/\\\/grp-digital.com\\\/#\\\/schema\\\/person\\\/0963b7d6d43b315c20b2df3c9d8b0a56\"},\"headline\":\"JavaScript en SEO: waarom Google (en AI) niet ziet wat jij in je CMS ziet\",\"datePublished\":\"2026-06-26T08:29:57+00:00\",\"dateModified\":\"2026-06-26T14:30:29+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/technische-seo\\\/javascript-seo\\\/\"},\"wordCount\":1039,\"publisher\":{\"@id\":\"https:\\\/\\\/grp-digital.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/technische-seo\\\/javascript-seo\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/grp-digital.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/zichtbaarheidsgat-bezoeker-vs-crawler.png\",\"articleSection\":[\"Technische SEO\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/technische-seo\\\/javascript-seo\\\/\",\"url\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/technische-seo\\\/javascript-seo\\\/\",\"name\":\"JavaScript SEO: waarom Google en AI je content niet zien - GRP Digital\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/grp-digital.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/technische-seo\\\/javascript-seo\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/technische-seo\\\/javascript-seo\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/grp-digital.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/zichtbaarheidsgat-bezoeker-vs-crawler.png\",\"datePublished\":\"2026-06-26T08:29:57+00:00\",\"dateModified\":\"2026-06-26T14:30:29+00:00\",\"description\":\"JavaScript SEO zorgt dat een site die op JavaScript draait vindbaar blijft. Zo spoor je het zichtbaarheidsgat op en dicht je het, voor Google en AI.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/technische-seo\\\/javascript-seo\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/technische-seo\\\/javascript-seo\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/technische-seo\\\/javascript-seo\\\/#primaryimage\",\"url\":\"https:\\\/\\\/grp-digital.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/zichtbaarheidsgat-bezoeker-vs-crawler.png\",\"contentUrl\":\"https:\\\/\\\/grp-digital.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/zichtbaarheidsgat-bezoeker-vs-crawler.png\",\"width\":2400,\"height\":1260,\"caption\":\"Illustratie: wat een bezoeker ziet versus wat Google en AI zien bij content die via JavaScript laadt\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/technische-seo\\\/javascript-seo\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Technische SEO\",\"item\":\"https:\\\/\\\/grp-digital.com\\\/nl\\\/kennisbank\\\/category\\\/technische-seo\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"JavaScript en SEO: waarom Google (en AI) niet ziet wat jij in je CMS ziet\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/grp-digital.com\\\/#website\",\"url\":\"https:\\\/\\\/grp-digital.com\\\/\",\"name\":\"GRP Digital\",\"description\":\"GRP Digital\",\"publisher\":{\"@id\":\"https:\\\/\\\/grp-digital.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/grp-digital.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/grp-digital.com\\\/#organization\",\"name\":\"GRP Digital\",\"url\":\"https:\\\/\\\/grp-digital.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/grp-digital.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/grp-digital.com\\\/wp-content\\\/uploads\\\/2025\\\/04\\\/cropped-1.png\",\"contentUrl\":\"https:\\\/\\\/grp-digital.com\\\/wp-content\\\/uploads\\\/2025\\\/04\\\/cropped-1.png\",\"width\":512,\"height\":512,\"caption\":\"GRP Digital\"},\"image\":{\"@id\":\"https:\\\/\\\/grp-digital.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/company\\\/grp-digital\"],\"contactPoint\":{\"@type\":\"ContactPoint\",\"contactType\":\"customer support\",\"email\":\"support@grp-digital.com\",\"availableLanguage\":[\"nl\",\"en\"]},\"address\":{\"@type\":\"PostalAddress\",\"streetAddress\":\"Torenallee 20\",\"postalCode\":\"5617 BC\",\"addressLocality\":\"Eindhoven\",\"addressCountry\":\"NL\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/grp-digital.com\\\/#\\\/schema\\\/person\\\/0963b7d6d43b315c20b2df3c9d8b0a56\",\"name\":\"Giacomo Perticara\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/grp-digital.com\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/inspiratie-slides-GRP-Digital-3-300x300.png\",\"url\":\"https:\\\/\\\/grp-digital.com\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/inspiratie-slides-GRP-Digital-3-300x300.png\",\"contentUrl\":\"https:\\\/\\\/grp-digital.com\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/inspiratie-slides-GRP-Digital-3-300x300.png\",\"caption\":\"Giacomo Perticara\"},\"description\":\"Giacomo is een SEO- en marketingconsultant met meer dan 12 jaar expertise in online marketing, waarvan 8 jaar gespecialiseerd in SEO. Hij werkt voor uiteenlopende bedrijven zoals Qmusic, Unilever en de Efteling. Zijn focus ligt op langetermijngroei via slimme, datagedreven optimalisaties. Naast zijn werk is hij gepassioneerd fotograaf en liefhebber van de Italiaanse keuken. Giacomo staat bekend om zijn kritische blik, pragmatische aanpak en diepgaande kennis van zoekmachinegedrag en AI.\",\"sameAs\":[\"https:\\\/\\\/nl.linkedin.com\\\/in\\\/giacomoperticara\\\/nl\"],\"url\":\"https:\\\/\\\/grp-digital.com\\\/en\\\/about-us\\\/giacomo-perticara\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"JavaScript SEO: waarom Google en AI je content niet zien - GRP Digital","description":"JavaScript SEO zorgt dat een site die op JavaScript draait vindbaar blijft. Zo spoor je het zichtbaarheidsgat op en dicht je het, voor Google en AI.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/grp-digital.com\/en\/knowledge-base\/technical-seo\/javascript-seo\/","og_locale":"en_US","og_type":"article","og_title":"JavaScript SEO: waarom Google en AI je content niet zien - GRP Digital","og_description":"JavaScript SEO zorgt dat een site die op JavaScript draait vindbaar blijft. Zo spoor je het zichtbaarheidsgat op en dicht je het, voor Google en AI.","og_url":"https:\/\/grp-digital.com\/en\/knowledge-base\/technical-seo\/javascript-seo\/","og_site_name":"GRP Digital","article_published_time":"2026-06-26T08:29:57+00:00","article_modified_time":"2026-06-26T14:30:29+00:00","og_image":[{"width":2400,"height":1260,"url":"https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler.png","type":"image\/png"}],"author":"Giacomo Perticara","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Giacomo Perticara","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/grp-digital.com\/nl\/kennisbank\/technische-seo\/javascript-seo\/#article","isPartOf":{"@id":"https:\/\/grp-digital.com\/nl\/kennisbank\/technische-seo\/javascript-seo\/"},"author":{"name":"Giacomo Perticara","@id":"https:\/\/grp-digital.com\/#\/schema\/person\/0963b7d6d43b315c20b2df3c9d8b0a56"},"headline":"JavaScript en SEO: waarom Google (en AI) niet ziet wat jij in je CMS ziet","datePublished":"2026-06-26T08:29:57+00:00","dateModified":"2026-06-26T14:30:29+00:00","mainEntityOfPage":{"@id":"https:\/\/grp-digital.com\/nl\/kennisbank\/technische-seo\/javascript-seo\/"},"wordCount":1039,"publisher":{"@id":"https:\/\/grp-digital.com\/#organization"},"image":{"@id":"https:\/\/grp-digital.com\/nl\/kennisbank\/technische-seo\/javascript-seo\/#primaryimage"},"thumbnailUrl":"https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler.png","articleSection":["Technische SEO"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/grp-digital.com\/nl\/kennisbank\/technische-seo\/javascript-seo\/","url":"https:\/\/grp-digital.com\/nl\/kennisbank\/technische-seo\/javascript-seo\/","name":"JavaScript SEO: waarom Google en AI je content niet zien - GRP Digital","isPartOf":{"@id":"https:\/\/grp-digital.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/grp-digital.com\/nl\/kennisbank\/technische-seo\/javascript-seo\/#primaryimage"},"image":{"@id":"https:\/\/grp-digital.com\/nl\/kennisbank\/technische-seo\/javascript-seo\/#primaryimage"},"thumbnailUrl":"https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler.png","datePublished":"2026-06-26T08:29:57+00:00","dateModified":"2026-06-26T14:30:29+00:00","description":"JavaScript SEO zorgt dat een site die op JavaScript draait vindbaar blijft. Zo spoor je het zichtbaarheidsgat op en dicht je het, voor Google en AI.","breadcrumb":{"@id":"https:\/\/grp-digital.com\/nl\/kennisbank\/technische-seo\/javascript-seo\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/grp-digital.com\/nl\/kennisbank\/technische-seo\/javascript-seo\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/grp-digital.com\/nl\/kennisbank\/technische-seo\/javascript-seo\/#primaryimage","url":"https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler.png","contentUrl":"https:\/\/grp-digital.com\/wp-content\/uploads\/2026\/06\/zichtbaarheidsgat-bezoeker-vs-crawler.png","width":2400,"height":1260,"caption":"Illustratie: wat een bezoeker ziet versus wat Google en AI zien bij content die via JavaScript laadt"},{"@type":"BreadcrumbList","@id":"https:\/\/grp-digital.com\/nl\/kennisbank\/technische-seo\/javascript-seo\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/grp-digital.com\/nl\/"},{"@type":"ListItem","position":2,"name":"Technische SEO","item":"https:\/\/grp-digital.com\/nl\/kennisbank\/category\/technische-seo\/"},{"@type":"ListItem","position":3,"name":"JavaScript en SEO: waarom Google (en AI) niet ziet wat jij in je CMS ziet"}]},{"@type":"WebSite","@id":"https:\/\/grp-digital.com\/#website","url":"https:\/\/grp-digital.com\/","name":"GRP Digital","description":"GRP Digital","publisher":{"@id":"https:\/\/grp-digital.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/grp-digital.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/grp-digital.com\/#organization","name":"GRP Digital","url":"https:\/\/grp-digital.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/grp-digital.com\/#\/schema\/logo\/image\/","url":"https:\/\/grp-digital.com\/wp-content\/uploads\/2025\/04\/cropped-1.png","contentUrl":"https:\/\/grp-digital.com\/wp-content\/uploads\/2025\/04\/cropped-1.png","width":512,"height":512,"caption":"GRP Digital"},"image":{"@id":"https:\/\/grp-digital.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.linkedin.com\/company\/grp-digital"],"contactPoint":{"@type":"ContactPoint","contactType":"customer support","email":"support@grp-digital.com","availableLanguage":["nl","en"]},"address":{"@type":"PostalAddress","streetAddress":"Torenallee 20","postalCode":"5617 BC","addressLocality":"Eindhoven","addressCountry":"NL"}},{"@type":"Person","@id":"https:\/\/grp-digital.com\/#\/schema\/person\/0963b7d6d43b315c20b2df3c9d8b0a56","name":"Giacomo Perticara","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/grp-digital.com\/wp-content\/uploads\/2025\/10\/inspiratie-slides-GRP-Digital-3-300x300.png","url":"https:\/\/grp-digital.com\/wp-content\/uploads\/2025\/10\/inspiratie-slides-GRP-Digital-3-300x300.png","contentUrl":"https:\/\/grp-digital.com\/wp-content\/uploads\/2025\/10\/inspiratie-slides-GRP-Digital-3-300x300.png","caption":"Giacomo Perticara"},"description":"Giacomo is een SEO- en marketingconsultant met meer dan 12 jaar expertise in online marketing, waarvan 8 jaar gespecialiseerd in SEO. Hij werkt voor uiteenlopende bedrijven zoals Qmusic, Unilever en de Efteling. Zijn focus ligt op langetermijngroei via slimme, datagedreven optimalisaties. Naast zijn werk is hij gepassioneerd fotograaf en liefhebber van de Italiaanse keuken. Giacomo staat bekend om zijn kritische blik, pragmatische aanpak en diepgaande kennis van zoekmachinegedrag en AI.","sameAs":["https:\/\/nl.linkedin.com\/in\/giacomoperticara\/nl"],"url":"https:\/\/grp-digital.com\/en\/about-us\/giacomo-perticara\/"}]}},"_links":{"self":[{"href":"https:\/\/grp-digital.com\/en\/wp-json\/wp\/v2\/posts\/2519","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/grp-digital.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/grp-digital.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/grp-digital.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/grp-digital.com\/en\/wp-json\/wp\/v2\/comments?post=2519"}],"version-history":[{"count":7,"href":"https:\/\/grp-digital.com\/en\/wp-json\/wp\/v2\/posts\/2519\/revisions"}],"predecessor-version":[{"id":2582,"href":"https:\/\/grp-digital.com\/en\/wp-json\/wp\/v2\/posts\/2519\/revisions\/2582"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/grp-digital.com\/en\/wp-json\/wp\/v2\/media\/2522"}],"wp:attachment":[{"href":"https:\/\/grp-digital.com\/en\/wp-json\/wp\/v2\/media?parent=2519"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/grp-digital.com\/en\/wp-json\/wp\/v2\/categories?post=2519"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/grp-digital.com\/en\/wp-json\/wp\/v2\/tags?post=2519"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}