<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.20.2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>1160</ContextCount>
  <ElementCount>828</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>315</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>13</UnitCount>
  <MyReports>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>00000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>00000002 - Statement - Consolidated statements of financial position</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/StatementsOfFinancialPosition</Role>
      <ShortName>Consolidated statements of financial position</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>00000003 - Statement - Consolidated statements of operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/StatementsOfOperations</Role>
      <ShortName>Consolidated statements of operations</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>00000004 - Statement - Consolidated statements of comprehensive income (loss)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/StatementsOfComprehensiveIncomeLoss</Role>
      <ShortName>Consolidated statements of comprehensive income (loss)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>00000005 - Statement - Consolidated statements of changes in equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/StatementsOfChangesInEquity</Role>
      <ShortName>Consolidated statements of changes in equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>00000006 - Statement - Consolidated statements of cash flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/StatementsOfCashFlows</Role>
      <ShortName>Consolidated statements of cash flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>00000007 - Disclosure - 1. Operating context</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/OperatingContext</Role>
      <ShortName>1. Operating context</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>00000008 - Disclosure - 2. Management' statement, basis for preparing and presenting the financial statements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/StatementOfManagementBasisForPreparingAndPresentingFinancialStatements</Role>
      <ShortName>2. Management' statement, basis for preparing and presenting the financial statements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>00000009 - Disclosure - 3. Approval of financial statements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/ApprovalOfFinancialStatements</Role>
      <ShortName>3. Approval of financial statements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>00000010 - Disclosure - 4. Summary of significant accounting practices</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SummaryOfSignificantAccountingPractices</Role>
      <ShortName>4. Summary of significant accounting practices</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>00000011 - Disclosure - 5. Seasonality</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Seasonality</Role>
      <ShortName>5. Seasonality</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>00000012 - Disclosure - 6. Cash and cash equivalents</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/CashAndCashEquivalents</Role>
      <ShortName>6. Cash and cash equivalents</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>00000013 - Disclosure - 7. Short-term investments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Short-termInvestments</Role>
      <ShortName>7. Short-term investments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>00000014 - Disclosure - 8. Restricted cash</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/RestrictedCash</Role>
      <ShortName>8. Restricted cash</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>00000015 - Disclosure - 9. Trade receivables</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TradeReceivables</Role>
      <ShortName>9. Trade receivables</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>00000016 - Disclosure - 10. Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Inventories</Role>
      <ShortName>10. Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>00000017 - Disclosure - 11. Recoverable taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Taxes</Role>
      <ShortName>11. Recoverable taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>00000018 - Disclosure - 12. Deferred taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/DeferredTaxes</Role>
      <ShortName>12. Deferred taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>00000019 - Disclosure - 13. Advance to suppliers and third parties</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/AdvanceToSuppliersAndThirdParties</Role>
      <ShortName>13. Advance to suppliers and third parties</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>00000020 - Disclosure - 14. Deposits</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Deposits</Role>
      <ShortName>14. Deposits</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>00000021 - Disclosure - 15. Investments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Investments</Role>
      <ShortName>15. Investments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>00000022 - Disclosure - 16. Property, plant and equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/PropertyPlantAndEquipment</Role>
      <ShortName>16. Property, plant and equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>00000023 - Disclosure - 17. Intangible assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/IntangibleAssets</Role>
      <ShortName>17. Intangible assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>00000024 - Disclosure - 18. Loans and financing</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LoansAndFinancing</Role>
      <ShortName>18. Loans and financing</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>00000025 - Disclosure - 19. Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Leases</Role>
      <ShortName>19. Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>00000026 - Disclosure - 20. Suppliers</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Suppliers</Role>
      <ShortName>20. Suppliers</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>00000027 - Disclosure - 21. Suppliers - forfeiting</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Suppliers-Forfeiting</Role>
      <ShortName>21. Suppliers - forfeiting</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>00000028 - Disclosure - 22. Taxes payable</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TaxesPayable</Role>
      <ShortName>22. Taxes payable</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>00000029 - Disclosure - 23. Air traffic liability</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/AirTrafficLiability</Role>
      <ShortName>23. Air traffic liability</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>00000030 - Disclosure - 24. Provisions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Provisions</Role>
      <ShortName>24. Provisions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>00000031 - Disclosure - 25. Shareholders' equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/ShareholdersEquity</Role>
      <ShortName>25. Shareholders' equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>00000032 - Disclosure - 26. Earnings (loss) per share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/EarningsLossPerShare</Role>
      <ShortName>26. Earnings (loss) per share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>32</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>00000033 - Disclosure - 27. Share-based payments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Share-basedPayments</Role>
      <ShortName>27. Share-based payments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>33</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>00000034 - Disclosure - 28. Transactions with related parties</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TransactionsWithRelatedParties</Role>
      <ShortName>28. Transactions with related parties</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>34</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>00000035 - Disclosure - 29. Revenue</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Revenue</Role>
      <ShortName>29. Revenue</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>35</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>00000036 - Disclosure - 30. Financial Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialIncome</Role>
      <ShortName>30. Financial Income</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>00000037 - Disclosure - 31. Segments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Segments</Role>
      <ShortName>31. Segments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>37</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>00000038 - Disclosure - 32. Commitments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Commitments</Role>
      <ShortName>32. Commitments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>38</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>00000039 - Disclosure - 33. Financial instruments and risk management</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagement</Role>
      <ShortName>33. Financial instruments and risk management</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>00000040 - Disclosure - 34. Non-cash Transactions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Non-cashTransactions</Role>
      <ShortName>34. Non-cash Transactions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>00000041 - Disclosure - 35. Liabilities from financing activities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LiabilitiesFromFinancingActivities</Role>
      <ShortName>35. Liabilities from financing activities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>00000042 - Disclosure - 36. Insurance coverage</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/InsuranceCoverage</Role>
      <ShortName>36. Insurance coverage</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>00000043 - Disclosure - 37. Subsequent events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SubsequentEvents</Role>
      <ShortName>37. Subsequent events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>00000044 - Disclosure - 4. Summary of significant accounting practices (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SummaryOfSignificantAccountingPracticesPolicies</Role>
      <ShortName>4. Summary of significant accounting practices (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>00000045 - Disclosure - 1. Operating context (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/OperatingContextTables</Role>
      <ShortName>1. Operating context (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/OperatingContext</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>00000046 - Disclosure - 4. Summary of significant accounting practices (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SummaryOfSignificantAccountingPracticesTables</Role>
      <ShortName>4. Summary of significant accounting practices (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SummaryOfSignificantAccountingPractices</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>00000047 - Disclosure - 6. Cash and cash equivalents (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/CashAndCashEquivalentsTables</Role>
      <ShortName>6. Cash and cash equivalents (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/CashAndCashEquivalents</ParentRole>
      <Position>47</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>00000048 - Disclosure - 7. Short-term investments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Short-termInvestmentsTables</Role>
      <ShortName>7. Short-term investments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Short-termInvestments</ParentRole>
      <Position>48</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>00000049 - Disclosure - 8. Restricted cash (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/RestrictedCashTables</Role>
      <ShortName>8. Restricted cash (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/RestrictedCash</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>00000050 - Disclosure - 9. Trade receivables (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TradeReceivablesTables</Role>
      <ShortName>9. Trade receivables (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/TradeReceivables</ParentRole>
      <Position>50</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>00000051 - Disclosure - 10. Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/InventoriesTables</Role>
      <ShortName>10. Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Inventories</ParentRole>
      <Position>51</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>00000052 - Disclosure - 11. Recoverable taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TaxesTables</Role>
      <ShortName>11. Recoverable taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Taxes</ParentRole>
      <Position>52</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>00000053 - Disclosure - 12. Deferred taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/DeferredTaxesTables</Role>
      <ShortName>12. Deferred taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/DeferredTaxes</ParentRole>
      <Position>53</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>00000054 - Disclosure - 13. Advance to suppliers and third parties (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/AdvanceToSuppliersAndThirdPartiesTables</Role>
      <ShortName>13. Advance to suppliers and third parties (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/AdvanceToSuppliersAndThirdParties</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>00000055 - Disclosure - 14. Deposits (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/DepositsTables</Role>
      <ShortName>14. Deposits (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Deposits</ParentRole>
      <Position>55</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>00000056 - Disclosure - 15. Investments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/InvestmentsTables</Role>
      <ShortName>15. Investments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Investments</ParentRole>
      <Position>56</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>00000057 - Disclosure - 16. Property, plant and equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/PropertyPlantAndEquipmentTables</Role>
      <ShortName>16. Property, plant and equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/PropertyPlantAndEquipment</ParentRole>
      <Position>57</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>00000058 - Disclosure - 17. Intangible assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/IntangibleAssetsTables</Role>
      <ShortName>17. Intangible assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/IntangibleAssets</ParentRole>
      <Position>58</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>00000059 - Disclosure - 18. Loans and financing (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LoansAndFinancingTables</Role>
      <ShortName>18. Loans and financing (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/LoansAndFinancing</ParentRole>
      <Position>59</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>00000060 - Disclosure - 19. Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LeasesTables</Role>
      <ShortName>19. Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Leases</ParentRole>
      <Position>60</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>00000061 - Disclosure - 20. Suppliers (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SuppliersTables</Role>
      <ShortName>20. Suppliers (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Suppliers</ParentRole>
      <Position>61</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>00000062 - Disclosure - 22. Taxes payable (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TaxesPayableTables</Role>
      <ShortName>22. Taxes payable (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/TaxesPayable</ParentRole>
      <Position>62</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>00000063 - Disclosure - 24. Provisions (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/ProvisionsTables</Role>
      <ShortName>24. Provisions (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Provisions</ParentRole>
      <Position>63</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>00000064 - Disclosure - 25. Shareholders' equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/ShareholdersEquityTables</Role>
      <ShortName>25. Shareholders' equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/ShareholdersEquity</ParentRole>
      <Position>64</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>00000065 - Disclosure - 26. Earnings (loss) per share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/EarningsLossPerShareTables</Role>
      <ShortName>26. Earnings (loss) per share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/EarningsLossPerShare</ParentRole>
      <Position>65</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>00000066 - Disclosure - 27. Share-based payments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Share-basedPaymentsTables</Role>
      <ShortName>27. Share-based payments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Share-basedPayments</ParentRole>
      <Position>66</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>00000067 - Disclosure - 28. Transactions with related parties (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TransactionsWithRelatedPartiesTables</Role>
      <ShortName>28. Transactions with related parties (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/TransactionsWithRelatedParties</ParentRole>
      <Position>67</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>00000068 - Disclosure - 29. Revenue (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/RevenueTables</Role>
      <ShortName>29. Revenue (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Revenue</ParentRole>
      <Position>68</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>00000069 - Disclosure - 30. Financial income (expenses) (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialIncomeExpensesTables</Role>
      <ShortName>30. Financial income (expenses) (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>00000070 - Disclosure - 31. Segments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SegmentsTables</Role>
      <ShortName>31. Segments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Segments</ParentRole>
      <Position>70</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>00000071 - Disclosure - 32. Commitments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/CommitmentsTables</Role>
      <ShortName>32. Commitments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Commitments</ParentRole>
      <Position>71</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>00000072 - Disclosure - 33. Financial instruments and risk management (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementTables</Role>
      <ShortName>33. Financial instruments and risk management (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagement</ParentRole>
      <Position>72</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>00000073 - Disclosure - 34. Non-cash Transactions (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Non-cashTransactionsTables</Role>
      <ShortName>34. Non-cash Transactions (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Non-cashTransactions</ParentRole>
      <Position>73</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>00000074 - Disclosure - 35. Liabilities from financing activities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LiabilitiesFromFinancingActivitiesTables</Role>
      <ShortName>35. Liabilities from financing activities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/LiabilitiesFromFinancingActivities</ParentRole>
      <Position>74</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>00000075 - Disclosure - 36. Insurance coverage (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/InsuranceCoverageTables</Role>
      <ShortName>36. Insurance coverage (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/InsuranceCoverage</ParentRole>
      <Position>75</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>00000076 - Disclosure - 37. Subsequent events (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SubsequentEventsTables</Role>
      <ShortName>37. Subsequent events (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SubsequentEvents</ParentRole>
      <Position>76</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>00000077 - Disclosure - 1. Operating Context (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/OperatingContextDetails</Role>
      <ShortName>1. Operating Context (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>77</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>00000078 - Disclosure - 1. Operating Context (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/OperatingContextDetailsNarrative</Role>
      <ShortName>1. Operating Context (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>78</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>00000079 - Disclosure - 4. Summary of significant accounting practices (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SummaryOfSignificantAccountingPracticesDetails</Role>
      <ShortName>4. Summary of significant accounting practices (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SummaryOfSignificantAccountingPracticesTables</ParentRole>
      <Position>79</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>00000080 - Disclosure - 4. Summary of significant accounting practices (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SummaryOfSignificantAccountingPracticesDetails1</Role>
      <ShortName>4. Summary of significant accounting practices (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SummaryOfSignificantAccountingPracticesTables</ParentRole>
      <Position>80</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>00000081 - Disclosure - 4. Summary of significant accounting practices (Details 2)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SummaryOfSignificantAccountingPracticesDetails2</Role>
      <ShortName>4. Summary of significant accounting practices (Details 2)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SummaryOfSignificantAccountingPracticesTables</ParentRole>
      <Position>81</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>00000082 - Disclosure - 4. Summary of significant accounting practices (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SummaryOfSignificantAccountingPracticesDetailsNarrative</Role>
      <ShortName>4. Summary of significant accounting practices (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SummaryOfSignificantAccountingPracticesTables</ParentRole>
      <Position>82</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>00000083 - Disclosure - 6. Cash and cash equivalents (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/CashAndCashEquivalentsDetails</Role>
      <ShortName>6. Cash and cash equivalents (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/CashAndCashEquivalentsTables</ParentRole>
      <Position>83</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>00000084 - Disclosure - 6. Cash and cash equivalents (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/CashAndCashEquivalentsDetails1</Role>
      <ShortName>6. Cash and cash equivalents (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/CashAndCashEquivalentsTables</ParentRole>
      <Position>84</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>00000085 - Disclosure - 7. Short-term investments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Short-termInvestmentsDetails</Role>
      <ShortName>7. Short-term investments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Short-termInvestmentsTables</ParentRole>
      <Position>85</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>00000086 - Disclosure - 8. Restricted cash (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/RestrictedCashDetails</Role>
      <ShortName>8. Restricted cash (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/RestrictedCashTables</ParentRole>
      <Position>86</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>00000087 - Disclosure - 9. Trade receivables (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TradeReceivablesDetails</Role>
      <ShortName>9. Trade receivables (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/TradeReceivablesTables</ParentRole>
      <Position>87</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>00000088 - Disclosure - 9. Trade receivables (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TradeReceivablesDetails1</Role>
      <ShortName>9. Trade receivables (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/TradeReceivablesTables</ParentRole>
      <Position>88</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R89.htm</HtmlFileName>
      <LongName>00000089 - Disclosure - 9. Trade Receivables (Details 2)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TradeReceivablesDetails2</Role>
      <ShortName>9. Trade Receivables (Details 2)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>89</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R90.htm</HtmlFileName>
      <LongName>00000090 - Disclosure - 10. Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/InventoriesDetails</Role>
      <ShortName>10. Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/InventoriesTables</ParentRole>
      <Position>90</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R91.htm</HtmlFileName>
      <LongName>00000091 - Disclosure - 10. Inventories (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/InventoriesDetails1</Role>
      <ShortName>10. Inventories (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/InventoriesTables</ParentRole>
      <Position>91</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R92.htm</HtmlFileName>
      <LongName>00000092 - Disclosure - 11. Recoverable taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/RecoverableTaxesDetails</Role>
      <ShortName>11. Recoverable taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/TaxesTables</ParentRole>
      <Position>92</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R93.htm</HtmlFileName>
      <LongName>00000093 - Disclosure - 11. Recoverable taxes (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/RecoverableTaxesDetailsNarrative</Role>
      <ShortName>11. Recoverable taxes (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/TaxesTables</ParentRole>
      <Position>93</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R94.htm</HtmlFileName>
      <LongName>00000094 - Disclosure - 12. Deferred taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/DeferredTaxesDetails</Role>
      <ShortName>12. Deferred taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/DeferredTaxesTables</ParentRole>
      <Position>94</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R95.htm</HtmlFileName>
      <LongName>00000095 - Disclosure - 12. Deferred taxes (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/DeferredTaxesDetails1</Role>
      <ShortName>12. Deferred taxes (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/DeferredTaxesTables</ParentRole>
      <Position>95</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R96.htm</HtmlFileName>
      <LongName>00000096 - Disclosure - 12. Deferred taxes (Details 2)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/DeferredTaxesDetails2</Role>
      <ShortName>12. Deferred taxes (Details 2)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/DeferredTaxesTables</ParentRole>
      <Position>96</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R97.htm</HtmlFileName>
      <LongName>00000097 - Disclosure - 12. Deferred taxes (Details 3)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/DeferredTaxesDetails3</Role>
      <ShortName>12. Deferred taxes (Details 3)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/DeferredTaxesTables</ParentRole>
      <Position>97</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R98.htm</HtmlFileName>
      <LongName>00000098 - Disclosure - 12. Deferred taxes (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/DeferredTaxesDetailsNarrative</Role>
      <ShortName>12. Deferred taxes (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/DeferredTaxesTables</ParentRole>
      <Position>98</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R99.htm</HtmlFileName>
      <LongName>00000099 - Disclosure - 13. Advance to suppliers and third parties (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/AdvanceToSuppliersAndThirdPartiesDetails</Role>
      <ShortName>13. Advance to suppliers and third parties (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/AdvanceToSuppliersAndThirdPartiesTables</ParentRole>
      <Position>99</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R100.htm</HtmlFileName>
      <LongName>00000100 - Disclosure - 13. Advance to suppliers and third parties (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/AdvanceToSuppliersAndThirdPartiesDetailsNarrative</Role>
      <ShortName>13. Advance to suppliers and third parties (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/AdvanceToSuppliersAndThirdPartiesTables</ParentRole>
      <Position>100</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R101.htm</HtmlFileName>
      <LongName>00000101 - Disclosure - 14. Deposits (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/DepositsDetails</Role>
      <ShortName>14. Deposits (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/DepositsTables</ParentRole>
      <Position>101</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R102.htm</HtmlFileName>
      <LongName>00000102 - Disclosure - 14. Deposits (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/DepositsDetailsNarrative</Role>
      <ShortName>14. Deposits (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/DepositsTables</ParentRole>
      <Position>102</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R103.htm</HtmlFileName>
      <LongName>00000103 - Disclosure - 15. Investments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/InvestmentsDetails</Role>
      <ShortName>15. Investments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/InvestmentsTables</ParentRole>
      <Position>103</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R104.htm</HtmlFileName>
      <LongName>00000104 - Disclosure - 15. Investments (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/InvestmentsDetails1</Role>
      <ShortName>15. Investments (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/InvestmentsTables</ParentRole>
      <Position>104</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R105.htm</HtmlFileName>
      <LongName>00000105 - Disclosure - 16. Property, plant and equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/PropertyPlantAndEquipmentDetails</Role>
      <ShortName>16. Property, plant and equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/PropertyPlantAndEquipmentTables</ParentRole>
      <Position>105</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R106.htm</HtmlFileName>
      <LongName>00000106 - Disclosure - 17. Intangible assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/IntangibleAssetsDetails</Role>
      <ShortName>17. Intangible assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/IntangibleAssetsTables</ParentRole>
      <Position>106</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R107.htm</HtmlFileName>
      <LongName>00000107 - Disclosure - 17. Intangible assets (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/IntangibleAssetsDetails1</Role>
      <ShortName>17. Intangible assets (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/IntangibleAssetsTables</ParentRole>
      <Position>107</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R108.htm</HtmlFileName>
      <LongName>00000108 - Disclosure - 18. Loans and Financing (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LoansAndFinancingDetails</Role>
      <ShortName>18. Loans and Financing (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>108</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R109.htm</HtmlFileName>
      <LongName>00000109 - Disclosure - 18. Loans and Financing (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LoansAndFinancingDetails1</Role>
      <ShortName>18. Loans and Financing (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>109</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R110.htm</HtmlFileName>
      <LongName>00000110 - Disclosure - 18. Loans and financing (Details 2)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LoansAndFinancingDetails2</Role>
      <ShortName>18. Loans and financing (Details 2)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/LoansAndFinancingTables</ParentRole>
      <Position>110</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R111.htm</HtmlFileName>
      <LongName>00000111 - Disclosure - 18. Loans and financing (Details 3)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LoansAndFinancingDetails3</Role>
      <ShortName>18. Loans and financing (Details 3)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/LoansAndFinancingTables</ParentRole>
      <Position>111</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R112.htm</HtmlFileName>
      <LongName>00000112 - Disclosure - 18. Loans and financing (Details 4)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LoansAndFinancingDetails4</Role>
      <ShortName>18. Loans and financing (Details 4)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/LoansAndFinancingTables</ParentRole>
      <Position>112</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R113.htm</HtmlFileName>
      <LongName>00000113 - Disclosure - 18. Loans and Financing (Details 5)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LoansAndFinancingDetails5</Role>
      <ShortName>18. Loans and Financing (Details 5)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>113</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R114.htm</HtmlFileName>
      <LongName>00000114 - Disclosure - 18. Loans and financing (Details 6)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LoansAndFinancingDetails6</Role>
      <ShortName>18. Loans and financing (Details 6)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/LoansAndFinancingTables</ParentRole>
      <Position>114</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R115.htm</HtmlFileName>
      <LongName>00000115 - Disclosure - 18. Loans and financing (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LoansAndFinancingDetailsNarrative</Role>
      <ShortName>18. Loans and financing (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/LoansAndFinancingTables</ParentRole>
      <Position>115</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R116.htm</HtmlFileName>
      <LongName>00000116 - Disclosure - 19. Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LeasesDetails</Role>
      <ShortName>19. Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/LeasesTables</ParentRole>
      <Position>116</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R117.htm</HtmlFileName>
      <LongName>00000117 - Disclosure - 19. Leases (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LeasesDetails1</Role>
      <ShortName>19. Leases (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/LeasesTables</ParentRole>
      <Position>117</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R118.htm</HtmlFileName>
      <LongName>00000118 - Disclosure - 19. Lease (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LeaseDetailsNarrative</Role>
      <ShortName>19. Lease (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/LeasesTables</ParentRole>
      <Position>118</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R119.htm</HtmlFileName>
      <LongName>00000119 - Disclosure - 20. Suppliers (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SuppliersDetails</Role>
      <ShortName>20. Suppliers (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SuppliersTables</ParentRole>
      <Position>119</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R120.htm</HtmlFileName>
      <LongName>00000120 - Disclosure - 20. Suppliers (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SuppliersDetailsNarrative</Role>
      <ShortName>20. Suppliers (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SuppliersTables</ParentRole>
      <Position>120</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R121.htm</HtmlFileName>
      <LongName>00000121 - Disclosure - 21. Suppliers - forfeiting (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Suppliers-ForfeitingDetailsNarrative</Role>
      <ShortName>21. Suppliers - forfeiting (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Suppliers-Forfeiting</ParentRole>
      <Position>121</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R122.htm</HtmlFileName>
      <LongName>00000122 - Disclosure - 22. Taxes payable (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TaxesPayableDetails</Role>
      <ShortName>22. Taxes payable (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/TaxesPayableTables</ParentRole>
      <Position>122</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R123.htm</HtmlFileName>
      <LongName>00000123 - Disclosure - 23. Air traffic liability (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/AirTrafficLiabilityDetailsNarrative</Role>
      <ShortName>23. Air traffic liability (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/AirTrafficLiability</ParentRole>
      <Position>123</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R124.htm</HtmlFileName>
      <LongName>00000124 - Disclosure - 24. Provisions (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/ProvisionsDetails</Role>
      <ShortName>24. Provisions (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/ProvisionsTables</ParentRole>
      <Position>124</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R125.htm</HtmlFileName>
      <LongName>00000125 - Disclosure - 24. Provisions (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/ProvisionsDetails1</Role>
      <ShortName>24. Provisions (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/ProvisionsTables</ParentRole>
      <Position>125</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R126.htm</HtmlFileName>
      <LongName>00000126 - Disclosure - 24. Provisions (Details 2)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/ProvisionsDetails2</Role>
      <ShortName>24. Provisions (Details 2)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/ProvisionsTables</ParentRole>
      <Position>126</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R127.htm</HtmlFileName>
      <LongName>00000127 - Disclosure - 24. Provisions (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/ProvisionsDetailsNarrative</Role>
      <ShortName>24. Provisions (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/ProvisionsTables</ParentRole>
      <Position>127</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R128.htm</HtmlFileName>
      <LongName>00000128 - Disclosure - 25. Shareholders' equity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/ShareholdersEquityDetails</Role>
      <ShortName>25. Shareholders' equity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/ShareholdersEquityTables</ParentRole>
      <Position>128</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R129.htm</HtmlFileName>
      <LongName>00000129 - Disclosure - 25. Shareholders' Equity (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/ShareholdersEquityDetailsNarrative</Role>
      <ShortName>25. Shareholders' Equity (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>129</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R130.htm</HtmlFileName>
      <LongName>00000130 - Disclosure - 26. Earnings (loss) per share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/EarningsLossPerShareDetails</Role>
      <ShortName>26. Earnings (loss) per share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/EarningsLossPerShareTables</ParentRole>
      <Position>130</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R131.htm</HtmlFileName>
      <LongName>00000131 - Disclosure - 27. Share-based payments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Share-basedPaymentsDetails</Role>
      <ShortName>27. Share-based payments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Share-basedPaymentsTables</ParentRole>
      <Position>131</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R132.htm</HtmlFileName>
      <LongName>00000132 - Disclosure - 27. Share-based payments (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Share-basedPaymentsDetails1</Role>
      <ShortName>27. Share-based payments (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Share-basedPaymentsTables</ParentRole>
      <Position>132</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R133.htm</HtmlFileName>
      <LongName>00000133 - Disclosure - 27. Share-based payments (Details 2)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Share-basedPaymentsDetails2</Role>
      <ShortName>27. Share-based payments (Details 2)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Share-basedPaymentsTables</ParentRole>
      <Position>133</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R134.htm</HtmlFileName>
      <LongName>00000134 - Disclosure - 27. Share-based payments (Details 3)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Share-basedPaymentsDetails3</Role>
      <ShortName>27. Share-based payments (Details 3)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Share-basedPaymentsTables</ParentRole>
      <Position>134</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R135.htm</HtmlFileName>
      <LongName>00000135 - Disclosure - 27. Share-based payments (Details 4)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Share-basedPaymentsDetails4</Role>
      <ShortName>27. Share-based payments (Details 4)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Share-basedPaymentsTables</ParentRole>
      <Position>135</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R136.htm</HtmlFileName>
      <LongName>00000136 - Disclosure - 27. Share-based payments (Details 5)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Share-basedPaymentsDetails5</Role>
      <ShortName>27. Share-based payments (Details 5)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Share-basedPaymentsTables</ParentRole>
      <Position>136</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R137.htm</HtmlFileName>
      <LongName>00000137 - Disclosure - 27. Share-based payments (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Share-basedPaymentsDetailsNarrative</Role>
      <ShortName>27. Share-based payments (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Share-basedPaymentsTables</ParentRole>
      <Position>137</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R138.htm</HtmlFileName>
      <LongName>00000138 - Disclosure - 28. Transactions with related parties (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TransactionsWithRelatedPartiesDetails</Role>
      <ShortName>28. Transactions with related parties (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/TransactionsWithRelatedPartiesTables</ParentRole>
      <Position>138</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R139.htm</HtmlFileName>
      <LongName>00000139 - Disclosure - 28. Transactions with related parties (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TransactionsWithRelatedPartiesDetails1</Role>
      <ShortName>28. Transactions with related parties (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/TransactionsWithRelatedPartiesTables</ParentRole>
      <Position>139</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R140.htm</HtmlFileName>
      <LongName>00000140 - Disclosure - 28. Transactions with related parties (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/TransactionsWithRelatedPartiesDetailsNarrative</Role>
      <ShortName>28. Transactions with related parties (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/TransactionsWithRelatedPartiesTables</ParentRole>
      <Position>140</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R141.htm</HtmlFileName>
      <LongName>00000141 - Disclosure - 29. Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/RevenueDetails</Role>
      <ShortName>29. Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/RevenueTables</ParentRole>
      <Position>141</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R142.htm</HtmlFileName>
      <LongName>00000142 - Disclosure - 29. Revenue (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/RevenueDetails1</Role>
      <ShortName>29. Revenue (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/RevenueTables</ParentRole>
      <Position>142</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R143.htm</HtmlFileName>
      <LongName>00000143 - Disclosure - 29. Revenue (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/RevenueDetailsNarrative</Role>
      <ShortName>29. Revenue (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/RevenueTables</ParentRole>
      <Position>143</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R144.htm</HtmlFileName>
      <LongName>00000144 - Disclosure - 30. Financial income (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialIncomeDetails</Role>
      <ShortName>30. Financial income (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialIncomeExpensesTables</ParentRole>
      <Position>144</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R145.htm</HtmlFileName>
      <LongName>00000145 - Disclosure - 31. Segments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SegmentsDetails</Role>
      <ShortName>31. Segments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SegmentsTables</ParentRole>
      <Position>145</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R146.htm</HtmlFileName>
      <LongName>00000146 - Disclosure - 31. Segments (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SegmentsDetails1</Role>
      <ShortName>31. Segments (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SegmentsTables</ParentRole>
      <Position>146</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R147.htm</HtmlFileName>
      <LongName>00000147 - Disclosure - 31. Segments (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SegmentsDetailsNarrative</Role>
      <ShortName>31. Segments (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SegmentsTables</ParentRole>
      <Position>147</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R148.htm</HtmlFileName>
      <LongName>00000148 - Disclosure - 32. Commitments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/CommitmentsDetails</Role>
      <ShortName>32. Commitments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/CommitmentsTables</ParentRole>
      <Position>148</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R149.htm</HtmlFileName>
      <LongName>00000149 - Disclosure - 32. Commitments (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/CommitmentsDetailsNarrative</Role>
      <ShortName>32. Commitments (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/CommitmentsTables</ParentRole>
      <Position>149</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R150.htm</HtmlFileName>
      <LongName>00000150 - Disclosure - 33. Financial instruments and risk management (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementDetails</Role>
      <ShortName>33. Financial instruments and risk management (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementTables</ParentRole>
      <Position>150</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R151.htm</HtmlFileName>
      <LongName>00000151 - Disclosure - 33. Financial instruments and risk management (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementDetails1</Role>
      <ShortName>33. Financial instruments and risk management (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementTables</ParentRole>
      <Position>151</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R152.htm</HtmlFileName>
      <LongName>00000152 - Disclosure - 33. Financial instruments and risk management (Details 2)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementDetails2</Role>
      <ShortName>33. Financial instruments and risk management (Details 2)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementTables</ParentRole>
      <Position>152</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R153.htm</HtmlFileName>
      <LongName>00000153 - Disclosure - 33. Financial instruments and risk management (Details 3)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementDetails3</Role>
      <ShortName>33. Financial instruments and risk management (Details 3)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementTables</ParentRole>
      <Position>153</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R154.htm</HtmlFileName>
      <LongName>00000154 - Disclosure - 33. Financial instruments and risk management (Details 4)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementDetails4</Role>
      <ShortName>33. Financial instruments and risk management (Details 4)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementTables</ParentRole>
      <Position>154</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R155.htm</HtmlFileName>
      <LongName>00000155 - Disclosure - 33. Financial instruments and risk management (Details 5)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementDetails5</Role>
      <ShortName>33. Financial instruments and risk management (Details 5)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementTables</ParentRole>
      <Position>155</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R156.htm</HtmlFileName>
      <LongName>00000156 - Disclosure - 33. Financial instruments and risk management (Details 6)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementDetails6</Role>
      <ShortName>33. Financial instruments and risk management (Details 6)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementTables</ParentRole>
      <Position>156</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R157.htm</HtmlFileName>
      <LongName>00000157 - Disclosure - 33. Financial instruments and risk management (Details 7)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementDetails7</Role>
      <ShortName>33. Financial instruments and risk management (Details 7)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementTables</ParentRole>
      <Position>157</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R158.htm</HtmlFileName>
      <LongName>00000158 - Disclosure - 33. Financial instruments and risk management (Details 8)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementDetails8</Role>
      <ShortName>33. Financial instruments and risk management (Details 8)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementTables</ParentRole>
      <Position>158</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R159.htm</HtmlFileName>
      <LongName>00000159 - Disclosure - 33. Financial instruments and risk management (Details 9)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementDetails9</Role>
      <ShortName>33. Financial instruments and risk management (Details 9)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementTables</ParentRole>
      <Position>159</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R160.htm</HtmlFileName>
      <LongName>00000160 - Disclosure - 33. Financial instruments and risk management (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementDetailsNarrative</Role>
      <ShortName>33. Financial instruments and risk management (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/FinancialInstrumentsAndRiskManagementTables</ParentRole>
      <Position>160</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R161.htm</HtmlFileName>
      <LongName>00000161 - Disclosure - 34. Non-cash Transactions (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/Non-cashTransactionsDetails</Role>
      <ShortName>34. Non-cash Transactions (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/Non-cashTransactionsTables</ParentRole>
      <Position>161</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R162.htm</HtmlFileName>
      <LongName>00000162 - Disclosure - 35. Liabilities from Financing Activities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/LiabilitiesFromFinancingActivitiesDetails</Role>
      <ShortName>35. Liabilities from Financing Activities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>162</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R163.htm</HtmlFileName>
      <LongName>00000163 - Disclosure - 36. Insurance Coverage (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/InsuranceCoverageDetails</Role>
      <ShortName>36. Insurance Coverage (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>163</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R164.htm</HtmlFileName>
      <LongName>00000164 - Disclosure - 36. Insurance coverage (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/InsuranceCoverageDetailsNarrative</Role>
      <ShortName>36. Insurance coverage (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/InsuranceCoverageTables</ParentRole>
      <Position>164</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R165.htm</HtmlFileName>
      <LongName>00000165 - Disclosure - 37. Subsequent events (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SubsequentEventsDetails</Role>
      <ShortName>37. Subsequent events (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SubsequentEventsTables</ParentRole>
      <Position>165</Position>
    </Report>
    <Report instance="gol-20191231.xml">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R166.htm</HtmlFileName>
      <LongName>00000166 - Disclosure - 37. Subsequent events (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://voegol.com.br/role/SubsequentEventsDetailsNarrative</Role>
      <ShortName>37. Subsequent events (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://voegol.com.br/role/SubsequentEventsTables</ParentRole>
      <Position>166</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File>gol-20191231.xml</File>
    <File>gol-20191231.xsd</File>
    <File>gol-20191231_cal.xml</File>
    <File>gol-20191231_def.xml</File>
    <File>gol-20191231_lab.xml</File>
    <File>gol-20191231_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>img01.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy>http://fasb.org/srt/2019-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.ifrs.org/taxonomy/2019-03-27/ifrs-full</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/dei/2019-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/country/2017-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/currency/2019-01-31</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
