<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2026"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:us-gaap="http://fasb.org/us-gaap/2026"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="wso-20260604.xsd" xlink:type="simple"/>
    <context id="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000105016</identifier>
        </entity>
        <period>
            <startDate>2026-06-04</startDate>
            <endDate>2026-06-04</endDate>
        </period>
    </context>
    <context id="C_e4679c0f-9ec1-4723-9b04-4659dde89ec1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000105016</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-06-04</startDate>
            <endDate>2026-06-04</endDate>
        </period>
    </context>
    <context id="C_08f5fbe4-2ab1-470c-a6ab-823c96692693">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000105016</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonClassBMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-06-04</startDate>
            <endDate>2026-06-04</endDate>
        </period>
    </context>
    <dei:AmendmentFlag
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_5e06c92b-4a69-48c9-9171-15562302c49c">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_9234cfc5-f7f2-4a7f-a97e-0d58fe8a2205">0000105016</dei:EntityCentralIndexKey>
    <dei:DocumentType
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_4a4b65e7-6dab-4d3e-8a5c-4c2d2485558e">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_9609a569-3fba-4408-891f-ae5ee7dd8b15">2026-06-04</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_583c9c62-8a77-4e40-bcef-dbd2535364e3">WATSCO, INC.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_27dbfea3-2d8e-47e2-901d-d1ad0796a366">FL</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_8d2dee0c-e559-4c2b-bfcb-24652197c1a2">1-5581</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_034bdf18-e562-440c-b693-fd0716a87dc8">59-0778222</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_ceab3b3a-39e2-4d58-a4e3-95a72677f79c">2665 South Bayshore Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_22a182b8-1293-42b7-8308-9e05d89fff47">Suite 901</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_7438e31f-7025-4cef-aa17-24b7a906d16f">Miami</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_07a3abcc-e596-4c0b-af7a-face06f6bbfc">FL</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_60acc5af-7d3a-4814-9dcd-4f567a85a11b">33133</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_28345d03-299b-4c0e-a350-9c50a805a0e7">(305)</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_71f5860a-2f9f-4065-a606-df61992ebb0f">714-4100</dei:LocalPhoneNumber>
    <dei:EntityInformationFormerLegalOrRegisteredName
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_f6dd01d2-6d21-4a9c-9d06-356d812ed2f0">N/A</dei:EntityInformationFormerLegalOrRegisteredName>
    <dei:WrittenCommunications
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_49b0eb6d-1b16-4d29-9ff8-1a4ee9db64f8">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_19d2c236-66ea-4453-bc52-9d2387019a32">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_08a688cf-43f7-46ec-b217-73ca9ec125da">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_f5b837b2-c6bd-4e6e-84ac-5c64ef206cbf">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="C_e4679c0f-9ec1-4723-9b04-4659dde89ec1"
      id="F_752428ec-2d73-4ba9-b5cd-3200237a3ac2">Common stock, $0.50 par value</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_e4679c0f-9ec1-4723-9b04-4659dde89ec1"
      id="F_48899bbc-2266-48bc-9fdd-21c49bb74229">WSO</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_e4679c0f-9ec1-4723-9b04-4659dde89ec1"
      id="F_bc2f8fcc-4f6f-406f-a3ae-dfbde8059f74">NYSE</dei:SecurityExchangeName>
    <dei:Security12bTitle
      contextRef="C_08f5fbe4-2ab1-470c-a6ab-823c96692693"
      id="F_eaa2e638-a0a7-45d5-80f5-3388ad33c4f0">Class B common stock, $0.50 par value</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_08f5fbe4-2ab1-470c-a6ab-823c96692693"
      id="F_010081ef-0357-4a07-a1e0-53f73f9f66a0">WSOB</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_08f5fbe4-2ab1-470c-a6ab-823c96692693"
      id="F_2be2a3f0-d7f0-4a8d-af2f-68f3d1cc3fee">NYSE</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="C_cc4f36a4-17b4-478d-b544-c4eddc8817e7"
      id="F_527f633f-8bd2-4aa3-b2cd-34e3e3477f43">false</dei:EntityEmergingGrowthCompany>
</xbrl>
