XML 41 R30.htm IDEA: XBRL DOCUMENT
v3.10.0.1

Description of Business and Summary of Significant Accounting Policies (Details) | 9 Months Ended
--- | ---
Sep. 30, 2018 subsidiary
Accounting Policies [Abstract] |
Number of owned subsidiaries | 2
Contract terms | The Company has elected to use the practical expedient for its performance obligations table to show only those contracts that are longer than 12 months at the time of contract inception and those contracts that are non-cancelable. Additionally, for certain governmental contracts where there are annual renewals, the Company has excluded these contracts since there is only a one-year legal obligation. Typically, the only contracts that are longer than 12 months in duration are related to the Company's professional and managed services business.

X
- Definition Number of Owned Subsidiaries + References No definition available. + Details
Name: | cdw_NumberofOwnedSubsidiaries
Namespace Prefix: | cdw_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- References No definition available. + Details
Name: | us-gaap_AccountingPoliciesAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Description of effect, from relationship that timing of satisfaction of performance obligation has on timing of payment, on right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time and on obligation to transfer good or service to customer for which consideration from customer has been received or is due. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 9 -URI http://asc.fasb.org/extlink&oid=109196051&loc=SL49130550-203045 + Details
Name: | us-gaap_ContractWithCustomerTimingOfSatisfactionOfPerformanceObligationAndPayment
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration