XML 89 R75.htm IDEA: XBRL DOCUMENT
v3.10.0.1

Business Combinations - Contingent Consideration (Details) - USD ($) | 3 Months Ended | 12 Months Ended |  |  |
--- | --- | --- | --- | --- | ---
Jun. 30, 2018 | Dec. 31, 2018 | Jan. 18, 2018 | Jan. 10, 2018 | Jan. 27, 2017
EcoFoam |  |  |  |  |
Contingent Consideration |  |  |  |  |
Contingent consideration, payment period |  | 3 years |  |  |
Contingent consideration, high end of range |  | $ 2,500,000 |  |  |
EcoFoam | Contingent Consideration | Level 3 |  |  |  |  |
Contingent Consideration |  |  |  |  |
Business Combination, Contingent Consideration, Liability, Measurement Input [Extensible List] |  | us-gaap:MeasurementInputDiscountRateMember |  |  |
Discount rate (as a percent) |  | 9.5 |  |  |
Fair value of contingent consideration recognized at acquisition date |  |  |  |  | $ 2,110,000
Fair value of contingent consideration |  |  |  |  |
Contingent consideration at beginning of period |  | $ 2,259,000 |  |  |
Change in fair value of contingent consideration |  | 155,000 |  |  |
Settlement of contingent consideration | $ 800,000 | (841,000) |  |  |
Liability balance for contingent consideration at end of period |  | $ 1,573,000 |  |  |
ADO |  |  |  |  |
Contingent Consideration |  |  |  |  |
Contingent consideration, payment period |  | 2 years |  |  |
Contingent consideration, low end of range |  | $ 0 |  |  |
Contingent consideration, high end of range |  | $ 1,000,000 |  |  |
ADO | Contingent Consideration | Level 3 |  |  |  |  |
Contingent Consideration |  |  |  |  |
Business Combination, Contingent Consideration, Liability, Measurement Input [Extensible List] |  | us-gaap:MeasurementInputDiscountRateMember |  |  |
Discount rate (as a percent) |  | 9.5 |  |  |
Fair value of contingent consideration recognized at acquisition date |  |  |  | $ 828,000 |
Fair value of contingent consideration |  |  |  |  |
Additions |  | $ 828,000 |  |  |
Change in fair value of contingent consideration |  | (485,000) |  |  |
Liability balance for contingent consideration at end of period |  | 343,000 |  |  |
Santa Rosa |  |  |  |  |
Contingent Consideration |  |  |  |  |
Contingent consideration, low end of range |  | 0 |  |  |
Contingent consideration, high end of range |  | 250,000 |  |  |
Santa Rosa | Contingent Consideration | Level 3 |  |  |  |  |
Contingent Consideration |  |  |  |  |
Fair value of contingent consideration recognized at acquisition date |  |  | $ 250,000 |  |
Fair value of contingent consideration |  |  |  |  |
Additions |  | 250,000 |  |  |
Liability balance for contingent consideration at end of period |  | $ 250,000 |  |  |

X
- Definition The payment period related to the contingent consideration arrangement. + References No definition available. + Details
Name: | bld_BusinessCombinationContingentConsiderationPaymentPeriod
Namespace Prefix: | bld_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Fair value of financial instrument classified as a liability on the acquisition date measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. + References No definition available. + Details
Name: | bld_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityAcquisitionDateValue
Namespace Prefix: | bld_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

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_BusinessAcquisitionContingentConsiderationLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition For contingent consideration arrangements recognized in connection with a business combination, this element represents an estimate of the high-end of the potential range (undiscounted) of the consideration which may be paid. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 805 -SubTopic 30 -Section 50 -Paragraph 1 -Subparagraph (c)(3) -URI http://asc.fasb.org/extlink&oid=35744584&loc=d3e6927-128479 + Details
Name: | us-gaap_BusinessCombinationContingentConsiderationArrangementsRangeOfOutcomesValueHigh
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition For contingent consideration arrangements and indemnification assets recognized in connection with a business combination, this element represents an estimate of the low-end of the potential range (undiscounted) of the consideration which may be paid. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 805 -SubTopic 30 -Section 50 -Paragraph 1 -Subparagraph (c)(3) -URI http://asc.fasb.org/extlink&oid=35744584&loc=d3e6927-128479 + Details
Name: | us-gaap_BusinessCombinationContingentConsiderationArrangementsRangeOfOutcomesValueLow
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Value of input used to measure contingent consideration liability from business combination. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 820 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (bbb)(2) -URI http://asc.fasb.org/extlink&oid=99377789&loc=d3e19207-110258 + Details
Name: | us-gaap_BusinessCombinationContingentConsiderationLiabilityMeasurementInput
Namespace Prefix: | us-gaap_
Data Type: | xbrli:decimalItemType
Balance Type: | na
Period Type: | instant

X
- Definition Indicates measurement input for business combination contingent consideration liability. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 820 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (bbb)(1) -URI http://asc.fasb.org/extlink&oid=99377789&loc=d3e19207-110258 + Details
Name: | us-gaap_BusinessCombinationContingentConsiderationLiabilityMeasurementInputExtensibleList
Namespace Prefix: | us-gaap_
Data Type: | srt-types:extensibleListItemType
Balance Type: | na
Period Type: | instant

X
- Definition A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period. + References No definition available. + Details
Name: | us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of gain (loss) recognized on the income statement for financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 820 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1) -URI http://asc.fasb.org/extlink&oid=99377789&loc=d3e19207-110258 + Details
Name: | us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of purchases of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 820 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(2) -URI http://asc.fasb.org/extlink&oid=99377789&loc=d3e19207-110258 + Details
Name: | us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of settlements of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 820 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(2) -URI http://asc.fasb.org/extlink&oid=99377789&loc=d3e19207-110258 + Details
Name: | us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Fair value of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 820 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c) -URI http://asc.fasb.org/extlink&oid=99377789&loc=d3e19207-110258 + Details
Name: | us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=bld_EcoFoamMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FairValueByLiabilityClassAxis=bld_ContingentConsiderationMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=bld_AdoProductsLLCMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=bld_SantaRosaInsulationAndFireproofingLLCMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |