v3.24.1.u1
REVENUE RECOGNITION (Tables)
12 Months Ended
Jan. 31, 2024
Revenue from Contract with Customer [Abstract]  
Schedule of Disaggregation of Revenue
The following table provides information about disaggregated revenue by the recurring or nonrecurring nature of revenue. Recurring revenue is the portion of our revenue that we believe is likely to be renewed in the future. The recurrence of these revenue streams in future periods depends on a number of factors including contractual periods and customers' renewal decisions:

•Recurring revenue primarily consists of initial and renewal support, subscription software licenses, and cloud-based SaaS in certain transactions.
•Nonrecurring revenue primarily consists of our perpetual licenses, appliances, custom development, installation and integration services, consulting and training, and the resale of third-party hardware.
Year Ended January 31,
(in thousands)202420232022
Revenue by recurrence:
Recurring revenue$167,634 $197,398 $230,969 
Nonrecurring revenue145,770 114,664 243,073 
Total revenue$313,404 $312,062 $474,042 
Schedule of Contract Balances
The following table provides information about accounts receivable, contract assets, and contract liabilities from contracts with customers:
January 31,
(in thousands)20242023
Accounts receivable, net$113,260 $113,201 
Contract assets, net$8,859 $17,476 
Contract liabilities$93,778 $94,882 
Long-term contract liabilities$29,362 $14,382 
Schedule of Remaining Performance Obligation
The following table provides information about our RPO:
January 31,
(in thousands)20242023
RPO:
Expected to be recognized within 1 year$302,524 $280,662 
Expected to be recognized in more than 1 year289,383 302,329 
Total RPO$591,907 $582,991