<?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-20260601.xsd" xlink:type="simple"/>
    <context id="C_85c9cc00-a9a9-441d-b306-0e7c7b6c6fa6">
        <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-01</startDate>
            <endDate>2026-06-01</endDate>
        </period>
    </context>
    <context id="C_91fc0d7b-70a3-4591-be1b-620a9947adf6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000105016</identifier>
        </entity>
        <period>
            <startDate>2026-06-01</startDate>
            <endDate>2026-06-01</endDate>
        </period>
    </context>
    <context id="C_11e1cebd-0cde-4a3c-99ac-046e9e4db88b">
        <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-01</startDate>
            <endDate>2026-06-01</endDate>
        </period>
    </context>
    <dei:EntityCentralIndexKey
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_c136495d-eaaf-44ea-bb9c-43546d5699eb">0000105016</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_5cb78d7a-f9b9-4569-b798-840232ceed3f">false</dei:AmendmentFlag>
    <dei:DocumentType
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_7c8b1080-7a06-49a2-b65c-3bb261837fab">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_a7d1d7f2-dce1-4ddb-b5f7-1231d73b96fc">2026-06-01</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_4e5ad6dc-99a6-484c-9fce-a100df0eddae">WATSCO, INC.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_b896b9e7-ade0-48d1-be48-435e7e838fa8">FL</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_76de40e3-61ca-4844-b1b3-d251653c95b1">1-5581</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_a65fd0e0-5902-46e0-bce8-2ed95148a0ee">59-0778222</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_84e35808-1118-46d0-90e5-51e0b619dca0">2665 South Bayshore Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_2a2d31d1-e866-42aa-ad7f-4ff30fd482f7">Suite 901</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_6fbc79e6-f6bf-4e62-8774-038a92f327e8">Miami</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_33d13bc0-8400-412a-ac81-e33134ee13b8">FL</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_f3f840c1-bdbe-42a6-acb1-dd2d8d340f0e">33133</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_06bb91a8-83b9-470b-86af-a4f20835fd9f">(305)</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_9e72131c-b6c2-4cbc-bf60-28349235e8bd">714-4100</dei:LocalPhoneNumber>
    <dei:EntityInformationFormerLegalOrRegisteredName
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_01c7a85f-728d-4c59-9da9-06333401d224">N/A</dei:EntityInformationFormerLegalOrRegisteredName>
    <dei:WrittenCommunications
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_8d2ecc3f-9161-4be6-b13a-457fc1b61cac">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_c2bf913b-68b9-4a61-88e3-98b560474779">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_571a788b-e6d9-4626-b163-c4001d6c6ca9">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_b2312502-7e9e-4c8e-b167-400b2ec98f9b">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="C_85c9cc00-a9a9-441d-b306-0e7c7b6c6fa6"
      id="F_c184ca40-af05-45fb-be0f-6c0fc73689a0">Common stock, $0.50 par value</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_85c9cc00-a9a9-441d-b306-0e7c7b6c6fa6"
      id="F_ced0d9d0-08d8-47f5-a0b7-8cbe0b683e78">WSO</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_85c9cc00-a9a9-441d-b306-0e7c7b6c6fa6"
      id="F_4ee14176-fe8b-40ee-a721-17c4d6000caa">NYSE</dei:SecurityExchangeName>
    <dei:Security12bTitle
      contextRef="C_11e1cebd-0cde-4a3c-99ac-046e9e4db88b"
      id="F_001d44ed-2eba-4f8b-98c6-e7b88a1f6870">Class B common stock, $0.50 par value</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_11e1cebd-0cde-4a3c-99ac-046e9e4db88b"
      id="F_155406f0-1202-45e5-9299-ead694eab570">WSOB</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_11e1cebd-0cde-4a3c-99ac-046e9e4db88b"
      id="F_da65464f-c57d-4fbf-995e-c8394a643606">NYSE</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="C_91fc0d7b-70a3-4591-be1b-620a9947adf6"
      id="F_e0c708bb-093e-4ce0-bcfc-98bdce87e2e2">false</dei:EntityEmergingGrowthCompany>
</xbrl>
