v3.26.1
Revenue, Concentrations and Geographic Information (Tables)
6 Months Ended
Jun. 30, 2026
Revenue, Concentrations and Geographic Information  
Schedule of disaggregation of revenue by revenue type

The following table presents revenue by major types of revenue for the three and six months ended June 30, 2026 and 2025 (in thousands):

Three Months Ended

Six Months Ended

June 30, 

June 30, 

  ​ ​ ​

2026

  ​ ​ ​

2025

  ​ ​ ​

2026

  ​ ​ ​

2025

  ​ ​ ​

BioLogistics Solutions

$

22,359

$

19,874

$

44,027

$

38,404

BioStorage/BioServices

 

5,610

 

4,495

 

10,840

 

8,830

Life Sciences Services

27,969

24,369

54,867

47,234

Life Sciences Products

21,002

21,085

41,902

39,260

Total revenue

$

48,971

$

45,454

$

96,769

$

86,494

Schedule of geographical revenues, by origin Our geographical revenue, by origin, for the three and six months ended June 30, 2026 and 2025, was as follows (in thousands):

Three Months Ended

Six Months Ended

June 30, 

June 30, 

  ​ ​ ​

2026

  ​ ​ ​

2025

  ​ ​ ​

2026

  ​ ​ ​

2025

  ​ ​ ​

Americas

$

36,891

$

33,237

$

71,849

$

65,432

Europe, the Middle East, and Africa (EMEA)

 

8,032

 

5,833

 

16,983

 

11,413

Asia-Pacific (APAC)

 

4,048

 

6,384

 

7,937

 

9,649

Total revenue

$

48,971

$

45,454

$

96,769

$

86,494

Schedule of roll-forward of the allowance for credit losses The following table provides a roll-forward of the allowance for credit losses that is deducted from the amortized cost basis of accounts receivable to present the net amount expected to be collected at June 30, 2026 and December 31, 2025 (in thousands):

June 30, 

December 31, 

  ​ ​ ​

2026

  ​ ​ ​

2025

Balance of allowance for credit losses, beginning of period

$

1,141

$

878

Change in expected credit losses

(21)

263

Write-offs, net of recoveries

 

 

Balance of allowance for credit losses, end of period

$

1,120

$

1,141