Custom variables let you send an additional information to Piwik PRO Analytics. That will allow you to do advanced and customized reports. You can create a custom name-value pair assigned to any visitor or event.
A custom variable can be attributed to a visit or a page view action.
A visit level variable applies to every website load during a visit. It can be used to track demographic information (gender), time of day (morning, evening), types of users (regular visitor vs customer, logged in vs not logged in user, content scroller vs content reader).
A page view level variable applies to a single page view, during which it is tracked. It can be used, for example, to analyze which sections (and subsections) of a text are the most popular, or what a user was doing on the website just before making a purchase.
To get more details on custom variables in Piwik PRO, check out our blog:
3 powerful use cases of custom dimensions and custom variables