Back to Homepage

SEO Scanner: Boost Website's Search Visibility

3 min read


SEO Scanner: Boost Website's Search Visibility

Laravel SEO Scanner scans your code and crawls the routes from your app. Additionally, it has 24 checks that assess performance, configurations, meta tags, and content quality.

Configure which routes to scan, exclude or include specific checks, and even add your own! Completing checks will further improve the SEO score and therefore increase ranking potential.

Laravel SEO Installation

You can install the package via composer:

composer require vormkracht10/laravel-seo-scanner

The following command will install Puppeteer if you want to scan pages that use Javascript, such as Vue or React.

npm install puppeteer

Run the install command to publish the config file and run the migrations:

php artisan seo:install

The package contains these checks, and the process of adding or removing checks is managed in the config file. Furthermore, these checks align with SEO best practices, and if all checks pass successfully, your website will achieve a good SEO score.

Laravel SEO Configuration

✅ The page does not have 'noindex' set.
✅ The page does not have 'nofollow' set.
✅ Robots.txt allows indexing.


✅ Page has an H1 tag and if it is used only once per page.
✅ All links redirect to an url using HTTPS.
✅ Every image has an alt attribute.
✅ The page contains no broken links.
✅ The page contains no broken images.
✅ Length of the content is at least 2100 characters.
✅ No more than 20% of the content contains too long sentences (more than 20 words).
✅ A minimum of 30% of the sentences contain a transition word or phrase.


✅ The page has a meta description.
✅ Title is not longer than 60 characters.
✅ It has an Open Graph image.
✅ Lang attribute is set on the html tag.
✅ The title contains one or more keywords.
✅ One or more keywords are present in the first paragraph.


✅ Time To First Byte (TTFB) is below 600ms.
✅ The page response returns a 200 status code.
✅ HTML is not larger than 100 KB.
✅ Images are not larger than 1 MB.
✅ JavaScript files are not larger than 1 MB.
✅ CSS files are not larger than 15 KB.
✅ HTML is GZIP compressed.

By default, it will check for SEO on all GET routes. Additionally, to assess the Laravel SEO score of a specific route, add it to the routes array in the config file. To exclude a route from checks, simply add it to the exclude_routes array in the config file. Moreover, if you prefer not to check routes for SEO, you can set the check_routes option in the config file to false.

To check the SEO score of your laravel route where, run the following command:

php artisan seo:scan

If you want to queue the scan and trigger it manually you can dispatch the 'Scan' job:

use Vormkracht10\LaravelSeo\Jobs\Scan;


Laravel SEO Scanning a single route

Want to get the score of a specific url? Run the following command:

php artisan seo:scan-url

It is possible to enable javascript rendering for SPA applications. When javascript rendering is enabled, a headless browser will render the content. To enable javascript rendering, set the javascript option to true in the config file. By adding the --javascript option to the command, javascript rendering can also be enabled for a single route:

php artisan seo:scan-url --javascript

More Advance and brief documentation is available at

Follow @LaravelSage on X → Follow @LaravelSage on Facebook →
Aniket Singh

Aniket Singh

View All Articles

Full-stack developer with a knack for Merging creativity with technical expertise for standout solutions.

Related Articles

data_forget Helper for Laravel

data_forget Helper for Laravel

Since Laravel version 10.15, there is a new utility function called data_forget that allows you to remove keys from an array or object using a "dot" notation.

Laravel Tenant Application with Tenancy

Laravel Tenant Application with Tenancy

You can make your Laravel app multi-tenant using the Tenancy for Laravel Tenant package. This tenancy package lets you make any Laravel application multi-tenant without rewriting it.

Top Laravel Packages for Building Powerful Applications

Top Laravel Packages for Building Powerful Applications

Are you ready to take your Laravel skills to the next level and build extraordinary applications? Look no further! In this blog post, we will unveil a treasure trove of top packages that will revolutionize your development process.

MJML PHP: Simplifying Email Template Creation

MJML PHP: Simplifying Email Template Creation

The MJML PHP package by Spatie can help you create email templates more easily. But there is a catch. It can be difficult to craft visually appealing and functional email templates that work across a variety of email clients.

Subscribe for 20+ new Laravel tutorials every week

You can unsubscribe at any time. You'll also get -20% off my courses!

© 2024


Laravel Sage

   |    Privacy Policy