2020 Q4 Form 10-Q Financial Statement

#000110465920121637 Filed on November 05, 2020

View on sec.gov

Income Statement

Concept 2020 Q4 2020 Q3 2019 Q3
Revenue $143.9M $142.3M $136.9M
YoY Change 2.57% 3.91% 5.23%
Cost Of Revenue $54.80M $54.52M $55.25M
YoY Change -2.13% -1.33% 1.17%
Gross Profit $89.10M $87.78M $81.69M
YoY Change 5.69% 7.46% 8.16%
Gross Profit Margin 61.92% 61.69% 59.65%
Selling, General & Admin $39.20M $39.72M $35.97M
YoY Change 7.4% 10.43% 7.67%
% of Gross Profit 44.0% 45.25% 44.03%
Research & Development
YoY Change
% of Gross Profit
Depreciation & Amortization $22.50M $21.60M $20.00M
YoY Change 12.5% 8.0% -1.48%
% of Gross Profit 25.25% 24.61% 24.48%
Operating Expenses $61.70M $39.72M $35.97M
YoY Change 9.01% 10.43% 7.67%
Operating Profit $27.40M $26.04M $25.80M
YoY Change -2.26% 0.92% 15.92%
Interest Expense -$34.60M $15.76M $15.19M
YoY Change 100.0% 3.75% 18.99%
% of Operating Profit -126.28% 60.53% 58.88%
Other Income/Expense, Net
YoY Change
Pretax Income -$7.300M -$6.555M $18.96M
YoY Change -167.59% -134.58% 65.91%
Income Tax -$700.0K -$1.600M $5.254M
% Of Pretax Income 27.72%
Net Earnings -$6.600M -$5.000M $13.70M
YoY Change -188.0% -136.5% 67.07%
Net Earnings / Revenue -4.59% -3.51% 10.0%
Basic Earnings Per Share -$0.11 $0.30
Diluted Earnings Per Share -$142.5K -$0.11 $0.30
COMMON SHARES
Basic Shares Outstanding 47.25M 45.82M 45.44M
Diluted Shares Outstanding 45.82M 46.02M

Balance Sheet

Concept 2020 Q4 2020 Q3 2019 Q3
SHORT-TERM ASSETS
Cash & Short-Term Investments $371.3M $393.3M $396.3M
YoY Change -7.04% -0.76% 39.25%
Cash & Equivalents $371.3M $393.3M $396.3M
Short-Term Investments
Other Short-Term Assets $40.90M $40.00M $36.80M
YoY Change 14.25% 8.7% 11.52%
Inventory
Prepaid Expenses
Receivables $44.19M $42.05M $41.29M
Other Receivables $0.00 $0.00 $0.00
Total Short-Term Assets $456.3M $475.4M $474.4M
YoY Change -4.08% 0.21% 32.32%
LONG-TERM ASSETS
Property, Plant & Equipment $430.3M $511.7M $370.8M
YoY Change 16.64% 37.99% -2.67%
Goodwill
YoY Change
Intangibles
YoY Change
Long-Term Investments
YoY Change
Other Assets $14.10M $13.90M $14.60M
YoY Change 0.71% -4.79% -17.98%
Total Long-Term Assets $544.1M $525.6M $458.0M
YoY Change 19.23% 14.76% 14.84%
TOTAL ASSETS
Total Short-Term Assets $456.3M $475.4M $474.4M
Total Long-Term Assets $544.1M $525.6M $458.0M
Total Assets $1.000B $1.001B $932.3M
YoY Change 7.33% 7.35% 23.11%
SHORT-TERM LIABILITIES
YoY Change
Accounts Payable $9.775M $11.98M $9.849M
YoY Change -11.74% 21.67% 18.66%
Accrued Expenses $51.03M $47.71M $49.12M
YoY Change -0.53% -2.85% 5.17%
Deferred Revenue
YoY Change
Short-Term Debt $0.00 $0.00 $0.00
YoY Change
Long-Term Debt Due $22.50M $23.50M $17.00M
YoY Change 30.81% 38.24% -1.73%
Total Short-Term Liabilities $94.44M $95.25M $86.23M
YoY Change 5.29% 10.46% 19.26%
LONG-TERM LIABILITIES
Long-Term Debt $1.073B $1.048B $938.3M
YoY Change 13.66% 11.7% 19.65%
Other Long-Term Liabilities $14.79M $16.80M $13.01M
YoY Change -3.49% 29.09% -51.26%
Total Long-Term Liabilities $14.79M $16.80M $13.01M
YoY Change -3.49% 29.09% -98.4%
TOTAL LIABILITIES
Total Short-Term Liabilities $94.44M $95.25M $86.23M
Total Long-Term Liabilities $14.79M $16.80M $13.01M
Total Liabilities $1.294B $1.262B $1.123B
YoY Change 13.9% 12.36% 27.13%
SHAREHOLDERS EQUITY
Retained Earnings -$807.8M -$766.7M -$662.3M
YoY Change 18.0% 15.77%
Common Stock $515.9M $513.5M $487.4M
YoY Change 4.6% 5.35%
Preferred Stock
YoY Change
Treasury Stock (at cost)
YoY Change
Treasury Stock Shares
Shareholders Equity -$293.2M -$260.7M -$190.5M
YoY Change
Total Liabilities & Shareholders Equity $1.000B $1.001B $932.3M
YoY Change 7.33% 7.35% 23.11%

Cashflow Statement

Concept 2020 Q4 2020 Q3 2019 Q3
OPERATING ACTIVITIES
Net Income -$6.600M -$5.000M $13.70M
YoY Change -188.0% -136.5% 67.07%
Depreciation, Depletion And Amortization $22.50M $21.60M $20.00M
YoY Change 12.5% 8.0% -1.48%
Cash From Operating Activities $37.60M $32.90M $33.40M
YoY Change -18.44% -1.5% 5.36%
INVESTING ACTIVITIES
Capital Expenditures -$15.90M -$13.30M -$12.10M
YoY Change 60.61% 9.92% 0.0%
Acquisitions
YoY Change
Other Investing Activities
YoY Change
Cash From Investing Activities -$15.90M -$13.30M -$12.10M
YoY Change 60.61% 9.92% 0.0%
FINANCING ACTIVITIES
Cash Dividend Paid $33.50M $28.10M
YoY Change 15.12%
Common Stock Issuance & Retirement, Net
YoY Change
Debt Paid & Issued, Net
YoY Change
Cash From Financing Activities -45.80M -44.90M -32.90M
YoY Change 34.31% 36.47% -180.44%
NET CHANGE
Cash From Operating Activities 37.60M 32.90M 33.40M
Cash From Investing Activities -15.90M -13.30M -12.10M
Cash From Financing Activities -45.80M -44.90M -32.90M
Net Change In Cash -24.10M -25.30M -11.60M
YoY Change -1247.62% 118.1% -119.17%
FREE CASH FLOW
Cash From Operating Activities $37.60M $32.90M $33.40M
Capital Expenditures -$15.90M -$13.30M -$12.10M
Free Cash Flow $53.50M $46.20M $45.50M
YoY Change -4.46% 1.54% 3.88%

Facts In Submission

