The StackOptic Blog

Practical guides on identifying website technologies, SEO and GEO, web performance and lead generation — from the team behind StackOptic.

Detecting Plausible Analytics via its script.js library and data-domain attribute
Tech Stack Guides

How to Tell If a Website Uses Plausible Analytics

Plausible is a privacy-first, cookieless analytics tool. Detect it via the plausible.io/js/script.js library, the data-domain attribute, the window.plausible function and /api/event beacons.

27 May 20267 min read
Detecting Matomo analytics on a website through its script and tracking beacon
Tech Stack Guides

How to Tell If a Website Uses Matomo

Matomo is the privacy-first, self-hostable analytics platform. Here is how to detect it on any site using script URLs, the _paq object, the matomo.php beacon and first-party cookies.

27 May 20268 min read
Detecting PrestaShop ecommerce via the prestashop global, generator tag and module paths
Tech Stack Guides

How to Tell If a Website Is Built With PrestaShop

PrestaShop is a popular open-source ecommerce platform, especially in Europe. Detect it via the prestashop global, the generator meta tag, /modules/ and /themes/ paths and PrestaShop cookies.

27 May 20266 min read
Detecting Google Fonts via fonts.googleapis.com stylesheet links and fonts.gstatic.com files
Tech Stack Guides

How to Tell If a Website Uses Google Fonts

Google Fonts is the most popular web-font service. Detect it via fonts.googleapis.com stylesheet links and fonts.gstatic.com font-file requests — and learn the GDPR implications of hosted fonts.

27 May 20267 min read
Detecting FullStory session replay via its fs.js script and tracking endpoint
Tech Stack Guides

How to Tell If a Website Uses FullStory

FullStory records full session replays and digital-experience analytics. Detect it via the edge.fullstory.com/s/fs.js script, the global FS object, the _fs_org setting and fs_uid cookie.

27 May 20267 min read
Detecting Cloudinary via res.cloudinary.com asset URLs and transformation parameters
Tech Stack Guides

How to Tell If a Website Uses Cloudinary

Cloudinary is a leading media-management and image/video CDN. Detect it via res.cloudinary.com asset URLs, the cloud name in the path and its image-transformation parameters.

27 May 20267 min read
Detecting Pendo via the cdn.pendo.io agent, the pendo global and data.pendo.io tracking
Tech Stack Guides

How to Tell If a Website Uses Pendo

Pendo combines product analytics with in-app guidance. Detect it via the cdn.pendo.io agent, the global pendo object, pendo.initialize() and data.pendo.io tracking.

27 May 20266 min read
Detecting Google AdSense via the adsbygoogle.js script and ca-pub publisher ID
Tech Stack Guides

How to Tell If a Website Uses Google AdSense

Google AdSense monetises sites with display ads. Detect it via the adsbygoogle.js script from pagead2.googlesyndication.com, the adsbygoogle array, ca-pub- publisher IDs and ins.adsbygoogle blocks.

27 May 20266 min read
A step-by-step SEO audit covering technical, on-page and off-page checks
SEO & GEO

How to Do an SEO Audit (Step by Step)

A complete, step-by-step SEO audit: technical, on-page and off-page checks, the tools to use at each stage, and how to turn findings into a priority plan.

25 May 202610 min read
Detecting whether a website uses Hotjar or another heatmap and session-replay tool
Tech Stack Guides

How to Tell if a Website Uses Hotjar or Another Heatmap Tool

Hotjar, Clarity, FullStory and Crazy Egg leave clear fingerprints — script domains, cookies and global objects. Here is how to detect a site's heatmap tool.

25 May 20268 min read
Writing SEO-friendly content: intent, structure, E-E-A-T and information gain
SEO & GEO

How to Write SEO-Friendly Content That Ranks

SEO-friendly content starts with intent and depth, not keywords. Place keywords naturally, structure for snippets, build E-E-A-T, and add information gain.

