-
-
Notifications
You must be signed in to change notification settings - Fork 62
Description
We are currently facing the problem that the GRASS website has dropped significantly in the Google search rankings (and probably in other search engines as well).
I have run a SEO (Search Engine Optimization) analysis today with the outcome below.
The tools used are
- https://seorch.de/
- https://search.google.com/search-console?resource_id=https%3A%2F%2Fgrass.osgeo.org%2F&hl=en
These issues should be addressed as soon as possible.
See below for a checklist under "List of issues".
Meta Description
The meta description is too long: 218 characters.
Target: It should have a maximum of 160 characters.
Text - tag
- The website has too little text: 212 words.
- The text length should exceed 400 words.
- About 10% of the text consists of filler words. perfect
- The text has less than 4 complete sentences. you can do better
- The average sentence length is 21 words. This is too much.
Hierarchy of titles
h1 (No Text) <-- bug
h2 (missing) <-- bug
h3 download
h3 learn
h3 support
h3 contribute
h2 latest news
h3 grass refreshed branding
h3 grass developer summit 2025
h3 grass 8.4.1 released
Incomplete hierarchy is commonly penalized by search engines.
Semantic analysis: Readability of the website
(calculated according to Flesch Reading Ease)
- Flesch value: 44
- Readability: difficult
- This is roughly equivalent to a legal text.
Code / Text Rate
- Text rate: 7.51 %
- The text rate should be above 25 %.
We simply need more text.
HTML error in source code
HTML not valid. 16 errors found (tested with W3C Validator)
Images -
Tags
Open Graph Protocol
- 4 Open Graph attributes found.
- Problem: some required attributes were not found:
og:type missing
Largest Contentful Paint (LPC): Pre-load the largest paint image
Info: https://web.dev/articles/lcp
If the LCP element is dynamically added to the page, you should preload the image to improve the LCP.
Affected files and functions:
https://grass.osgeo.org/images/logos/banner.jpg
banner.jpg: JPEG image data: 1899x1268 pixels
==> this is WAY too large and punished by Google search.
Core Web Vitals > Desktop > warning LCP issue: longer than 2.5s (desktop)
Images too large
Provide images that have an appropriate size to save mobile data and improve loading time.
Affected files and functions:
- https://grass.osgeo.org//images/other/website-dev-summit-2025carousel-image.png ->
1008 x 669
- https://grass.osgeo.org/images/conferences_logos/foss4g_europe_2025_logo.png ->
1114 x 521
- https://grass.osgeo.org//images/other/grass_gis_mentoring.jpg ->
1008x669
- (there are more)
Core Web Vitals (Mobile)
Time To First Byte (TTFB): How quickly the server responds to a request: 999 milliseconds,
(Ideal target value < 800 milliseconds)
Page speed analysis (mobile)
Largest contentful paint
When is the main content visible: 10.75 seconds -> too slow
Removal of "GIS" from GRASS GIS
This recent project naming change will contribute to a SEO ranking decrease.
Take a look at the following screenshot: it shows that while the term "grass" gets a lot of impressions, the click rate is a fraction of that of the term "grass gis", simply because "grass" can be anything.
List of issues
Meta description too long
- Currently 218 characters but 160 characters max -> Shrink meta description to avoid SEO complaining #527
Text in <body>
too short:
- The main page of the website has too little text: 212 words (it should exceed 400 words and contain more than 4 complete sentences. The average sentence length should be below 21 words.
Hierarchy of titles incomplete:
-
<h1>
is lacking text. -
<h2>
is missing.
HTML errors:
- HTML not valid, 16 errors found (tested with W3C Validator)
Image attributes missing:
- 3
Tags without ALT Attribut. -> SEO: Added missing alt tags to index.html img elements #517
- 10
tags without TITLE attribute. -> SEO: Added aria-labels to social links #521
Open Graph Protocol:
- required attribute not found:
og:type missing
-> https://ogp.me/#types -> "Website"?
Largest Contentful Paint (LPC): several images too large:
-
banner.jpg
:JPEG image data: 1899x1268 pixels
- https://grass.osgeo.org//images/other/website-dev-summit-2025carousel-image.png ->
1008 x 669
- https://grass.osgeo.org/images/conferences_logos/foss4g_europe_2025_logo.png ->
1114 x 521
- https://grass.osgeo.org//images/other/grass_gis_mentoring.jpg ->
1008x669
- (there are more)
Focus on main site, not on mirror sites - canonical:
-
<link rel="canonical" href="{{ .Site.BaseURL }}" />
missing: Add canonical URL #514