As more orgs rollout lightning to their users, admins have been looking for a method to track adoption. Up until now, the best way to track this information is using a package from Salesforce Labs: https://appexchange.salesforce.com/appxListingDetail?listingId=a0N3A00000EFmsRUAT
It provides only a few metrics as seen below that center on who is using Lightning, but its based on a preferred UI metric vs the actual work being done each interface.
In working in the Answer Community over the weekend, in answering a question, I found a more detailed way to track Lightning usage using the $User.ThemeUI global constant. This process takes a little bit of setup, but its quick and will allow admins to track all targeted edits in their org to see who is using Classic or Lightning the most.
Step 1: Create Tracking Object
Create an object, I called mine Change Log. Text name, allow reporting.
Add the following fields:
User(Lookup)
Object (text)
User Interface (text) =
Classic (formula – checkbox) = IF(User_Interface__c=’Theme3′, True, False)
Lightning (Formula – checkbox) = IF(User_Interface__c=’Theme4d‘, True, False)
Step 2: Create Process Builders
Create a Process Builder for each object you want to track. I would suggest picking 4 or 5 for the key objects that your Lightning users should be interacting with. Also, note that you will want to deactivate these processes when doing mass data uploads, using a tool like the Org Switch would be easiest: https://sfswitch.herokuapp.com/
For your Process Builders, select the object you want to track, set to evaluate when created or edited, and no criteria needed, just fire the Process Builder.
Set your create record like below – define your record name as Record.ID &’ – ‘&Text(Now()) or some other format you prefer. Define the object, set the user to LastModifiedBy ID, and define the User Interface using the $User.UITheme global variable.
*You may want to include criteria like ‘User.Profile not equal to System Administrator’ so only non-admin users are tracked.
Whenever a change is made on that object, a change log will be created, capturing the targeted information.
You can now track the % of usage by object or user.