Piwik tries to guess visitors and unique visitors using several elaborate techniques (User ID, first party UUID cookie, heuristics matching user settings, etc.). If several people use the same system or browser, Piwik might count them all as one visitor.

To tell Piwik to create a new visit for the current request, you can use the &new_visit=1 parameter in the Tracking API (see Reference docs).

If you are using the Javascript tracker, you are also able to create new visits on demand. In your website in Javascript, whenever a user logs in the system (or whenever there is a need to create a new visit) you may write the following (before the trackPageView call):

_paq.push(['appendToTrackingUrl', 'new_visit=1']); // (1) forces a new visit 
_paq.push(["deleteCookies"]); // (2) deletes existing tracking cookies to start the new visit
// the two lines must be above the call to track* function
_paq.push(["trackPageView"]);

When the page loads, a new visit will be created in Piwik.

Note: this code should only be displayed once after the user has logged in; if you leave this code in all the page views, it would create a new visit for each page view and make your Piwik reports much less useful.