There are a few possible explanations:
- Are your pages tagged correctly?
If you click on your website in a search result, and look at your page source, can you see the Matomo (Piwik) tracking code? Make sure the Matomo tracking code is installed on all the pages you want to track, and is not within an iframe. We advise to put the Matomo code just before the </body> tag.
- Are you using a redirect on your website landing page?
If you are using a redirect, the visitor browser may lose the referer information. If you are tracking campaigns, and the landing page has a redirect, the URL loaded after the redirection will have lost the URL parameters. Make sure that your visitors arrive directly on the page with the Matomo tracking code installed.
- Is your website using HTTPS (SSL)?
Most websites these days are running over HTTPS. When someone is visiting another website over HTTPS and clicking on a link to your website, you want to make sure that the link to your website also references the HTTPS version of your website. (If a user on a HTTPS website clicks on a link to a HTTP page, the referrer will not be passed to the HTTP page). Therefore to make sure that all your referrers are correctly tracked in Matomo, you need to make sure that your website works on HTTPS and also that your links from other websites to your website use the HTTPS version of your website URLs.
- Matomo only records 1 referer by visit, which means that only the first referer used to access the website will be recorded.
If you search for a keyword in a search engine, click on your website in the search engine results, and land on a page with the Matomo tracker, you may expect to see the keyword in your Matomo reports.
However, if you visited your website less than 30 minutes ago, Matomo will recognize you as an known visitor on the website, will record your page view, but will not update your visit referer. Matomo only record the first referer of a visit. When testing Matomo and search engine detection, make sure you make the test more than 30 minutes after your last page view on your website.