Frame Concept Type Concept / XBRL Key Value Unit
CY2020Q3 us-gaap Commitments And Contingencies
CommitmentsAndContingencies
CY2019Q4 us-gaap Commitments And Contingencies
CommitmentsAndContingencies
dei Entity Central Index Key
EntityCentralIndexKey
0001158324
dei Current Fiscal Year End Date
CurrentFiscalYearEndDate
--12-31
dei Document Fiscal Year Focus
DocumentFiscalYearFocus
2020
dei Document Fiscal Period Focus
DocumentFiscalPeriodFocus
Q3
dei Entity Address Country
EntityAddressCountry
US
CY2020Q3 us-gaap Common Stock Shares Outstanding
CommonStockSharesOutstanding
47284336
CY2019Q4 us-gaap Common Stock Shares Issued
CommonStockSharesIssued
46840434
dei Amendment Flag
AmendmentFlag
false
dei Document Type
DocumentType
10-Q
dei Document Quarterly Report
DocumentQuarterlyReport
true
dei Document Period End Date
DocumentPeriodEndDate
2020-09-30
dei Document Transition Report
DocumentTransitionReport
false
dei Entity File Number
EntityFileNumber
000-51829
dei Entity Registrant Name
EntityRegistrantName
COGENT COMMUNICATIONS HOLDINGS, INC.
dei Entity Incorporation State Country Code
EntityIncorporationStateCountryCode
DE
dei Entity Tax Identification Number
EntityTaxIdentificationNumber
46-5706863
dei Entity Address Address Line1
EntityAddressAddressLine1
2450 N Street N.W.
dei Entity Address City Or Town
EntityAddressCityOrTown
Washington, D.C
dei Entity Address Postal Zip Code
EntityAddressPostalZipCode
20037
dei City Area Code
CityAreaCode
202
dei Local Phone Number
LocalPhoneNumber
295-4200
dei Security12b Title
Security12bTitle
Common Stock
dei Trading Symbol
TradingSymbol
CCOI
dei Security Exchange Name
SecurityExchangeName
NASDAQ
dei Entity Current Reporting Status
EntityCurrentReportingStatus
Yes
dei Entity Interactive Data Current
EntityInteractiveDataCurrent
Yes
dei Entity Filer Category
EntityFilerCategory
Large Accelerated Filer
dei Entity Small Business
EntitySmallBusiness
false
dei Entity Emerging Growth Company
EntityEmergingGrowthCompany
false
dei Entity Shell Company
EntityShellCompany
false
CY2020Q4 dei Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
47251320
CY2020Q3 us-gaap Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
393293000
CY2019Q4 us-gaap Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
399422000
CY2020Q3 us-gaap Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
2204000
CY2019Q4 us-gaap Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
1771000
CY2020Q3 us-gaap Accounts Receivable Net Current
AccountsReceivableNetCurrent
42053000
CY2019Q4 us-gaap Accounts Receivable Net Current
AccountsReceivableNetCurrent
40484000
CY2020Q3 us-gaap Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
40007000
CY2019Q4 us-gaap Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
35822000
CY2020Q3 us-gaap Assets Current
AssetsCurrent
475353000
CY2019Q4 us-gaap Assets Current
AssetsCurrent
475728000
CY2020Q3 us-gaap Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
421251000
CY2019Q4 us-gaap Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
368929000
CY2020Q3 ccoi Lease Right Of Use Asset
LeaseRightOfUseAsset
90400000
CY2019Q4 ccoi Lease Right Of Use Asset
LeaseRightOfUseAsset
73460000
CY2020Q3 us-gaap Deposits Assets Noncurrent
DepositsAssetsNoncurrent
13910000
CY2019Q4 us-gaap Deposits Assets Noncurrent
DepositsAssetsNoncurrent
14007000
CY2020Q3 us-gaap Assets
Assets
1000914000
CY2019Q4 us-gaap Assets
Assets
932124000
CY2020Q3 us-gaap Accounts Payable Current
AccountsPayableCurrent
11983000
CY2019Q4 us-gaap Accounts Payable Current
AccountsPayableCurrent
11075000
CY2020Q3 us-gaap Accrued Liabilities Current
AccruedLiabilitiesCurrent
47714000
CY2019Q4 us-gaap Accrued Liabilities Current
AccruedLiabilitiesCurrent
51301000
CY2020Q3 us-gaap Debt Instrument Unamortized Discount
DebtInstrumentUnamortizedDiscount
245000
CY2019Q4 us-gaap Debt Instrument Unamortized Discount
DebtInstrumentUnamortizedDiscount
350000
CY2020Q3 us-gaap Unrecorded Unconditional Purchase Obligation Balance Sheet Amount
UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount
8292000
CY2019Q4 us-gaap Unrecorded Unconditional Purchase Obligation Balance Sheet Amount
UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount
9063000
CY2020Q3 us-gaap Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
12006000
CY2019Q4 us-gaap Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
10101000
CY2020Q3 us-gaap Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
15252000
CY2019Q4 us-gaap Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
8154000
CY2020Q3 us-gaap Liabilities Current
LiabilitiesCurrent
95247000
CY2019Q4 us-gaap Liabilities Current
LiabilitiesCurrent
89694000
CY2020Q3 us-gaap Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
101447000
CY2019Q4 us-gaap Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
86690000
CY2020Q3 us-gaap Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
197688000
CY2019Q4 us-gaap Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
161635000
CY2020Q3 us-gaap Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
16800000
CY2019Q4 us-gaap Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
15327000
CY2020Q3 us-gaap Liabilities
Liabilities
1261605000
CY2019Q4 us-gaap Liabilities
Liabilities
1135803000
CY2020Q3 us-gaap Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
0.001
CY2019Q4 us-gaap Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
0.001
CY2020Q3 us-gaap Common Stock Shares Authorized
CommonStockSharesAuthorized
75000000
CY2019Q4 us-gaap Common Stock Shares Authorized
CommonStockSharesAuthorized
75000000
CY2020Q3 us-gaap Common Stock Shares Issued
CommonStockSharesIssued
47284336
CY2019Q4 us-gaap Common Stock Shares Outstanding
CommonStockSharesOutstanding
46840434
CY2020Q3 us-gaap Common Stock Value
CommonStockValue
47000
CY2019Q4 us-gaap Common Stock Value
CommonStockValue
47000
CY2020Q3 us-gaap Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
513454000
CY2019Q4 us-gaap Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
493178000
CY2020Q3 us-gaap Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
-7498000
CY2019Q4 us-gaap Accumulated Other Comprehensive Income Loss Foreign Currency Translation Adjustment Net Of Tax
AccumulatedOtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentNetOfTax
-12326000
CY2020Q3 us-gaap Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
-766694000
CY2019Q4 us-gaap Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
-684578000
CY2020Q3 us-gaap Stockholders Equity
StockholdersEquity
-260691000
CY2019Q4 us-gaap Stockholders Equity
StockholdersEquity
-203679000
CY2020Q3 us-gaap Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
1000914000
CY2019Q4 us-gaap Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
932124000
CY2020Q3 us-gaap Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
142302000
CY2019Q3 us-gaap Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
136942000
CY2020Q3 us-gaap Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
54519000
CY2019Q3 us-gaap Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
55253000
CY2020Q3 us-gaap Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
39722000
CY2019Q3 us-gaap Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
35971000
CY2020Q3 us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
21619000
CY2019Q3 us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
20006000
CY2020Q3 us-gaap Costs And Expenses
CostsAndExpenses
115860000
CY2019Q3 us-gaap Costs And Expenses
CostsAndExpenses
111230000
CY2020Q3 ccoi Loss On Amendment Of Finance Leases
LossOnAmendmentOfFinanceLeases
505000
CY2020Q3 us-gaap Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
99000
CY2019Q3 us-gaap Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
87000
CY2020Q3 us-gaap Operating Income Loss
OperatingIncomeLoss
26036000
CY2019Q3 us-gaap Operating Income Loss
OperatingIncomeLoss
25799000
CY2020Q3 us-gaap Interest Expense
InterestExpense
15760000
CY2019Q3 us-gaap Interest Expense
InterestExpense
15191000
CY2020Q3 ccoi Foreign Currency Transaction Gain Loss Unrealized On2024 Euro Notes
ForeignCurrencyTransactionGainLossUnrealizedOn2024EuroNotes
-17315000
CY2019Q3 ccoi Foreign Currency Transaction Gain Loss Unrealized On2024 Euro Notes
ForeignCurrencyTransactionGainLossUnrealizedOn2024EuroNotes
6162000
CY2020Q3 us-gaap Interest And Other Income
InterestAndOtherIncome
484000
CY2019Q3 us-gaap Interest And Other Income
InterestAndOtherIncome
2185000
CY2020Q3 us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
-6555000
CY2019Q3 us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
18955000
CY2020Q3 us-gaap Income Tax Expense Benefit
IncomeTaxExpenseBenefit
-1600000
CY2019Q3 us-gaap Income Tax Expense Benefit
IncomeTaxExpenseBenefit
5254000
CY2020Q3 us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
-4955000
CY2019Q3 us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
13701000
CY2020Q3 us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
-4955000
CY2019Q3 us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
13701000
CY2020Q3 us-gaap Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
5408000
CY2019Q3 us-gaap Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
-4709000
CY2020Q3 us-gaap Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
453000
CY2019Q3 us-gaap Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
8992000
CY2020Q3 us-gaap Earnings Per Share Basic
EarningsPerShareBasic
-0.11
CY2019Q3 us-gaap Earnings Per Share Basic
EarningsPerShareBasic
0.30
CY2020Q3 us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
-0.11
CY2019Q3 us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
0.30
CY2020Q3 us-gaap Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
0.705
CY2019Q3 us-gaap Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
0.620
CY2020Q3 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
45815718
CY2019Q3 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
45438656
CY2020Q3 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
45815718
CY2019Q3 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
46019691
us-gaap Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
424205000
us-gaap Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
405866000
us-gaap Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
164326000
us-gaap Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
163811000
us-gaap Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
119232000
us-gaap Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
110396000
us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
61022000
us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
60246000
us-gaap Costs And Expenses
CostsAndExpenses
344580000
us-gaap Costs And Expenses
CostsAndExpenses
334453000
ccoi Loss On Amendment Of Finance Leases
LossOnAmendmentOfFinanceLeases
423000
us-gaap Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
343000
us-gaap Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
808000
us-gaap Operating Income Loss
OperatingIncomeLoss
79545000
us-gaap Operating Income Loss
OperatingIncomeLoss
72221000
us-gaap Interest Expense
InterestExpense
46481000
us-gaap Interest Expense
InterestExpense
42243000
us-gaap Foreign Currency Transaction Gain Loss Realized
ForeignCurrencyTransactionGainLossRealized
2547000
ccoi Foreign Currency Transaction Gain Loss Unrealized On2024 Euro Notes
ForeignCurrencyTransactionGainLossUnrealizedOn2024EuroNotes
-17827000
ccoi Foreign Currency Transaction Gain Loss Unrealized On2024 Euro Notes
ForeignCurrencyTransactionGainLossUnrealizedOn2024EuroNotes
6339000
us-gaap Interest And Other Income
InterestAndOtherIncome
430000
us-gaap Interest And Other Income
InterestAndOtherIncome
5588000
us-gaap Gains Losses On Extinguishment Of Debt
GainsLossesOnExtinguishmentOfDebt
-638000
us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
17576000
us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
41905000
us-gaap Income Tax Expense Benefit
IncomeTaxExpenseBenefit
4740000
us-gaap Income Tax Expense Benefit
IncomeTaxExpenseBenefit
11851000
us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
12836000
us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
30054000
us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
12836000
us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
30054000
us-gaap Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
4828000
us-gaap Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
-4748000
us-gaap Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
17664000
us-gaap Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
25306000
us-gaap Earnings Per Share Basic
EarningsPerShareBasic
0.28
us-gaap Earnings Per Share Basic
EarningsPerShareBasic
0.66
us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
0.28
us-gaap Earnings Per Share Diluted
EarningsPerShareDiluted
0.65
us-gaap Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
2.045
us-gaap Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
1.800
us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
45818677
us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
45428305
us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
46598870
us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
45948331
us-gaap Profit Loss
ProfitLoss
12836000
us-gaap Profit Loss
ProfitLoss
30054000
us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
61022000
us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
60246000
us-gaap Amortization Of Debt Discount Premium
AmortizationOfDebtDiscountPremium
1426000
us-gaap Amortization Of Debt Discount Premium
AmortizationOfDebtDiscountPremium
1328000
us-gaap Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
17679000
us-gaap Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
13520000
us-gaap Gains Losses On Extinguishment Of Debt
GainsLossesOnExtinguishmentOfDebt
-638000
us-gaap Foreign Currency Transaction Gain Loss Unrealized
ForeignCurrencyTransactionGainLossUnrealized
-17281000
us-gaap Foreign Currency Transaction Gain Loss Unrealized
ForeignCurrencyTransactionGainLossUnrealized
6305000
us-gaap Foreign Currency Transaction Gain Loss Realized
ForeignCurrencyTransactionGainLossRealized
2547000
us-gaap Gain Loss On Disposition Of Assets
GainLossOnDispositionOfAssets
-80000
us-gaap Gain Loss On Disposition Of Assets
GainLossOnDispositionOfAssets
131000
us-gaap Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
2100000
us-gaap Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
9285000
us-gaap Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
1102000
us-gaap Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
43000
us-gaap Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
3253000
us-gaap Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
4862000
us-gaap Increase Decrease In Operating Liabilities
IncreaseDecreaseInOperatingLiabilities
-2783000
us-gaap Increase Decrease In Operating Liabilities
IncreaseDecreaseInOperatingLiabilities
1350000
ccoi Increase Decrease In Contract With Customer Refund Liability
IncreaseDecreaseInContractWithCustomerRefundLiability
-628000
ccoi Increase Decrease In Contract With Customer Refund Liability
IncreaseDecreaseInContractWithCustomerRefundLiability
-1730000
us-gaap Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
102749000
us-gaap Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
102712000
us-gaap Payments Of Dividends
PaymentsOfDividends
94952000
us-gaap Payments Of Dividends
PaymentsOfDividends
82871000
us-gaap Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
40092000
us-gaap Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
37059000
us-gaap Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
-40092000
us-gaap Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
-37059000
us-gaap Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
270000
us-gaap Proceeds From Repayments Of Notes Payable
ProceedsFromRepaymentsOfNotesPayable
-189225000
us-gaap Proceeds From Issuance Of Unsecured Debt
ProceedsFromIssuanceOfUnsecuredDebt
240285000
us-gaap Proceeds From Issuance Of Unsecured Debt
ProceedsFromIssuanceOfUnsecuredDebt
152128000
us-gaap Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
7855000
us-gaap Repayments Of Long Term Debt
RepaymentsOfLongTermDebt
7348000
us-gaap Finance Lease Principal Payments
FinanceLeasePrincipalPayments
19392000
us-gaap Finance Lease Principal Payments
FinanceLeasePrincipalPayments
7035000
us-gaap Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
1175000
us-gaap Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
1270000
us-gaap Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
-70234000
us-gaap Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
56144000
us-gaap Effect Of Exchange Rate On Cash And Cash Equivalents Continuing Operations
EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
1448000
us-gaap Effect Of Exchange Rate On Cash And Cash Equivalents Continuing Operations
EffectOfExchangeRateOnCashAndCashEquivalentsContinuingOperations
-1619000
us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
-6129000
us-gaap Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
120178000
CY2019Q4 us-gaap Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
399422000
CY2018Q4 us-gaap Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
276093000
CY2020Q3 us-gaap Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
393293000
CY2019Q3 us-gaap Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
396271000
us-gaap Contribution Of Property
ContributionOfProperty
310000
us-gaap Contribution Of Property
ContributionOfProperty
771000
us-gaap Fair Value Of Assets Acquired
FairValueOfAssetsAcquired
5771000
us-gaap Fair Value Of Assets Acquired
FairValueOfAssetsAcquired
8945000
us-gaap Capital Lease Obligations Incurred
CapitalLeaseObligationsIncurred
61504000
us-gaap Capital Lease Obligations Incurred
CapitalLeaseObligationsIncurred
11342000
ccoi Fair Value Of Equipment Acquired In Leases
FairValueOfEquipmentAcquiredInLeases
536000
ccoi Fair Value Of Equipment Acquired In Leases
FairValueOfEquipmentAcquiredInLeases
1207000
CY2020Q3 us-gaap Number Of Countries In Which Entity Operates
NumberOfCountriesInWhichEntityOperates
47
ccoi Access Customers Network
AccessCustomersNetwork
7200
us-gaap Use Of Estimates
UseOfEstimates
<p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-style:italic;">Use of estimates</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">The preparation of consolidated financial statements in conformity with United States generally accepted accounting principles requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosures of contingent assets and liabilities at the date of the consolidated financial statements and the reported amounts of revenues and expenses during the reporting period. Actual results may differ from these estimates.</p>
CY2020Q3 us-gaap Stockholders Equity
StockholdersEquity
-260691000
CY2020Q3 us-gaap Excise And Sales Taxes
ExciseAndSalesTaxes
3900000
CY2019Q3 us-gaap Excise And Sales Taxes
ExciseAndSalesTaxes
4000000.0
us-gaap Excise And Sales Taxes
ExciseAndSalesTaxes
10900000
us-gaap Excise And Sales Taxes
ExciseAndSalesTaxes
10600000
CY2020Q3 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
45815718
CY2019Q3 us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
45438656
us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
45818677
us-gaap Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
45428305
CY2020Q3 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
45815718
CY2019Q3 us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
46019691
us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
46598870
us-gaap Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
45948331
CY2020Q2 us-gaap Stockholders Equity
StockholdersEquity
-235550000
CY2020Q3 us-gaap Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
7147000
CY2020Q3 us-gaap Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
5408000
CY2020Q3 us-gaap Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
185000
CY2020Q3 us-gaap Stock Repurchased And Retired During Period Value
StockRepurchasedAndRetiredDuringPeriodValue
269000
CY2020Q3 us-gaap Dividends Common Stock Cash
DividendsCommonStockCash
32657000
CY2020Q3 us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
-4955000
CY2019Q2 us-gaap Stockholders Equity
StockholdersEquity
-176590000
CY2019Q3 us-gaap Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
5311000
CY2019Q3 us-gaap Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
-4709000
CY2019Q3 us-gaap Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
351000
CY2019Q3 us-gaap Dividends Common Stock Cash
DividendsCommonStockCash
28565000
CY2019Q3 us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
13701000
CY2019Q3 us-gaap Stockholders Equity
StockholdersEquity
-190501000
CY2019Q4 us-gaap Stockholders Equity
StockholdersEquity
-203679000
us-gaap Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
19371000
us-gaap Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
4828000
us-gaap Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
1174000
us-gaap Stock Repurchased And Retired During Period Value
StockRepurchasedAndRetiredDuringPeriodValue
269000
us-gaap Dividends Common Stock Cash
DividendsCommonStockCash
94952000
us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
12836000
CY2020Q3 us-gaap Stockholders Equity
StockholdersEquity
-260691000
CY2018Q4 us-gaap Stockholders Equity
StockholdersEquity
-149002000
us-gaap Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
14796000
us-gaap Other Comprehensive Income Foreign Currency Transaction And Translation Adjustment Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
-4748000
us-gaap Stock Issued During Period Value New Issues
StockIssuedDuringPeriodValueNewIssues
1000
us-gaap Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
1269000
us-gaap Dividends Common Stock Cash
DividendsCommonStockCash
82871000
us-gaap Net Income Loss Available To Common Stockholders Basic
NetIncomeLossAvailableToCommonStockholdersBasic
30054000
CY2019Q3 us-gaap Stockholders Equity
StockholdersEquity
-190501000
CY2020Q3 us-gaap Contract With Customer Liability Revenue Recognized
ContractWithCustomerLiabilityRevenueRecognized
1600000
CY2019Q3 us-gaap Contract With Customer Liability Revenue Recognized
ContractWithCustomerLiabilityRevenueRecognized
1700000
us-gaap Contract With Customer Liability Revenue Recognized
ContractWithCustomerLiabilityRevenueRecognized
3900000
us-gaap Contract With Customer Liability Revenue Recognized
ContractWithCustomerLiabilityRevenueRecognized
5100000
CY2020Q3 us-gaap Capitalized Contract Cost Amortization
CapitalizedContractCostAmortization
4200000
CY2019Q3 us-gaap Capitalized Contract Cost Amortization
CapitalizedContractCostAmortization
4300000
us-gaap Capitalized Contract Cost Amortization
CapitalizedContractCostAmortization
12600000
us-gaap Capitalized Contract Cost Amortization
CapitalizedContractCostAmortization
13000000.0
CY2019Q1 ccoi Operating Lease Right Of Use Asset And Leases Liability
OperatingLeaseRightOfUseAssetAndLeasesLiability
97300000
CY2020Q3 us-gaap Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
6382000
CY2019Q3 us-gaap Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
4963000
CY2020Q3 us-gaap Finance Lease Interest Expense
FinanceLeaseInterestExpense
4804000
CY2019Q3 us-gaap Finance Lease Interest Expense
FinanceLeaseInterestExpense
4414000
CY2020Q3 us-gaap Operating Lease Cost
OperatingLeaseCost
4269000
CY2019Q3 us-gaap Operating Lease Cost
OperatingLeaseCost
3716000
CY2020Q3 us-gaap Lease Cost
LeaseCost
15455000
CY2019Q3 us-gaap Lease Cost
LeaseCost
13093000
us-gaap Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
16117000
us-gaap Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
14851000
us-gaap Finance Lease Interest Expense
FinanceLeaseInterestExpense
13794000
us-gaap Finance Lease Interest Expense
FinanceLeaseInterestExpense
13230000
us-gaap Operating Lease Cost
OperatingLeaseCost
12860000
us-gaap Operating Lease Cost
OperatingLeaseCost
10497000
us-gaap Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
13785000
CY2020Q3 us-gaap Lessee Operating Lease Liability Payments Due In Rolling Year Two
LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo
16535000
CY2020Q3 us-gaap Lessee Operating Lease Liability Payments Due In Rolling Year Three
LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree
15674000
CY2020Q3 us-gaap Lessee Operating Lease Liability Payments Due In Rolling Year Four
LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour
14198000
CY2020Q3 us-gaap Lessee Operating Lease Liability Payments Due In Rolling Year Five
LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive
12124000
CY2020Q3 us-gaap Lessee Operating Lease Liability Payments Due After Rolling Year Five
LesseeOperatingLeaseLiabilityPaymentsDueAfterRollingYearFive
103809000
us-gaap Lease Cost
LeaseCost
42771000
us-gaap Lease Cost
LeaseCost
38578000
us-gaap Operating Lease Payments
OperatingLeasePayments
14150000
us-gaap Operating Lease Payments
OperatingLeasePayments
12957000
us-gaap Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
8443000
us-gaap Finance Lease Principal Payments
FinanceLeasePrincipalPayments
19392000
us-gaap Finance Lease Principal Payments
FinanceLeasePrincipalPayments
7035000
us-gaap Right Of Use Asset Obtained In Exchange For Finance Lease Liability
RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability
61504000
us-gaap Right Of Use Asset Obtained In Exchange For Finance Lease Liability
RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability
11342000
us-gaap Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
24866000
us-gaap Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
6912000
CY2020Q3 us-gaap Finance Lease Weighted Average Remaining Lease Term1
FinanceLeaseWeightedAverageRemainingLeaseTerm1
P12Y3M18D
CY2019Q3 us-gaap Finance Lease Weighted Average Remaining Lease Term1
FinanceLeaseWeightedAverageRemainingLeaseTerm1
P14Y6M
CY2020Q3 us-gaap Operating Lease Weighted Average Remaining Lease Term1
OperatingLeaseWeightedAverageRemainingLeaseTerm1
P20Y4M24D
CY2019Q3 us-gaap Operating Lease Weighted Average Remaining Lease Term1
OperatingLeaseWeightedAverageRemainingLeaseTerm1
P21Y8M12D
CY2020Q3 us-gaap Finance Lease Weighted Average Discount Rate Percent
FinanceLeaseWeightedAverageDiscountRatePercent
0.105
CY2019Q3 us-gaap Finance Lease Weighted Average Discount Rate Percent
FinanceLeaseWeightedAverageDiscountRatePercent
0.105
CY2020Q3 us-gaap Operating Lease Weighted Average Discount Rate Percent
OperatingLeaseWeightedAverageDiscountRatePercent
0.054
CY2019Q3 us-gaap Operating Lease Weighted Average Discount Rate Percent
OperatingLeaseWeightedAverageDiscountRatePercent
0.057
CY2020Q3 ccoi Finance Lease Liability Payments Due Additional
FinanceLeaseLiabilityPaymentsDueAdditional
20700000
CY2020Q3 us-gaap Finance Lease Liability Payments Due In Next Rolling Twelve Months
FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths
33471000
CY2020Q3 us-gaap Finance Lease Liability Payments Due In Rolling Year Two
FinanceLeaseLiabilityPaymentsDueInRollingYearTwo
32638000
CY2020Q3 us-gaap Finance Lease Liability Payments Due In Rolling Year Three
FinanceLeaseLiabilityPaymentsDueInRollingYearThree
31650000
CY2020Q3 us-gaap Finance Lease Liability Payments Due In Rolling Year Four
FinanceLeaseLiabilityPaymentsDueInRollingYearFour
31753000
CY2020Q3 us-gaap Finance Lease Liability Payments Due In Rolling Year Five
FinanceLeaseLiabilityPaymentsDueInRollingYearFive
28495000
CY2020Q3 us-gaap Finance Lease Liability Payments Due In Rolling After Year Five
FinanceLeaseLiabilityPaymentsDueInRollingAfterYearFive
225320000
CY2020Q3 us-gaap Finance Lease Liability Payments Due
FinanceLeaseLiabilityPaymentsDue
383327000
CY2020Q3 us-gaap Finance Lease Liability Undiscounted Excess Amount
FinanceLeaseLiabilityUndiscountedExcessAmount
170387000
CY2020Q3 us-gaap Finance Lease Liability
FinanceLeaseLiability
212940000
CY2020Q3 us-gaap Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
15252000
CY2020Q3 us-gaap Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
197688000
CY2020Q3 us-gaap Lessee Operating Lease Liability Payments Due Next Rolling Twelve Months
LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths
17579000
CY2020Q3 us-gaap Lessee Operating Lease Liability Payments Due
LesseeOperatingLeaseLiabilityPaymentsDue
179919000
CY2020Q3 us-gaap Lessee Operating Lease Liability Undiscounted Excess Amount
LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
66466000
CY2020Q3 us-gaap Operating Lease Liability
OperatingLeaseLiability
113453000
CY2020Q3 us-gaap Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
12006000
CY2020Q3 us-gaap Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
101447000
us-gaap Description Of New Accounting Pronouncements Not Yet Adopted
DescriptionOfNewAccountingPronouncementsNotYetAdopted
<p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-style:italic;">Adopted accounting pronouncements</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-style:italic;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">Effective January 1, 2020, the Company adopted Accounting Standards Update ("ASU") No. 2016-13, <i style="font-style:italic;">Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments</i> ("ASU 2016-13") later codified as Accounting Standards Codification ("ASC") 326 ("ASC 326"), using the modified retrospective transition approach. This guidance introduces a revised approach to the recognition and measurement of credit losses, emphasizing an updated model based on expected losses rather than incurred losses. As of January 1, 2020, the Company maintained an allowance for credit losses to cover its current expected credit losses ("CECL") on its trade receivables arising from the failure of customers to make contractual payments. The Company estimates credit losses expected over the life of its trade receivables based on historical information combined with current conditions that may affect a customer's ability to pay and reasonable and supportable forecasts. While the Company uses various credit quality metrics, it primarily monitors collectability by reviewing the duration of collection pursuits on its delinquent trade receivables. Based on the Company's experience, the customer's delinquency status is the strongest indicator of the credit quality of the underlying trade receivables, which is analyzed monthly. Adoption of ASU 2016-13 did not have a material impact on the Company's consolidated financial statements and related disclosures and no cumulative adjustment was recorded.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:47.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:47.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Current-period</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Balance at</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Provision for</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Write offs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Balance at</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Expected Credit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Charged Against</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:47.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Description</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Allowance</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:47.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-style:italic;">Allowance for credit losses (deducted from accounts receivable)</i></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Three months ending September 30, 2020</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,115</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,174</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (1,085)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,204</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:47.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:47.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Current-period</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Balance at</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Provision for</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Write offs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Balance at</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Expected Credit</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Charged Against</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:47.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">Description</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2019</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.42%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Allowance</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2020</b></p></td></tr><tr><td style="background-color:#cceeff;vertical-align:bottom;width:47.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><i style="font-style:italic;">Allowance for credit losses (deducted from accounts receivable)</i></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">  </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">  </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">  </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">  </p></td><td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Nine months ending September 30, 2020</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,771</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,942</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt;"> (3,509)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,204</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:36pt;margin:0pt;">Net bad debt expense for the three months ended September 30, 2020 was $0.8 million which is net of bad debt recoveries of $0.4 million. Net bad debt expense for the nine months ended September 30, 2020 was $3.2 million which is net of bad debt recoveries of $0.8 million.</p>
CY2020Q2 us-gaap Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
2115000
CY2020Q3 us-gaap Allowance For Doubtful Accounts Receivable Period Increase Decrease
AllowanceForDoubtfulAccountsReceivablePeriodIncreaseDecrease
1174000
CY2020Q3 us-gaap Allowance For Doubtful Accounts Receivable Write Offs
AllowanceForDoubtfulAccountsReceivableWriteOffs
1085000
CY2020Q3 us-gaap Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
2204000
CY2019Q4 us-gaap Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
1771000
us-gaap Allowance For Doubtful Accounts Receivable Period Increase Decrease
AllowanceForDoubtfulAccountsReceivablePeriodIncreaseDecrease
3942000
us-gaap Allowance For Doubtful Accounts Receivable Write Offs
AllowanceForDoubtfulAccountsReceivableWriteOffs
3509000
CY2020Q3 us-gaap Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
2204000
CY2020Q3 us-gaap Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
800000
CY2020Q3 us-gaap Allowance For Doubtful Accounts Receivable Recoveries
AllowanceForDoubtfulAccountsReceivableRecoveries
400000
us-gaap Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
3200000
us-gaap Allowance For Doubtful Accounts Receivable Recoveries
AllowanceForDoubtfulAccountsReceivableRecoveries
800000
CY2020Q3 us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
21600000
CY2019Q3 us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
20000000.0
us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
61000000.0
us-gaap Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
60200000
CY2020Q3 ccoi Property Plant And Equipment Compensation Costs Capitalized
PropertyPlantAndEquipmentCompensationCostsCapitalized
3000000.0
CY2019Q3 ccoi Property Plant And Equipment Compensation Costs Capitalized
PropertyPlantAndEquipmentCompensationCostsCapitalized
2700000
ccoi Property Plant And Equipment Compensation Costs Capitalized
PropertyPlantAndEquipmentCompensationCostsCapitalized
8900000
ccoi Property Plant And Equipment Compensation Costs Capitalized
PropertyPlantAndEquipmentCompensationCostsCapitalized
8000000.0
CY2020Q3 ccoi Gain Loss On Asset Exchange Transactions
GainLossOnAssetExchangeTransactions
100000
CY2019Q3 ccoi Gain Loss On Asset Exchange Transactions
GainLossOnAssetExchangeTransactions
100000
ccoi Gain Loss On Asset Exchange Transactions
GainLossOnAssetExchangeTransactions
300000
ccoi Gain Loss On Asset Exchange Transactions
GainLossOnAssetExchangeTransactions
800000
ccoi Debt Instrument Covenant Permitted Investments And Payments
DebtInstrumentCovenantPermittedInvestmentsAndPayments
132600000
CY2020Q3 us-gaap Loss Contingency Range Of Possible Loss Portion Not Accrued
LossContingencyRangeOfPossibleLossPortionNotAccrued
3300000
CY2020Q3 us-gaap Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
-4084000
CY2019Q3 us-gaap Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
24452000
us-gaap Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
27818000
us-gaap Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
59537000
CY2020Q3 us-gaap Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
-2471000
CY2019Q3 us-gaap Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
-5497000
us-gaap Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
-10242000
us-gaap Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
-17632000
CY2020Q3 us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
-6555000
CY2019Q3 us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
18955000
us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
17576000
us-gaap Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
41905000
CY2019Q4 us-gaap Noncurrent Assets
NoncurrentAssets
368946000
CY2020Q3 us-gaap Stock Repurchase Program Remaining Authorized Repurchase Amount1
StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
34600000
us-gaap Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
4567
CY2020Q3 us-gaap Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
4567
us-gaap Stock Repurchased During Period Value
StockRepurchasedDuringPeriodValue
300000
CY2020Q3 us-gaap Stock Repurchased During Period Value
StockRepurchasedDuringPeriodValue
300000
us-gaap Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
0
CY2019Q3 us-gaap Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
0
CY2020Q4 us-gaap Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
53516
CY2020Q4 us-gaap Stock Repurchased During Period Value
StockRepurchasedDuringPeriodValue
3100000
CY2020Q4 us-gaap Common Stock Dividends Per Share Cash Paid
CommonStockDividendsPerShareCashPaid
0.73
CY2020Q4 us-gaap Payments Of Dividends
PaymentsOfDividends
33500000
us-gaap Number Of Operating Segments
NumberOfOperatingSegments
1
CY2020Q3 us-gaap Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
142302000
CY2019Q3 us-gaap Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
136942000
us-gaap Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
424205000
us-gaap Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
405866000
CY2020Q3 us-gaap Noncurrent Assets
NoncurrentAssets
421267000

