LicenseSpring

Perpetual Software Licensing: Sell Lifetime Access, Monetize Ongoing Updates Separately

Issue software licenses that never expire while controlling access to updates, upgrades, and support through configurable maintenance windows.

With LicenseSpring, you can separate license ownership from update eligibility, selling perpetual (or lifetime) licenses as a one-time purchase while monetizing ongoing product improvements through maintenance periods.

  • ISO 27001
  • Trusted by global software vendors
  • Developer-first APIs & SDKs

What Is a Perpetual License and How Do Vendors Use It Today?

A perpetual license (sometimes called a lifetime license) grants users the right to use a software product indefinitely. Once issued, the license doesn't expire and remains valid unless explicitly disabled by the vendor.

This is still a widely used model, particularly for products with defined major version release cycles. The customer purchases the right to use a specific version of the software, say v5, permanently. They can continue using that version forever, but accessing a new major release (v6) requires a new license or an active maintenance period that covers the upgrade.

Operating systems, desktop engineering tools, and industrial software commonly follow this model: the customer owns what they bought, and new versions are a separate commercial event.

With LicenseSpring, perpetual and lifetime licenses can still be managed, activated, disabled, or enhanced with maintenance windows to control what updates and support each license can access.

Key Characteristics

  • The license never expires — is_expired always returns false

  • The user retains indefinite access to the licensed version of the software

  • Vendors retain full control over activation, usage, and device binding

  • Maintenance periods can be layered on to gate access to updates and new versions

Common Use Cases

  • Traditional desktop software licensing

  • Enterprise engineering and CAD tools

  • Industrial or embedded software deployments

  • Products with major version release cycles

  • Hybrid models combining perpetual access with paid update eligibility

Maintenance Periods: Charge for Updates Without Taking Away What the Customer Already Owns

A maintenance period introduces a second timestamp that controls access to updates, upgrades, and support, separate from the license validity itself.

This allows vendors to:

  • Sell perpetual or lifetime licenses as a one-time purchase
  • Charge for ongoing software improvements through annual or periodic renewals
  • Keep the customer on a supported, up-to-date version if they choose to renew

Example Scenario

A customer purchases a perpetual license. The license never expires. Maintenance expires after 12 months. Result: the customer can continue using the software indefinitely on the version they have. Access to new versions, updates, and support stops when maintenance expires, unless they renew.

License Ownership and Update Eligibility Are Two Different Things— Here's Why That Matters

AttributePerpetual LicenseMaintenance Period
License validity
Never expires
Separate expiration date
Software access
Unlimited
Continues indefinitely
Updates and upgrades
Controlled by maintenance
Disabled after expiry
Typical business model
One-time purchase
Annual renewal
Perpetual licensing controls ownership. Maintenance controls upgrade eligibility. The two can be configured independently.

Run Time-Limited Trials on the Same License Model Used in Production

LicenseSpring allows perpetual licenses to also function as trial licenses. This is controlled by the isTrial flag.

How It Works:

  • If isTrial = true, the validity period defines the trial duration
  • Once the trial ends, the license can transition into a full perpetual license
Example
License TypeTrial FlagBehavior
Perpetual
False
License never expires
Perpetual
True
Trial ends at validity date
This lets vendors run time-limited evaluations on the same license model used in production, with no separate trial infrastructure needed.

Adding a Maintenance Window to a New or Existing License

Maintenance periods can be added to both new and existing licenses.

  • Navigate to the License Detail Page
  • Enable Maintenance Period
  • Choose how the maintenance window is defined

Available options:

  • Maintenance duration: starts counting from the date of activation
  • Fixed expiration date: expires on a specific calendar date regardless of when the license was activated

Duration-Based or Fixed-Date: Choose How Maintenance Is Counted

Option 1: Maintenance Duration

Maintenance begins when the license is activated. Useful when customers activate at different times and you want each to receive the same window of update access from their own start date.

Example: 12-month maintenance duration—countdown begins after first activation.

Option 2: Fixed Calendar Date

Maintenance expires on a specific day regardless of activation date.

Example: Maintenance expiry set to December 31, 2026.

ConfigurationBehavior
Maintenance duration
Starts when license activates
Fixed date
Ends on a defined calendar date

Apply Maintenance Rules Consistently Across Licenses Using Policies

Maintenance periods can be defined at the license policy level for consistent application across licenses. Because the license hasn't been issued yet at the policy stage, and the activation date is therefore unknown, only maintenance duration (not a fixed date) can be defined within policies.

How Modern Vendors Combine Perpetual Licenses With Recurring Revenue

Many software vendors today combine perpetual or lifetime licenses with recurring maintenance renewals. This structure delivers upfront license revenue alongside predictable recurring revenue from customers who want to stay current without forcing a full subscription model on customers who prefer to own what they buy.

Example Monetization Model
ComponentRevenue Type
Perpetual License
One-time purchase
Maintenance Renewal
Annual subscription
Feature Modules
Optional upgrades
Premium Feature Quotas
Consumption-based or period-based billing

A common and effective pattern is to use this structure in layers:

  • Base license + maintenance for major updates Issue the perpetual license for core product functionality. Maintenance covers eligibility for major version upgrades — so customers on an active maintenance plan receive v6 when it ships, while customers who've let maintenance lapse stay on the version they own.
  • Features for premium functionality and time-limited entitlements Layer feature-based licensing on top to control access to premium modules, add-ons, or usage allowances independently of the base license. Features can carry their own expiry dates and consumption limits — so you can, for example, grant temporary access to a premium capability, run a timed promotion, or enforce usage quotas on specific functionality without touching the underlying perpetual license.

Perpetual Licensing Is One Model. LicenseSpring Supports All of Them.

Perpetual / lifetime licensing
Subscription licensing
Usage-based / metered licensing
Offline activation
Device fingerprinting
Floating license servers

Ready to Separate License Ownership From Update Eligibility?

Design licensing models that combine:
  • perpetual ownership
  • maintenance renewals
  • subscription upgrades
  • feature entitlements