<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.2.2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>443</ContextCount>
  <ElementCount>319</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>126</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>6</UnitCount>
  <MyReports>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>00090 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DocumentCover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>00100 - Statement - Consolidated balance sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/StatementConsolidatedBalanceSheets</Role>
      <ShortName>Consolidated balance sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>00105 - Statement - Consolidated balance sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/StatementConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Consolidated balance sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>00200 - Statement - Consolidated statements of loss and comprehensive loss</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/StatementConsolidatedStatementsOfLossAndComprehensiveLoss</Role>
      <ShortName>Consolidated statements of loss and comprehensive loss</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>00300 - Statement - Consolidated statements of shareholders' equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/StatementConsolidatedStatementsOfShareholdersEquity</Role>
      <ShortName>Consolidated statements of shareholders' equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>00400 - Statement - Condensed consolidated statements of cash flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/StatementCondensedConsolidatedStatementsOfCashFlows</Role>
      <ShortName>Condensed consolidated statements of cash flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>10101 - Disclosure - Nature of operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureNatureOfOperations</Role>
      <ShortName>Nature of operations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>10201 - Disclosure - Basis of preparation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureBasisOfPreparation</Role>
      <ShortName>Basis of preparation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>10301 - Disclosure - Significant accounting policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureSignificantAccountingPolicies</Role>
      <ShortName>Significant accounting policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>10401 - Disclosure - Investment securities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureInvestmentSecurities</Role>
      <ShortName>Investment securities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>10501 - Disclosure - Fair value measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureFairValueMeasurements</Role>
      <ShortName>Fair value measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>10601 - Disclosure - Business Combinations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureBusinessCombinations</Role>
      <ShortName>Business Combinations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>10701 - Disclosure - Inventory</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureInventory</Role>
      <ShortName>Inventory</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>10801 - Disclosure - Prepaid expenses and deposits</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosurePrepaidExpensesAndDeposits</Role>
      <ShortName>Prepaid expenses and deposits</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>10901 - Disclosure - Property and equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosurePropertyAndEquipment</Role>
      <ShortName>Property and equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>11001 - Disclosure - Intangible assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureIntangibleAssets</Role>
      <ShortName>Intangible assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>11101 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureLeases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>11121 - Disclosure - Stock-based compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureStockBasedCompensation</Role>
      <ShortName>Stock-based compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>11301 - Disclosure - Warrants</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureWarrants</Role>
      <ShortName>Warrants</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>11401 - Disclosure - Income taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureIncomeTaxes</Role>
      <ShortName>Income taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>11501 - Disclosure - Commitments and contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureCommitmentsAndContingencies</Role>
      <ShortName>Commitments and contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>11601 - Disclosure - Segment information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureSegmentInformation</Role>
      <ShortName>Segment information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>11701 - Disclosure - Loss per share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureLossPerShare</Role>
      <ShortName>Loss per share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>11801 - Disclosure - Related party transaction</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureRelatedPartyTransaction</Role>
      <ShortName>Related party transaction</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>20302 - Disclosure - Significant accounting policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Significant accounting policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>30303 - Disclosure - Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureSignificantAccountingPoliciesTables</Role>
      <ShortName>Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>30403 - Disclosure - Investment securities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureInvestmentSecuritiesTables</Role>
      <ShortName>Investment securities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureInvestmentSecurities</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>30503 - Disclosure - Fair value measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureFairValueMeasurementsTables</Role>
      <ShortName>Fair value measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureFairValueMeasurements</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>30603 - Disclosure - Business Combinations (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureBusinessCombinationsTables</Role>
      <ShortName>Business Combinations (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureBusinessCombinations</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>30703 - Disclosure - Inventory (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureInventoryTables</Role>
      <ShortName>Inventory (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureInventory</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>30803 - Disclosure - Prepaid expenses and deposits (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosurePrepaidExpensesAndDepositsTables</Role>
      <ShortName>Prepaid expenses and deposits (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosurePrepaidExpensesAndDeposits</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>30903 - Disclosure - Property and equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosurePropertyAndEquipmentTables</Role>
      <ShortName>Property and equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosurePropertyAndEquipment</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>31003 - Disclosure - Intangible assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureIntangibleAssetsTables</Role>
      <ShortName>Intangible assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureIntangibleAssets</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>31103 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureLeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureLeases</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>31203 - Disclosure - Stock-based compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureStockBasedCompensationTables</Role>
      <ShortName>Stock-based compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureStockBasedCompensation</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>31303 - Disclosure - Warrants (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureWarrantsTables</Role>
      <ShortName>Warrants (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureWarrants</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>31603 - Disclosure - Segment information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureSegmentInformationTables</Role>
      <ShortName>Segment information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureSegmentInformation</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>31703 - Disclosure - Loss per share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureLossPerShareTables</Role>
      <ShortName>Loss per share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureLossPerShare</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>40301 - Disclosure - Significant Accounting Policies - PPE (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureSignificantAccountingPoliciesPpeDetails</Role>
      <ShortName>Significant Accounting Policies - PPE (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureSignificantAccountingPoliciesTables</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>40302 - Disclosure - Significant accounting policies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureSignificantAccountingPoliciesDetails</Role>
      <ShortName>Significant accounting policies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureSignificantAccountingPoliciesPolicies</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>40401 - Disclosure - Investment securities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureInvestmentSecuritiesDetails</Role>
      <ShortName>Investment securities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureInvestmentSecuritiesTables</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>40402 - Disclosure - Investment securities - Maturities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureInvestmentSecuritiesMaturitiesDetails</Role>
      <ShortName>Investment securities - Maturities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>40501 - Disclosure - Fair value measurements (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureFairValueMeasurementsDetails</Role>
      <ShortName>Fair value measurements (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureFairValueMeasurementsTables</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>40502 - Disclosure - Fair value measurements - Investments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureFairValueMeasurementsInvestmentsDetails</Role>
      <ShortName>Fair value measurements - Investments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>40503 - Disclosure - Fair value measurements - Balance sheet (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureFairValueMeasurementsBalanceSheetDetails</Role>
      <ShortName>Fair value measurements - Balance sheet (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>40601 - Disclosure - Business Combinations - 2022 (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureBusinessCombinations2022Details</Role>
      <ShortName>Business Combinations - 2022 (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>40602 - Disclosure - Business Combinations - 2022 purchase price allocation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureBusinessCombinations2022PurchasePriceAllocationDetails</Role>
      <ShortName>Business Combinations - 2022 purchase price allocation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>40603 - Disclosure - Business combinations - Purchase price consideration (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureBusinessCombinationsPurchasePriceConsiderationDetails</Role>
      <ShortName>Business combinations - Purchase price consideration (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>40604 - Disclosure - Business Combinations - Proforma (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureBusinessCombinationsProformaDetails</Role>
      <ShortName>Business Combinations - Proforma (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>40605 - Disclosure - Business Combinations - PulseVet (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureBusinessCombinationsPulsevetDetails</Role>
      <ShortName>Business Combinations - PulseVet (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>40606 - Disclosure - Business Combinations - PulseVet purchase price allocation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureBusinessCombinationsPulsevetPurchasePriceAllocationDetails</Role>
      <ShortName>Business Combinations - PulseVet purchase price allocation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>40701 - Disclosure - Inventory (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureInventoryDetails</Role>
      <ShortName>Inventory (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureInventoryTables</ParentRole>
      <Position>52</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>40801 - Disclosure - Prepaid expenses and deposits (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosurePrepaidExpensesAndDepositsDetails</Role>
      <ShortName>Prepaid expenses and deposits (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosurePrepaidExpensesAndDepositsTables</ParentRole>
      <Position>53</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>40901 - Disclosure - Property and equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosurePropertyAndEquipmentDetails</Role>
      <ShortName>Property and equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosurePropertyAndEquipmentTables</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>41001 - Disclosure - Intangible assets - Summary (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureIntangibleAssetsSummaryDetails</Role>
      <ShortName>Intangible assets - Summary (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>41002 - Disclosure - Intangible assets - Amortization (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureIntangibleAssetsAmortizationDetails</Role>
      <ShortName>Intangible assets - Amortization (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>41101 - Disclosure - Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureLeasesDetails</Role>
      <ShortName>Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureLeasesTables</ParentRole>
      <Position>57</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>41102 - Disclosure - Leases - Balance sheet (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureLeasesBalanceSheetDetails</Role>
      <ShortName>Leases - Balance sheet (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>41103 - Disclosure - Leases - Undiscounted liability (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureLeasesUndiscountedLiabilityDetails</Role>
      <ShortName>Leases - Undiscounted liability (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>41201 - Disclosure - Stock-based Compensation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureStockBasedCompensationDetails</Role>
      <ShortName>Stock-based Compensation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>41202 - Disclosure - Stock-based compensation - Option activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureStockBasedCompensationOptionActivityDetails</Role>
      <ShortName>Stock-based compensation - Option activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>41203 - Disclosure - Stock-based compensation - Option details (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureStockBasedCompensationOptionDetailsDetails</Role>
      <ShortName>Stock-based compensation - Option details (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>41204 - Disclosure - Stock-based compensation - Assumptions (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureStockBasedCompensationAssumptionsDetails</Role>
      <ShortName>Stock-based compensation - Assumptions (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>41301 - Disclosure - Warrants (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureWarrantsDetails</Role>
      <ShortName>Warrants (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureWarrantsTables</ParentRole>
      <Position>64</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>41302 - Disclosure - Warrants - Outstanding (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureWarrantsOutstandingDetails</Role>
      <ShortName>Warrants - Outstanding (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>41501 - Disclosure - Commitments and contingencies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureCommitmentsAndContingenciesDetails</Role>
      <ShortName>Commitments and contingencies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureCommitmentsAndContingencies</ParentRole>
      <Position>66</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>41601 - Disclosure - Segment information - Segment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureSegmentInformationSegmentDetails</Role>
      <ShortName>Segment information - Segment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>41701 - Disclosure - Loss per share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureLossPerShareDetails</Role>
      <ShortName>Loss per share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureLossPerShareTables</ParentRole>
      <Position>68</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>41702 - Disclosure - Loss per share - Anti-dilutive (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureLossPerShareAntiDilutiveDetails</Role>
      <ShortName>Loss per share - Anti-dilutive (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="zom-20220930x10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>41801 - Disclosure - Related party transaction (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://zomedica.com/role/DisclosureRelatedPartyTransactionDetails</Role>
      <ShortName>Related party transaction (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://zomedica.com/role/DisclosureRelatedPartyTransaction</ParentRole>
      <Position>70</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <Logs>
    <Log type="Warning">[ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 11 fact(s) appearing in ix:hidden were eligible for transformation: us-gaap:BusinessCombinationContingentConsiderationLiability, us-gaap:CommonStockSharesOutstanding, us-gaap:WarrantsAndRightsOutstandingTerm, zom:CollaborativeArrangementEscrowDepositTerm, zom:WarrantsAndRightsOutstandingTermYear -  zom-20220930x10q.htm 9</Log>
    <Log type="Warning">[ix-0514-Hidden-Fact-Not-Referenced] WARN: 2 fact(s) appearing in ix:hidden were not referenced by any -sec-ix-hidden style property: us-gaap:CommitmentsAndContingencies -  zom-20220930x10q.htm 9</Log>
  </Logs>
  <InputFiles>
    <File doctype="10-Q" original="zom-20220930x10q.htm">zom-20220930x10q.htm</File>
    <File>zom-20220930.xsd</File>
    <File>zom-20220930_cal.xml</File>
    <File>zom-20220930_def.xml</File>
    <File>zom-20220930_lab.xml</File>
    <File>zom-20220930_pre.xml</File>
    <File>zom-20220930xex10d2.htm</File>
    <File>zom-20220930xex31d1.htm</File>
    <File>zom-20220930xex31d2.htm</File>
    <File>zom-20220930xex32d1.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="1373">http://fasb.org/us-gaap/2022</BaseTaxonomy>
    <BaseTaxonomy items="30">http://xbrl.sec.gov/dei/2022</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
