Skip to content
PageSoarPageSoar
Resources menu
All resources
Getting started
What is PageSoar?Try the PageSoar demoWhat's new in PageSoarRunning the free website checkYour first ten minutes in PageSoarWhat the Home screen showsHow the Getting started guide worksHow to choose your goal
Finding and fixing
How a change goes live: draft, review, publish, checkWhat the agent changes by itself, and what waits for youWhat the SEO audit screen showsHow to find and filter your pagesWhat the page audit showsWhat site-wide issues mean and how to clear themHow to add internal links and untangle pages that competeHow page types are scored and how to change the standardsHow to change many pages at once with Bulk optimizeBroken links, redirects and page speedWhat the Market position screen showsHow to see what changed in your marketHow to choose your next movesHow to find sites that should link to youHow to check if Google's AI answers name youHow to choose what to write nextWhat the Meta Ads screen showsHow to save a filtered list as a view
Proving it worked
How PageSoar measures whether a change workedHow to read the Did it work? screenWhat the Weekly briefing showsWhere your visits come from: the Channels screenHow to compare pages and build a dashboardWhich kinds of fix move clicks most: the Impact rankingHow to run a held-back experiment and log what you expectHow to track your search rankingsWhat the Needs attention screen is telling youHow to generate a report deckHow to be told when a number movesHow to log what you expect a change to do
Connecting your site
Which sites PageSoar can publish toConnect Google Search Console and AnalyticsWhen a connection does not workHow to connect your website and GoogleHow to check your site's connection healthHow to request a custom connectorConnect WordPress to PageSoarConnect Ghost to PageSoarConnect a git repositoryConnect a Python appConnect Shopify to PageSoarConnect Webflow to PageSoarConnect Wix to PageSoar
Asking your data
Asking your data in plain wordsHow to check a draft before it goes liveHow to check a rival's website
SEO basics
What a title tag is and how to write a good oneWriting meta descriptions that earn clicksHeading structure: H1 to H3 explainedHow to write helpful image alt textWhat a canonical tag is and when to use itRedirects: 301 versus 302 and how to avoid chainsWhat an XML sitemap does and how to check yoursRobots.txt: what it blocks and common mistakesWhat structured data is and which types matter for a small businessHow to fix duplicate contentMobile-friendliness: what to checkHTTPS and why browsers warnWhat keyword research is and how to startSearch intent: the four kinds and how to match a page to oneLong-tail keywords for small businessesHow to write a page that answers a searchInternal linking basicsWhat backlinks are and how to earn them honestlyAnchor text explainedWhat E-E-A-T means in practiceContent refreshes: when and how to update an old pageKeyword cannibalization: how to spot and fix itLocal SEO basics and a Google Business Profile checklistHow to read a search results page (SERP features)Core Web Vitals explained: LCP, CLS and interaction speedHow to speed up a slow page: images, caching and scriptsWhat Google Search Console shows: queries, pages, clicks, impressions and positionWhat Google Analytics measures: users, sessions and eventsSetting up a conversion or key eventClick-through rate: what is normal and how to raise itBounce rate versus engagement rateUTM tags: tracking campaigns correctlyHow to run a simple before-and-after SEO test, and why correlation misleadsSeasonality: why traffic moves without any change from youWhat a Google algorithm update is and how to respondA monthly SEO reporting checklist for a small teamWhat hreflang is and when a site needs itHow Google indexing works and how to check a page is indexedPagination and how to handle paged listsURL structure and slugsFavicons and why they matterHow JavaScript-heavy pages are crawled and renderedPreparing for voice searchCall to action writingWhat a lead is and how to capture oneLanding page basicsWhen to use the link disavow tool (rarely)Domain authority and similar scores: what they do and do not meanCloaking and other practices that break search guidelinesThe marketing funnel and how content maps to itHow to read heat maps and scroll depthPogo-sticking and short visits: what they tell youReading CSS-related page speed problems in plain languageImage formats and compression for a faster siteHow to write a clear page title and URL for a service pageHow often to publish content
Your team and your data
Roles and approvalsIs my site safe with PageSoar?Billing, plans and cancellingHow to approve or send back a proposed changeAssigned and Decided: where your work and past decisions livePick the goal that counts as a winTeach PageSoar your brand voiceList what your product has todayCheck what PageSoar knows about your site and rivalsIgnore pages, or keep them out of GooglePublish your award badges so Google can show themCustom modules: parts built for your accountPeople, roles, company name and appearanceTarget site and the write testHow notifications and the weekly summary workHow to get back something you removed
Glossary
SEO glossary A to Z

How JavaScript-heavy pages are crawled and rendered

If a page builds its content with scripts, search engines may see less than visitors do. Here is how to tell.

What it is#

Some sites send a nearly empty page and let scripts in the browser fill in the text, images and links. A person sees the finished page. A search engine has to run those scripts first, a step called rendering, before it sees the same thing.

Why it matters#

Major search engines can run scripts, but it is an extra step that can be delayed or fail. If your key text or links only exist after a script runs, they may be found late or missed. Other tools, such as some social previews, may not run scripts at all.

How to check#

  1. Right-click the page, choose View Page Source and look for your main heading and first paragraph in the raw text. If they are there, the content does not depend on scripts.
  2. If they are missing, the page relies on scripts to show them.
  3. In Google Search Console, inspect the page address and view the rendered version. Compare it with what you see in a normal browser.
  4. Switch scripts off in your browser settings for a moment and see what is left.

How to fix#

  • Put the important things in the first response: the main heading, the body text, the title and the main links.
  • Use real links with an address, not buttons that run a script, so crawlers can follow them.
  • Ask your developer about server-side rendering, where the server sends the finished page. Static pages are another option.
  • Do not block your script files in robots.txt. A crawler that cannot load them cannot render the page.
  • Give each view its own address rather than changing content on one address.

A practical tip: when you hire a developer or choose a builder, ask one direct question: will the main text and links be in the page when it first arrives, or added later by scripts? Their answer tells you quickly whether you will face this problem. Sites built from plain pages or common content systems rarely do.

Common mistakes#

  • Assuming that a page that looks fine to you looks fine to a crawler.
  • Loading text only after a click or scroll.
  • Blocking script or style files from crawlers.

Slow scripts also hurt visitors; see how to speed up a slow page.

Terms in this guide#