Custom variables let you send 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), and 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