Files In Submission

Name View Source Status
0001104659-20-121637-index-headers.html Edgar Link pending
0001104659-20-121637-index.html Edgar Link pending
0001104659-20-121637.txt Edgar Link pending
0001104659-20-121637-xbrl.zip Edgar Link pending
ccoi-20200930.xsd Edgar Link pending
ccoi-20200930x10q.htm Edgar Link pending
ccoi-20200930x10q_htm.xml Edgar Link completed
ccoi-20200930xex31d1.htm Edgar Link pending
ccoi-20200930xex31d2.htm Edgar Link pending
ccoi-20200930xex32d1.htm Edgar Link pending
ccoi-20200930xex32d2.htm Edgar Link pending
ccoi-20200930_cal.xml Edgar Link unprocessable
ccoi-20200930_def.xml Edgar Link unprocessable
ccoi-20200930_lab.xml Edgar Link unprocessable
ccoi-20200930_pre.xml Edgar Link unprocessable
FilingSummary.xml Edgar Link unprocessable
Financial_Report.xlsx Edgar Link pending
MetaLinks.json Edgar Link pending
R1.htm Edgar Link pending
R10.htm Edgar Link pending
R11.htm Edgar Link pending
R12.htm Edgar Link pending
R13.htm Edgar Link pending
R14.htm Edgar Link pending
R15.htm Edgar Link pending
R16.htm Edgar Link pending
R17.htm Edgar Link pending
R18.htm Edgar Link pending
R19.htm Edgar Link pending
R2.htm Edgar Link pending
R20.htm Edgar Link pending
R21.htm Edgar Link pending
R22.htm Edgar Link pending
R23.htm Edgar Link pending
R24.htm Edgar Link pending
R25.htm Edgar Link pending
R26.htm Edgar Link pending
R27.htm Edgar Link pending
R28.htm Edgar Link pending
R29.htm Edgar Link pending
R3.htm Edgar Link pending
R30.htm Edgar Link pending
R31.htm Edgar Link pending
R32.htm Edgar Link pending
R33.htm Edgar Link pending
R34.htm Edgar Link pending
R35.htm Edgar Link pending
R36.htm Edgar Link pending
R37.htm Edgar Link pending
R38.htm Edgar Link pending
R39.htm Edgar Link pending
R4.htm Edgar Link pending
R40.htm Edgar Link pending
R5.htm Edgar Link pending
R6.htm Edgar Link pending
R7.htm Edgar Link pending
R8.htm Edgar Link pending
R9.htm Edgar Link pending
report.css Edgar Link pending
Show.js Edgar Link pending