v3.26.1
Disaggregation of Revenue and Contract Balances
6 Months Ended
Jun. 30, 2026
Disaggregation of Revenue [Abstract]  
Disaggregation of Revenue and Contract Balances Disaggregation of Revenue and Contract Balances
The Company disaggregates revenues by contract type, see Revenue Recognition in Note 2 for further details. For the three and six months ended June 30, 2026, the Company derived 91.6% and 91.7% of its revenue from contracts classified as lump sum, and 8.4% and 8.3% of its revenue from time and material contracts, respectively. For the three and six months ended June 30, 2025, the Company derived 91.6% and 91.2% of its revenue from contracts classified as lump sum, and 8.4% and 8.8% of its revenue from time and material contracts, respectively.
The Company had approximately $440.2 million in remaining performance obligations as of June 30, 2026 of which it expects to recognize approximately 85.2% within the next twelve months and the remaining 14.8% in the next twelve to twenty-four months.
Disaggregated revenues by contract type were as follows (in thousands):
For the Three Months Ended June 30,For the Six Months Ended June 30,
2026202520262025
Fixed fee$133,848 91.6 %$111,837 91.6 %$249,990 91.7 %$214,442 91.2 %
Time-and-materials12,277 8.4 %10,253 8.4 %22,614 8.3 %20,579 8.8 %
Gross contract revenue$146,125 100.0 %$122,090 100.0 %$272,604 100.0 %$235,021 100.0 %
The Company recognized $1.8 million and $8.1 million of revenue for the three and six months ended June 30, 2026, which was included in the contract liabilities balance as of December 31, 2025, and $0.7 million and $4.2 million of revenue for the three and six months ended June 30, 2025, respectively, which were included in the contract liabilities balance as of December 31, 2024.