

Live view: who is online, their device, location and current page.
Selling courses, memberships or subscriptions? Session Guard shows you when one account is used by several people, and can stop it.
Everyone signed in right now: user, device and browser, IP and country, the page they’re on, and when they were last seen. Users on more than one device at the same time stand out. Sign out any device with one click.
The clearest sign of a shared account is two devices used at the same moment. Session Guard records every overlap (two devices of one account active together), and rates it:
Accounts from the level you choose are listed under Flagged accounts, with a plain explanation, for example “Two devices were active at the same time 3 times in the last 30 days, 18 min in total. The devices were on the same internet connection.” A “How to read the risk levels?” box explains each level.
Allow N devices per account, one by default. When someone signs in on another device, the oldest device is signed out immediately. An open tab gets the message within seconds, and any other device is signed out on its next click. Tabs in the same browser count as one device. Administrators (or any roles you choose) and whitelisted users are never limited.
Normal page views add no database queries. Activity comes from a small heartbeat that runs only while the tab is visible, detection runs every 5 minutes in the background, and old history is cleaned up automatically.
An optional paid add-on, sold separately by Netdesign, adds:
This plugin works fully on its own.
For every login session, Session Guard stores in your own database ({prefix}ndsg_sessions):
ndsg_did cookie, HttpOnly, valid 2 years),Flags store the user ID, the rule values and the handling status. Overlaps store the two sessions, their networks and the times. Notes store the text, its author and the date.
Ended sessions and overlaps are deleted after 90 days (configurable). Notes are kept until you delete them or the user. Deleting a user deletes their data. Uninstalling the plugin removes all of its data.
External request (off by default): only if you turn on Settings Advanced Update Cloudflare IP ranges, the plugin downloads Cloudflare’s public list of IP ranges from https://api.cloudflare.com/client/v4/ips once a day. It uses them only to recognize requests coming through Cloudflare. While the setting is off, or if the download fails, the list built into the plugin is used. No data about your site or users is sent anywhere. This service is provided by Cloudflare, Inc.: Terms of Use, Privacy Policy.
Mention this processing in your site’s privacy policy. A suggested text: “To protect accounts from unauthorized sharing, we record the devices, approximate location (IP address and country) and activity times of signed-in sessions, for up to 90 days.”