25 May 202610 min read
Detecting whether a website uses the jQuery JavaScript library and which version
Tech Stack Guides

How to Tell if a Website Uses jQuery (and Which Version)

jQuery is easy to detect: a jquery.min.js file, the window.jQuery and $ objects in the Console, and jQuery.fn.jquery prints the exact version. Here is how.

25 May 202610 min read
Doing local SEO for a business with multiple locations
Local SEO

How to Do Local SEO for Multiple Locations

Multi-location local SEO needs a page, a profile and consistent citations per location. Here is how to scale local SEO without duplicate or doorway pages.

25 May 20268 min read
Using LinkedIn and Sales Navigator for respectful B2B prospecting
Lead Generation

How to Use LinkedIn for B2B Prospecting

A respectful guide to LinkedIn prospecting: optimise your profile, use Sales Navigator filters, find decision-makers, and combine it with email signals.

25 May 202610 min read
Detecting whether a website is built with the Gatsby React framework
Tech Stack Guides

How to Tell if a Website Is Built with Gatsby

Gatsby leaves clear client-side tells: /page-data/ JSON requests, a ___gatsby div and app-*.js bundles. Here is how to detect this React static-site generator.

25 May 202610 min read
How to make your website accessible on mobile devices
Accessibility

How to Make Your Website Accessible on Mobile

Mobile accessibility has its own challenges: touch targets, zoom, orientation and mobile screen readers. Here is how to make your site work on a phone.

25 May 20269 min read
How to make accessible data tables with proper headers and captions
Accessibility

How to Make Accessible Data Tables

Data tables only work for screen-reader users when headers are wired up correctly. Here is how to use caption, th scope, and headers/id, with code patterns.

25 May 20268 min read
Detecting whether a website is built with WooCommerce on WordPress
Tech Stack Guides

How to Tell if a Website Is Built with WooCommerce

WooCommerce is WordPress plus Woo: woocommerce-* body classes, a /wp-content/plugins/woocommerce/ path and wc-* cart scripts. Here is how to detect it.

25 May 202610 min read
Optimizing a blog post for both SEO and AI search (GEO)
SEO & GEO

How to Optimize a Blog Post for SEO and AI Search (GEO)

One workflow that serves Google and AI engines at once: intent, answer-first intros, scannable structure, schema, E-E-A-T, cited stats and freshness.

25 May 20268 min read
Optimising web fonts for performance with woff2, subsetting and font-display
Web Performance

How to Optimize Web Fonts for Performance

Web fonts can block rendering, hide text and cause layout shift. How to optimise them with woff2, subsetting, font-display, preloading and self-hosting.

25 May 20269 min read
Detecting Progressive Web App (PWA) features on a website
Tech Stack Guides

How to Tell if a Website Uses Progressive Web App (PWA) Features

A web app manifest, a registered service worker, installability and a theme-color tag are the PWA signals. Here is how to detect them in Chrome DevTools.

25 May 202610 min read
How to optimize images for SEO: filenames, alt text, sitemaps and structured data
SEO & GEO

How to Optimize Images for SEO

Image SEO goes beyond speed: filenames, alt text, captions, image sitemaps, structured data and crawlable lazy-loading for Google Images and rich results.

25 May 20269 min read
Detecting whether a website uses Akamai, Fastly or Amazon CloudFront
Tech Stack Guides

How to Tell if a Website Uses Akamai, Fastly, or CloudFront

Each major CDN leaves distinct header fingerprints — Fastly's x-served-by, Akamai's ghost markers, CloudFront's x-amz-cf-pop. Here is how to tell them apart.

25 May 20268 min read
Optimizing for voice search: conversational queries, FAQ schema, fast mobile pages and local SEO
SEO & GEO

How to Optimize for Voice Search

Voice queries are longer, conversational and often local. How to optimise with natural-language Q&A, FAQ schema, snippet alignment, fast pages and local SEO.

25 May 20269 min read