Organization record
EXLSERVICE HOLDINGS, INC.
All evidence-backed facts for this organization, identity resolved across official registers.
Facts on record
Newest first; every row links to its evidence page.
| Fact | Value | Period | Source |
|---|---|---|---|
| accounts_payable | {"amount": 11260000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2026-03-31 | sec_edgar |
| accounts_payable | {"amount": 4753000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2025-12-31 | sec_edgar |
| accounts_payable | {"amount": 6767000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2025-09-30 | sec_edgar |
| accounts_payable | {"amount": 5971000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2025-06-30 | sec_edgar |
| accounts_payable | {"amount": 5648000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2025-03-31 | sec_edgar |
| accounts_payable | {"amount": 5884000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2024-12-31 | sec_edgar |
| accounts_payable | {"amount": 4082000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2024-09-30 | sec_edgar |
| accounts_payable | {"amount": 2996000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2024-06-30 | sec_edgar |
| accounts_payable | {"amount": 3093000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2024-03-31 | sec_edgar |
| accounts_payable | {"amount": 5055000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2023-12-31 | sec_edgar |
| accounts_payable | {"amount": 3159000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2023-09-30 | sec_edgar |
| accounts_payable | {"amount": 3019000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2023-06-30 | sec_edgar |
| accounts_payable | {"amount": 3384000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2023-03-31 | sec_edgar |
| accounts_payable | {"amount": 7789000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2022-12-31 | sec_edgar |
| accounts_payable | {"amount": 3487000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2022-09-30 | sec_edgar |
| accounts_payable | {"amount": 4377000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2022-06-30 | sec_edgar |
| accounts_payable | {"amount": 4796000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2022-03-31 | sec_edgar |
| accounts_payable | {"amount": 5647000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2021-12-31 | sec_edgar |
| accounts_payable | {"amount": 2881000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2021-09-30 | sec_edgar |
| accounts_payable | {"amount": 3877000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2021-06-30 | sec_edgar |
| accounts_payable | {"amount": 8304000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2021-03-31 | sec_edgar |
| accounts_payable | {"amount": 6992000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2020-12-31 | sec_edgar |
| accounts_payable | {"amount": 6213000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2020-09-30 | sec_edgar |
| accounts_payable | {"amount": 9048000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2020-06-30 | sec_edgar |
| accounts_payable | {"amount": 8048000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2020-03-31 | sec_edgar |
| accounts_payable | {"amount": 6564000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2019-12-31 | sec_edgar |
| accounts_payable | {"amount": 3658000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2019-09-30 | sec_edgar |
| accounts_payable | {"amount": 3269000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2019-06-30 | sec_edgar |
| accounts_payable | {"amount": 4560000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2019-03-31 | sec_edgar |
| accounts_payable | {"amount": 5653000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2018-12-31 | sec_edgar |
| accounts_payable | {"amount": 4310000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2018-09-30 | sec_edgar |
| accounts_payable | {"amount": 5428000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2018-06-30 | sec_edgar |
| accounts_payable | {"amount": 4114000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2018-03-31 | sec_edgar |
| accounts_payable | {"amount": 5918000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2017-12-31 | sec_edgar |
| accounts_payable | {"amount": 3834000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2017-09-30 | sec_edgar |
| accounts_payable | {"amount": 11661000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2017-06-30 | sec_edgar |
| accounts_payable | {"amount": 5286000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2017-03-31 | sec_edgar |
| accounts_payable | {"amount": 3288000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2016-12-31 | sec_edgar |
| accounts_payable | {"amount": 3395000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2016-09-30 | sec_edgar |
| accounts_payable | {"amount": 4491000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2016-06-30 | sec_edgar |
| accounts_payable | {"amount": 3146000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2016-03-31 | sec_edgar |
| accounts_payable | {"amount": 6401000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2015-12-31 | sec_edgar |
| accounts_payable | {"amount": 3637000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2015-09-30 | sec_edgar |
| accounts_payable | {"amount": 5832000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2015-06-30 | sec_edgar |
| accounts_payable | {"amount": 5510000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2015-03-31 | sec_edgar |
| accounts_payable | {"amount": 4663000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2014-12-31 | sec_edgar |
| accounts_payable | {"amount": 3343000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2014-09-30 | sec_edgar |
| accounts_payable | {"amount": 4294000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2014-06-30 | sec_edgar |
| accounts_payable | {"amount": 4420000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2014-03-31 | sec_edgar |
| accounts_payable | {"amount": 4714000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2013-12-31 | sec_edgar |
| accounts_payable | {"amount": 2197000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2013-09-30 | sec_edgar |
| accounts_payable | {"amount": 2174000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2013-06-30 | sec_edgar |
| accounts_payable | {"amount": 3322000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2013-03-31 | sec_edgar |
| accounts_payable | {"amount": 3604000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2012-12-31 | sec_edgar |
| accounts_payable | {"amount": 2712000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2012-09-30 | sec_edgar |
| accounts_payable | {"amount": 2429000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2012-06-30 | sec_edgar |
| accounts_payable | {"amount": 3674000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2012-03-31 | sec_edgar |
| accounts_payable | {"amount": 4333000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2011-12-31 | sec_edgar |
| accounts_payable | {"amount": 5923000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2011-09-30 | sec_edgar |
| accounts_payable | {"amount": 6745000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2011-06-30 | sec_edgar |
| accounts_payable | {"amount": 4860000, "concept": "us-gaap:AccountsPayableCurrent", "currency": "USD"} | 2010-12-31 | sec_edgar |
| accounts_receivable | {"amount": 388563000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2026-03-31 | sec_edgar |
| accounts_receivable | {"amount": 343105000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2025-12-31 | sec_edgar |
| accounts_receivable | {"amount": 351426000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2025-09-30 | sec_edgar |
| accounts_receivable | {"amount": 345470000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2025-06-30 | sec_edgar |
| accounts_receivable | {"amount": 339856000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2025-03-31 | sec_edgar |
| accounts_receivable | {"amount": 304322000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2024-12-31 | sec_edgar |
| accounts_receivable | {"amount": 340904000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2024-09-30 | sec_edgar |
| accounts_receivable | {"amount": 327613000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2024-06-30 | sec_edgar |
| accounts_receivable | {"amount": 335523000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2024-03-31 | sec_edgar |
| accounts_receivable | {"amount": 308108000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2023-12-31 | sec_edgar |
| accounts_receivable | {"amount": 303378000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2023-09-30 | sec_edgar |
| accounts_receivable | {"amount": 288305000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2023-06-30 | sec_edgar |
| accounts_receivable | {"amount": 290512000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2023-03-31 | sec_edgar |
| accounts_receivable | {"amount": 259222000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2022-12-31 | sec_edgar |
| accounts_receivable | {"amount": 256911000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2022-09-30 | sec_edgar |
| accounts_receivable | {"amount": 237453000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2022-06-30 | sec_edgar |
| accounts_receivable | {"amount": 239279000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2022-03-31 | sec_edgar |
| accounts_receivable | {"amount": 194232000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2021-12-31 | sec_edgar |
| accounts_receivable | {"amount": 192170000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2021-09-30 | sec_edgar |
| accounts_receivable | {"amount": 182111000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2021-06-30 | sec_edgar |
| accounts_receivable | {"amount": 159296000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2021-03-31 | sec_edgar |
| accounts_receivable | {"amount": 147635000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2021-01-01 | sec_edgar |
| accounts_receivable | {"amount": 147635000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2020-12-31 | sec_edgar |
| accounts_receivable | {"amount": 154983000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2020-09-30 | sec_edgar |
| accounts_receivable | {"amount": 157505000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2020-06-30 | sec_edgar |
| accounts_receivable | {"amount": 187137000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2020-03-31 | sec_edgar |
| accounts_receivable | {"amount": 171864000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2020-01-01 | sec_edgar |
| accounts_receivable | {"amount": 171864000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2019-12-31 | sec_edgar |
| accounts_receivable | {"amount": 179702000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2019-09-30 | sec_edgar |
| accounts_receivable | {"amount": 180680000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2019-06-30 | sec_edgar |
| accounts_receivable | {"amount": 176889000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2019-03-31 | sec_edgar |
| accounts_receivable | {"amount": 164752000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2018-12-31 | sec_edgar |
| accounts_receivable | {"amount": 164307000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2018-09-30 | sec_edgar |
| accounts_receivable | {"amount": 147099000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2018-06-30 | sec_edgar |
| accounts_receivable | {"amount": 137150000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2018-03-31 | sec_edgar |
| accounts_receivable | {"amount": 135705000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2017-12-31 | sec_edgar |
| accounts_receivable | {"amount": 133862000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2017-09-30 | sec_edgar |
| accounts_receivable | {"amount": 123798000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2017-06-30 | sec_edgar |
| accounts_receivable | {"amount": 119811000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2017-03-31 | sec_edgar |
| accounts_receivable | {"amount": 113067000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2016-12-31 | sec_edgar |
| accounts_receivable | {"amount": 109086000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2016-09-30 | sec_edgar |
| accounts_receivable | {"amount": 111383000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2016-06-30 | sec_edgar |
| accounts_receivable | {"amount": 107601000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD" | 2016-03-31 | sec_edgar |
| accounts_receivable | {"amount": 92650000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2015-12-31 | sec_edgar |
| accounts_receivable | {"amount": 98272000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2015-09-30 | sec_edgar |
| accounts_receivable | {"amount": 94216000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2015-06-30 | sec_edgar |
| accounts_receivable | {"amount": 89323000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2015-03-31 | sec_edgar |
| accounts_receivable | {"amount": 80244000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2014-12-31 | sec_edgar |
| accounts_receivable | {"amount": 75685000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2014-09-30 | sec_edgar |
| accounts_receivable | {"amount": 73721000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2014-06-30 | sec_edgar |
| accounts_receivable | {"amount": 77737000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2014-03-31 | sec_edgar |
| accounts_receivable | {"amount": 76121000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2013-12-31 | sec_edgar |
| accounts_receivable | {"amount": 74054000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2013-09-30 | sec_edgar |
| accounts_receivable | {"amount": 76214000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2013-06-30 | sec_edgar |
| accounts_receivable | {"amount": 76612000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2013-03-31 | sec_edgar |
| accounts_receivable | {"amount": 72443000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2012-12-31 | sec_edgar |
| accounts_receivable | {"amount": 65649000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2012-09-30 | sec_edgar |
| accounts_receivable | {"amount": 61673000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2012-06-30 | sec_edgar |
| accounts_receivable | {"amount": 58837000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2012-03-31 | sec_edgar |
| accounts_receivable | {"amount": 55672000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2011-12-31 | sec_edgar |
| accounts_receivable | {"amount": 58235000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2011-09-30 | sec_edgar |
| accounts_receivable | {"amount": 55382000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2011-06-30 | sec_edgar |
| accounts_receivable | {"amount": 44186000, "concept": "us-gaap:AccountsReceivableNetCurrent", "currency": "USD"} | 2010-12-31 | sec_edgar |
| capex | {"amount": 12933000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2026-03-31 | sec_edgar |
| capex | {"amount": 52598000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2025-12-31 | sec_edgar |
| capex | {"amount": 41727000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2025-09-30 | sec_edgar |
| capex | {"amount": 27366000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2025-06-30 | sec_edgar |
| capex | {"amount": 12940000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2025-03-31 | sec_edgar |
| capex | {"amount": 46262000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2024-12-31 | sec_edgar |
| capex | {"amount": 36188000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2024-09-30 | sec_edgar |
| capex | {"amount": 23329000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2024-06-30 | sec_edgar |
| capex | {"amount": 11266000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2024-03-31 | sec_edgar |
| capex | {"amount": 52803000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2023-12-31 | sec_edgar |
| capex | {"amount": 41106000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2023-09-30 | sec_edgar |
| capex | {"amount": 26113000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2023-06-30 | sec_edgar |
| capex | {"amount": 12479000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2023-03-31 | sec_edgar |
| capex | {"amount": 44836000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2022-12-31 | sec_edgar |
| capex | {"amount": 32099000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2022-09-30 | sec_edgar |
| capex | {"amount": 25054000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2022-06-30 | sec_edgar |
| capex | {"amount": 16101000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2022-03-31 | sec_edgar |
| capex | {"amount": 37248000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2021-12-31 | sec_edgar |
| capex | {"amount": 29026000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2021-09-30 | sec_edgar |
| capex | {"amount": 19903000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2021-06-30 | sec_edgar |
| capex | {"amount": 12680000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2021-03-31 | sec_edgar |
| capex | {"amount": 42224000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2020-12-31 | sec_edgar |
| capex | {"amount": 34614000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2020-09-30 | sec_edgar |
| capex | {"amount": 22351000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2020-06-30 | sec_edgar |
| capex | {"amount": 12347000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2020-03-31 | sec_edgar |
| capex | {"amount": 40545000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2019-12-31 | sec_edgar |
| capex | {"amount": 32462000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2019-09-30 | sec_edgar |
| capex | {"amount": 22287000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2019-06-30 | sec_edgar |
| capex | {"amount": 10878000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2019-03-31 | sec_edgar |
| capex | {"amount": 40789000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2018-12-31 | sec_edgar |
| capex | {"amount": 30070000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2018-09-30 | sec_edgar |
| capex | {"amount": 19296000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2018-06-30 | sec_edgar |
| capex | {"amount": 12680000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2018-03-31 | sec_edgar |
| capex | {"amount": 35154000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2017-12-31 | sec_edgar |
| capex | {"amount": 26759000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2017-09-30 | sec_edgar |
| capex | {"amount": 20447000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2017-06-30 | sec_edgar |
| capex | {"amount": 10114000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2017-03-31 | sec_edgar |
| capex | {"amount": 25850000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2016-12-31 | sec_edgar |
| capex | {"amount": 20335000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2016-09-30 | sec_edgar |
| capex | {"amount": 14872000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2016-06-30 | sec_edgar |
| capex | {"amount": 8457000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curr | 2016-03-31 | sec_edgar |
| capex | {"amount": 25585000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2015-12-31 | sec_edgar |
| capex | {"amount": 21127000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2015-09-30 | sec_edgar |
| capex | {"amount": 14380000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2015-06-30 | sec_edgar |
| capex | {"amount": 8845000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curr | 2015-03-31 | sec_edgar |
| capex | {"amount": 27678000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2014-12-31 | sec_edgar |
| capex | {"amount": 23762000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2014-09-30 | sec_edgar |
| capex | {"amount": 16637000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2014-06-30 | sec_edgar |
| capex | {"amount": 10679000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2014-03-31 | sec_edgar |
| capex | {"amount": 15916000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2013-12-31 | sec_edgar |
| capex | {"amount": 11735000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2013-09-30 | sec_edgar |
| capex | {"amount": 10281000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2013-06-30 | sec_edgar |
| capex | {"amount": 6610000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curr | 2013-03-31 | sec_edgar |
| capex | {"amount": 18804000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2012-12-31 | sec_edgar |
| capex | {"amount": 17008000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2012-09-30 | sec_edgar |
| capex | {"amount": 13199000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2012-06-30 | sec_edgar |
| capex | {"amount": 9299000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curr | 2012-03-31 | sec_edgar |
| capex | {"amount": 19468000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2011-12-31 | sec_edgar |
| capex | {"amount": 12375000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2011-09-30 | sec_edgar |
| capex | {"amount": 8604000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curr | 2011-06-30 | sec_edgar |
| capex | {"amount": 7158000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curr | 2011-03-31 | sec_edgar |
| capex | {"amount": 19860000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2010-12-31 | sec_edgar |
| capex | {"amount": 14830000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2010-09-30 | sec_edgar |
| capex | {"amount": 9991000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "curr | 2010-06-30 | sec_edgar |
| capex | {"amount": 11416000, "concept": "us-gaap:PaymentsToAcquirePropertyPlantAndEquipment", "cur | 2009-12-31 | sec_edgar |
| cash_and_equivalents | {"amount": 145405000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currenc | 2026-03-31 | sec_edgar |
| cash_and_equivalents | {"amount": 146326000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currenc | 2025-12-31 | sec_edgar |
| cash_and_equivalents | {"amount": 160309000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currenc | 2025-09-30 | sec_edgar |
| cash_and_equivalents | {"amount": 149134000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currenc | 2025-06-30 | sec_edgar |
| cash_and_equivalents | {"amount": 140442000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currenc | 2025-03-31 | sec_edgar |
| cash_and_equivalents | {"amount": 153355000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currenc | 2024-12-31 | sec_edgar |
| cash_and_equivalents | {"amount": 150102000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currenc | 2024-09-30 | sec_edgar |
| cash_and_equivalents | {"amount": 115303000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currenc | 2024-06-30 | sec_edgar |
| cash_and_equivalents | {"amount": 108565000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currenc | 2024-03-31 | sec_edgar |
| cash_and_equivalents | {"amount": 136953000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currenc | 2023-12-31 | sec_edgar |
| cash_and_equivalents | {"amount": 122655000, "concept": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "currenc | 2023-09-30 | sec_edgar |