XML 38 R27.htm IDEA: XBRL DOCUMENT
v3.19.2

Interest Rate Swaps (Details 1) $ in Millions | 6 Months Ended
--- | ---
Jun. 30, 2019 USD ($)
Derivative [Line Items] |
Loss on Cash Flow Hedge Ineffectiveness | $ 0.5
Interest Rate Swap 1 [Member] |
Derivative [Line Items] |
Interest rate swap agreement, notional amount | $ 75.0
Interest rate swap agreement, fixed interest rate | 2.273%
Interest rate swap agreement, amendment date | Oct. 01, 2015
Interest rate swap agreement, termination date | Nov. 20, 2019
Interest rate swap agreement, effective date | Oct. 19, 2016
Interest Rate Swap 2 [Member] |
Derivative [Line Items] |
Interest rate swap agreement, notional amount | $ 25.0
Interest rate swap agreement, fixed interest rate | 2.111%
Interest rate swap agreement, amendment date | Oct. 01, 2015
Interest rate swap agreement, termination date | Nov. 20, 2019
Interest rate swap agreement, effective date | Oct. 19, 2016
Interest Rate Swap 3 [Member] |
Derivative [Line Items] |
Interest rate swap agreement, notional amount | $ 50.0
Interest rate swap agreement, fixed interest rate | 2.111%
Interest rate swap agreement, amendment date | Oct. 01, 2015
Interest rate swap agreement, termination date | Nov. 20, 2019
Interest rate swap agreement, effective date | Oct. 19, 2016

X
- Definition Aggregate notional amount specified by the derivative(s). Expressed as an absolute value. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Article 12 -Section 13 -Sentence Column B + Details
Name: | invest_DerivativeNotionalAmount
Namespace Prefix: | invest_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | instant

X
- Definition Derivative effective date + References No definition available. + Details
Name: | pool_Derivativeeffectivedate
Namespace Prefix: | pool_
Data Type: | xbrli:dateItemType
Balance Type: | na
Period Type: | duration

X
- Definition Fixed interest rate related to the interest rate derivative. + References No definition available. + Details
Name: | us-gaap_DerivativeFixedInterestRate
Namespace Prefix: | us-gaap_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition Date the entity entered into the derivative contract, in CCYY-MM-DD format. + References No definition available. + Details
Name: | us-gaap_DerivativeInceptionDates
Namespace Prefix: | us-gaap_
Data Type: | xbrli:dateItemType
Balance Type: | na
Period Type: | duration

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_DerivativeLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Date the derivative contract matures, in CCYY-MM-DD format. + References No definition available. + Details
Name: | us-gaap_DerivativeMaturityDates
Namespace Prefix: | us-gaap_
Data Type: | xbrli:dateItemType
Balance Type: | na
Period Type: | duration

X
- Definition The loss recognized in earnings during the reporting period representing the amount of the cash flow hedges' ineffectiveness. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 815 -SubTopic 10 -Section 50 -Paragraph 4C -Subparagraph (d)(1) -URI http://asc.fasb.org/extlink&oid=109980867&loc=SL5624171-113959 + Details
Name: | us-gaap_LossOnCashFlowHedgeIneffectiveness
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Details
Name: | us-gaap_DerivativeInstrumentRiskAxis=pool_InterestRateSwap1Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentRiskAxis=pool_InterestRateSwap2Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentRiskAxis=pool_InterestRateSwap3Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |