How do set up "soft-conversions" in Piwik?


Examples of soft conversions are:

  • When a visitors spend more than 3+ minutes on website
  • When a visitors scrolls 50% of the page
  • When a visitor loads more than 3 pageviews

Does anyone know how to set these up? Thanks

Why soft-conversions?
We need it in order to optimize our Google Ads effort. We recently changed from Google Analytics to Piwik, but with that change, we were unable to migrate the conversions. In other words, we need to “train” Google’s algorithm on conversions. One way is through “soft-conversion”

I can’t find any documentation about this online

We don’t have direct support for building goals in the way you described.
Though it could be achieved with a custom tag in Tag Manager. It could save the information about time and the number of page views in a cookie or local storage for the purpose of tracking conversion manually once the criteria are met. It requires some coding, unfortunately.

Scroll to a certain part of the page can be achieved with a combination of:


Thanks, Jarek.

Do you know when this will be supported?

Are there some other “soft conversions” besides the “page scroll trigger” that don’t require coding? I’m open for anything

If not, do you have a template for the coding? (that way we/marketing people can easier customize it until the features are released)


At the moment it’s not on the roadmap. I added it as a feature request to our internal system.

I’m not aware of any similar implementations done in the past so I don’t have a template to share with you.
@pslonina perhaps you have anything to share?

Our implementation team supports clients in the development of custom solutions but it’s available for paying customers.

Hi Jarek,

I see that it’s possible to create a “pageview”, “time on site” and “scroll” trigger in Piwik (see screenshot)

However, I managed to setup the “Scroll” trigger - this works. However, the pageview and the time-on-site don’t.

I created a trigger “Time on site = 2+ minutes”, but it won’t fire the Google Ads tag after 2 minutes. Why’s that?

What can I do?

I tested it out and triggers you mentioned worked fine. It might be tricky in testing as if you already had a session going and published/debugged a tag after a while (in your case after 2 minutes from starting the session), then it might not fire because the time is counted from the beginning of the session. While testing it out make sure that you start with a new session.

I’m afraid there is nothing ready to use that we could share.