Product support

Get help in the plugin support forum.

  • Added on Feb 20, 2017
  • Current version: 1.0.7
  • Platform Compatibility
    v3.x not tested
    v2.x not tested
    v1.x use latest
  • License: Regular / Extended
  • Created by


SEO Gurus wanted

Im currently looking for an experienced SEO guy, who can test and elaborate the plugin. As I am a backend developer. I don't know which features are essential to include, what things need to be changed, etc. If you are interested, just drop me a line.

This plugin can generate useful metrics about a text content and assess these metrics to give you an insight for improving the text. These include analyzers for text and paragraph length, ease of readability (Flesch score), images and outgoing links used, meta title and description, etc

Also included is a preview of the Google search results which can be assessed using the plugin.

The plugin provides this functionalities by registering a new Form Widget and thus can be used in any form you like. A sample integration for the blog plugin is provided.

Beta Testing

Please note that this plugin is in a beta stage, meaning it is not thoroughly tested. Also, this means I strongly advise you to provide feedback and report any errors you get back to me, so I can have a look on them and hopefully fix them.


  • SEO Assessments
  • Content Assessments
  • Google Search results preview (mobile preview included)
  • Multi-lingual ready
  • RainLab.Blog integration
  • Relevant words analysis (density, occurances, ...)
  • Previously used keywords assessment


  • RainLab.Pages integration
  • Add meta_description to the rainlab_blog_posts table to persist the meta description. implemented!

Frequently Asked Questions

  • Q: Does this work with the markdown editor as well?
    A: No, currently only the richeditor type is supported. That's also why for the RainLab.Blog integration the editor is changed by the plugin.

  • Q: Is this usable just yet?
    A: The blog integration has been tested by me, however I can not guarantee the correct function in combination with other plugins or special setups. Also, the plugin is in a beta stage, so not all things work smoothy yet.

  • Q: Which language is used for the assessments?
    A: The plugin will load the translations based on the current backend language. All metrics and hints from the analyzer are displayed in this language (if available). The plugin assumes, that the text to be analyzed is written in the same language.

The posts list view with score columns added.


As this is a paid plugin, you need to add it to a project. Once this is done, go to Settings >Updates & Plugins and click Attach Project. This will download all plugins connected with this project automatically.


Navigate to Settings > Misc > SEO Analyzer Settings.

There, you can enable the different integrations for this plugin for a quick plug-and-play. Please follow the instructions provided to guarantee a seamless user experience.

The RainLab.Blog integration replaces the Markdown editor with a Richeditor (WYSIWYG) instance, adds the Analyzer to the Post form, adds two score columns to the Post list and implements the required Model behaviour (see below).

Note: As of now, the only integration available is RainLab.Blog.

Form widget

The main functionality of this plugin is provided by a form widget called seo-analyzer. It renders a tab view containing the SEO assessments, content assessments and a settings tab with the snippet preview. The following options are available:

Option Description
fieldMap Array, that maps SEO Analyzer fields to actual input fields of the form. The following attributes can be mapped: content, url-path, title, excerpt, and meta-description
baseUrl The base URL for the snippet preview, which is used as prefix to the url path. Defaults to example.org/

Usage example:

    type: seo-analyzer
    baseUrl: example.org/
        content: content
        url-path: slug
        title: title
        excerpt: excerpt

Model behaviour

In order to make the widget function properly, the corresponding model needs to implement the following behaviour: Alxy.SEOAnalyzer.Behaviors.AnalyzableModel

This is needed to load the translation files for the widget and synchronize the focus keyword and score values with the database.

The behavior also adds accessors to the model to directly access the meta_description and focus_keyword values. So if you want to display the meta description on your post page, you can simply add the following to your markup:

<meta name="description" content="{{ post.meta_description }}">

Column type

The plugin also registers a new list column type: score. This can be used in a columns.yaml to properly format the SEO and content scores.

Usage example:

    label: Score
    type: score
    searchable: false
    sortable: false

Again, the Model behaviour needs to be implemented for this feature to work.

  • Found the plugin useful on 2 Nov, 2018

    I am not getting a snippet preview, what am I doing wrong?

  • author

    Replied on 2 Nov, 2018

    Hi Andriy, can you please open the javascript console and check if there are any errors there? Also, does the assessment in general work, i.e. are the scores calculated? For further assistance, please join the slack group/chat and ping me (@alxy) there. This section is only for reviews ;)

  • Found the plugin useful on 22 Feb, 2017

    Very nice plugin and easily to use for optimize the SEO of the blog posts.


Fix settings tab visibility

Nov 03, 2018


Fix scope interface (namespace changed)

Jun 14, 2018


Attempt to fix the "title not populated" bug

Mar 25, 2017


Implement "Relevant words" and "Prevously used keywords" features. Added the focus keyword to the columns list.

Mar 08, 2017


Add a PostsConverterCommand to convert older blog posts to HTML

Feb 23, 2017


Add german language files

Feb 22, 2017


First version of SEOAnalyzer

Dec 22, 2016