Note: Available only for new signups after the 31 March, 2026 release. If you signed up earlier, refer to the existing ITAM documentation.
Software License Management (SLM) is a critical workflow for maintaining a comprehensive and accurate profile of the software deployed across your entire IT infrastructure. By centralizing software data, organizations can optimize costs, ensure license compliance, and improve security through lifecycle tracking.
This article covers the complete software license management workflow, including discovery configuration, license model definitions, and the use of automated alerts and reporting for compliance auditing.
SLM benefits and capabilities
Freshservice provides a centralized platform to manage software licenses, reducing administrative complexity while providing deep visibility into your digital assets. Freshservice automatically scans Windows and Linux instances to detect software, regardless of whether it is currently running, without requiring local agents on the target systems.
By using SLM, you can perform the following actions:
Optimize costs and usage: Identify unused or redundant licenses to reduce unnecessary expenses and optimize software utilization.
Maintain license compliance: Monitor installations against purchased counts to ensure your organization adheres to vendor policies, mitigating legal and financial risks.
Enhance infrastructure security: Maintain an up-to-date inventory of software versions to promptly identify vulnerable or end-of-life (EOL) applications.
Automate software discovery: Automatically scan and import software components from package managers (RPM, DEB) and the Windows Registry.
Track granular usage: Monitor exactly which software is installed on specific devices with "first-detected" and "last-updated" timestamps.
Apply flexible license models: Track licenses using various methods, such as per-user, per-core, or per-device, to match diverse vendor requirements.
Configure proactive alerts: Receive notifications when licenses are near expiration or when prohibited software is detected in your environment.
How it works: High-level workflow
Managing your software licenses with Freshservice follows a logical five-step process:
Configure: Set up an autodiscovery job tailored to your environment.
Discover: Run the job to find and import software components (manual imports are also supported).
Categorize: Review imported components and assign software types or group them into suites.
Establish: Configure detailed licensing information for the imported software to build your inventory.
Monitor: Set up alerts to track license status and flag specific discovered software types.
Supported features
Freshservice supports all major Linux distributions and discovers software registered across various package managers. Once software is imported, you can leverage the following management features:
Software component and suite management
Software-in-use tracking per device
Multi-model license management
End-of-life (EOL) and End-of-service (EOS) tracking
Prohibited software detection
License usage and threshold alerts
Configure software discovery
To import software components automatically, you must configure a discovery job to scan your target systems.
Set up an autodiscovery job
Go to Admin > Asset Management > Scan and discover > click the Discovery Jobs tab.
Select Hypervisors/*nix/Windows from the list of discovery jobs and click Add new.
Configure the job settings for your platform and network location.
In the Software and Applications section, select the Discover Software option.
Note: This option only appears after you select a supported platform, such as *nix or Windows, for the job.
Define software types
The Initial Software Type field determines how the system initially treats discovered software. You can select one of the following four options:
Unmanaged: (Default) Software that is present on hosts but not actively tracked. Use this to gain visibility into software installed without formal IT approval.
Managed: Software that is actively monitored for usage, versions, and license compliance. You can set up alerts and automate tasks for this software type.
Prohibited: Software that is disallowed by organizational policy. The system monitors these installations to help enforce security and compliance.
Ignored: Software intentionally excluded from management to reduce administrative overhead and filter non-essential data.
Select the appropriate type before saving and running the autodiscovery job.
View and manage discovered software
Once a discovery job completes, you can find the results under IT Asset Management > Software module.
Freshservice provides two primary ways to view your software data:
Software Models: This is your software library. It lists each unique software component once, regardless of how many devices it is installed on.
Software Installations: This is your installation record. It lists every instance of a software component assigned to a specific device. If a component is installed on ten devices, it appears ten times in this view.
Manage the software library
From the Software Models page, you can perform bulk actions or manually add components to keep your inventory accurate.
Perform bulk actions on software components
Select multiple components from the list and use the More options (three vertical dots) icon to do the following:
Change the software type: Recategorize found software (e.g., move from Unmanaged to Managed).
Update software counts: Manually adjust counts to see the immediate impact of potential licensing changes.
Assign software to suite: Group related components, such as multiple Adobe products, into a single suite for easier management.
Add software components manually
If you need to track software that cannot be discovered automatically, you can add it manually. To add a component, follow these steps:
Go to the Software Models page and click Add new in the upper-right corner.
Enter the software name.
Select the software type, workspace, and license model from the respective dropdown menus.
(Optional) Provide additional details, such as license keys or category.
Click Save.
Track software installations
The Software Installations page tracks the relationship between software and specific hardware. It includes details on when the software was first detected and when it was last updated.
Record software installations manually
To manually link a software component to a specific device, follow these steps:
Go to the Software Installations page and click Add new.
From the Software dropdown menu, select the software you want to assign.
From the Device dropdown menu, select the specific asset where the software is installed.
Enter the license count in the Raw License Count field to define how many licenses this specific installation uses.
Provide any additional relevant information, such as installation dates or version number.
Click Save.
Create a software license model
Software license models allow you to track various licensing types across your infrastructure. You can use predefined license models or create custom ones to meet your organization's specific vendor requirements.
To create a software license model, follow these steps:
Go to IT Asset Management > Software > Software License Models.
Click Add new to open the Add Software License Model page.
Enter a name for the model.
In the Track by dropdown menu, select how the system should categorize the licenses:
User: Use this method to document licenses purchased for individual employees or administrators.
Count Users by: Specify the purchase method.
License Type: Define the license as Perpetual or Subscription.
Note: This field is only for documentation purposes and does not affect how Freshservice counts the instances of software components with a license that it finds.
Device: Use this method for software licensed to specific hardware assets.
This method allows you to document exactly how licenses are counted for each device, such as Single, Volume, Volume with a multiplier, OEM, or Unlimited.
Note: This field is only for documentation purposes.Client Access: Use this method for software that requires a license for each user or device connecting to a server.
In the Count CAL by field, select whether to count by Per Seat (Device or User), Server, Processor, or Mailbox.Device CPU/Core: Use this option to configure how multiple CPUs contribute to the count for both physical and virtual systems.
Selecting this option displays the following configuration fields:CPU core factor: Enter the core factor rating required by specific manufacturers (for example, 0.5 or 1.0).
CPU Count: Define if the count is based on Total sockets or Total # of cores.
CPU count virtual: Select how software installed on virtual machines is calculated.
(Optional) Regardless of the tracking method selected, you can use the following options to further refine your license management:
Is Node Locked: Restricts the software instance to a specific, authorized device.
Is User Locked: Restricts the software instance to a specific, authorized user.
Is Free: Designates the software as free or open-source for documentation purposes.
Is Concurrent Access: Tracks licenses by the number of simultaneous users rather than total installations.
Count Major Version Separately: Treats different major versions (e.g., v11 vs. v12) as distinct pools for license counting.
Click Save.
Manage end of life (EOL) and end of service (EOS)
Tracking the lifecycle of your software is essential for security and maintenance planning. Because lifecycle dates are managed manually, you must define them for each component.
To add EOL or EOS dates, follow these steps:
Go to the IT Asset Management > Software > Software Lifecycles page and click Add new.
Select the software component from the Software dropdown menu.
Enter the specific version number in the Version field.
Enter the relevant dates (you are not required to specify both if only one applies):
End of Life Date: The date the vendor stops active development and support for the component.
End of Service Date: The date the vendor stops providing technical assistance, even if the software continues to receive updates or bug fixes.
Click Save.