<?xml version="1.0" encoding="utf-8"?>
<InstanceReport xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Version>2.0.0.10</Version>
  <hasSegments>false</hasSegments>
  <ReportName>Subsequent events</ReportName>
  <ReportLongName>0226 - Disclosure - Subsequent events</ReportLongName>
  <DisplayLabelColumn>true</DisplayLabelColumn>
  <ShowElementNames>false</ShowElementNames>
  <RoundingOption />
  <HasEmbeddedReports>false</HasEmbeddedReports>
  <Columns>
    <Column>
      <LabelColumn>false</LabelColumn>
      <Id>1</Id>
      <Labels>
        <Label Id="1" Label="12 Months Ended" />
        <Label Id="2" Label="Dec. 31, 2009" />
      </Labels>
      <CurrencyCode>usd</CurrencyCode>
      <CurrencySymbol>$</CurrencySymbol>
      <FootnoteIndexer />
      <hasSegments>false</hasSegments>
      <hasScenarios>false</hasScenarios>
      <Segments />
      <Scenarios />
      <Units>
        <Unit>
          <UnitID>USD</UnitID>
          <UnitType>Standard</UnitType>
          <StandardMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/iso4217</MeasureSchema>
            <MeasureValue>USD</MeasureValue>
            <MeasureNamespace>iso4217</MeasureNamespace>
          </StandardMeasure>
          <Scale>0</Scale>
        </Unit>
        <Unit>
          <UnitID>USDEPS</UnitID>
          <UnitType>Divide</UnitType>
          <NumeratorMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/iso4217</MeasureSchema>
            <MeasureValue>USD</MeasureValue>
            <MeasureNamespace>iso4217</MeasureNamespace>
          </NumeratorMeasure>
          <DenominatorMeasure>
            <MeasureSchema>http://www.xbrl.org/2003/instance</MeasureSchema>
            <MeasureValue>shares</MeasureValue>
            <MeasureNamespace>xbrli</MeasureNamespace>
          </DenominatorMeasure>
          <Scale>0</Scale>
        </Unit>
      </Units>
    </Column>
  </Columns>
  <Rows>
    <Row>
      <Id>2</Id>
      <Label>Subsequent events [Abstract]</Label>
      <Level>0</Level>
      <ElementName>vale_SubsequentEventsAbstract</ElementName>
      <ElementPrefix>vale</ElementPrefix>
      <IsBaseElement>false</IsBaseElement>
      <BalanceType>na</BalanceType>
      <PeriodType>duration</PeriodType>
      <ElementDataType>string</ElementDataType>
      <ShortDefinition>No definition available.</ShortDefinition>
      <IsReportTitle>false</IsReportTitle>
      <IsSegmentTitle>false</IsSegmentTitle>
      <IsSubReportEnd>false</IsSubReportEnd>
      <IsCalendarTitle>false</IsCalendarTitle>
      <IsTuple>false</IsTuple>
      <IsAbstractGroupTitle>true</IsAbstractGroupTitle>
      <IsEquityPrevioslyReportedAsRow>false</IsEquityPrevioslyReportedAsRow>
      <IsEquityAdjustmentRow>false</IsEquityAdjustmentRow>
      <IsBeginningBalance>false</IsBeginningBalance>
      <IsEndingBalance>false</IsEndingBalance>
      <IsReverseSign>false</IsReverseSign>
      <PreferredLabelRole />
      <IsEPS>false</IsEPS>
      <FootnoteIndexer />
      <Cells>
        <Cell>
          <Id>1</Id>
          <ShowCurrencySymbol>false</ShowCurrencySymbol>
          <IsNumeric>false</IsNumeric>
          <IsRatio>false</IsRatio>
          <DisplayZeroAsNone>false</DisplayZeroAsNone>
          <NumericAmount>0</NumericAmount>
          <RoundedNumericAmount>0</RoundedNumericAmount>
          <NonNumbericText />
          <NonNumericTextHeader />
          <FootnoteIndexer />
          <hasSegments>false</hasSegments>
          <hasScenarios>false</hasScenarios>
          <DisplayDateInUSFormat>false</DisplayDateInUSFormat>
        </Cell>
      </Cells>
      <OriginalInstanceReportColumns />
      <ElementDefenition>No definition available.</ElementDefenition>
      <IsTotalLabel>false</IsTotalLabel>
    </Row>
    <Row>
      <Id>3</Id>
      <Label>Subsequent events</Label>
      <Level>1</Level>
      <ElementName>us-gaap_ScheduleOfSubsequentEventsTextBlock</ElementName>
      <ElementPrefix>us-gaap</ElementPrefix>
      <IsBaseElement>true</IsBaseElement>
      <BalanceType>na</BalanceType>
      <PeriodType>duration</PeriodType>
      <ElementDataType>string</ElementDataType>
      <ShortDefinition>No definition available.</ShortDefinition>
      <IsReportTitle>false</IsReportTitle>
      <IsSegmentTitle>false</IsSegmentTitle>
      <IsSubReportEnd>false</IsSubReportEnd>
      <IsCalendarTitle>false</IsCalendarTitle>
      <IsTuple>false</IsTuple>
      <IsAbstractGroupTitle>false</IsAbstractGroupTitle>
      <IsEquityPrevioslyReportedAsRow>false</IsEquityPrevioslyReportedAsRow>
      <IsEquityAdjustmentRow>false</IsEquityAdjustmentRow>
      <IsBeginningBalance>false</IsBeginningBalance>
      <IsEndingBalance>false</IsEndingBalance>
      <IsReverseSign>false</IsReverseSign>
      <PreferredLabelRole>verboselabel</PreferredLabelRole>
      <IsEPS>false</IsEPS>
      <FootnoteIndexer />
      <Cells>
        <Cell>
          <Id>1</Id>
          <ShowCurrencySymbol>false</ShowCurrencySymbol>
          <IsNumeric>false</IsNumeric>
          <IsRatio>false</IsRatio>
          <DisplayZeroAsNone>false</DisplayZeroAsNone>
          <NumericAmount>0</NumericAmount>
          <RoundedNumericAmount>0</RoundedNumericAmount>
          <NonNumbericText>&lt;!--DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" --&gt;
   &lt;!-- Begin Block Tagged Note 26 - us-gaap:ScheduleOfSubsequentEventsTextBlock--&gt;
   &lt;div style="margin-left: 0%"&gt;
   &lt;div style="margin-top: 12pt; font-size: 1pt"&gt;&amp;#160;
   &lt;/div&gt;
   &lt;table width="100%" border="0" cellpadding="0" cellspacing="0" style="font-size: 10pt; font-family: Arial, Helvetica; color: #000000; background: #ffffff; text-align: left"&gt;
   &lt;tr&gt;
       &lt;td width="3%"&gt;&lt;/td&gt;
       &lt;td width="97%"&gt;&lt;/td&gt;
   &lt;/tr&gt;
   &lt;tr valign="top"&gt;
       &lt;td&gt;
       &lt;b&gt;&lt;font style="font-family: Arial, Helvetica"&gt;26&amp;#160;&lt;/font&gt;&lt;/b&gt;
   &lt;/td&gt;
       &lt;td&gt;
       &lt;b&gt;&lt;font style="font-family: Arial, Helvetica"&gt;Subsequent
       events&lt;/font&gt;&lt;/b&gt;
   &lt;/td&gt;
   &lt;/tr&gt;
   &lt;/table&gt;
   &lt;div style="margin-top: 6pt; font-size: 1pt"&gt;&amp;#160;
   &lt;/div&gt;
   &lt;div align="left" style="margin-left: 3%; margin-right: 0%; text-indent: 0%; font-size: 10pt; font-family: Arial, Helvetica; color: #000000; background: #ffffff"&gt;
       In January, we entered into an agreement, to sell the aluminum
       assets of our wholly-owned subsidiary Valesul Alum&amp;#237;nio S.A,
       located in the State of Rio de Janeiro, Brazil, to Alum&amp;#237;nio
       Nordeste S.A., a company of the Metalis group, for US$31.
   &lt;/div&gt;
   &lt;div style="margin-top: 6pt; font-size: 1pt"&gt;&amp;#160;
   &lt;/div&gt;
   &lt;div align="left" style="margin-left: 3%; margin-right: 0%; text-indent: 0%; font-size: 10pt; font-family: Arial, Helvetica; color: #000000; background: #ffffff"&gt;
       In January we redeemed all outstanding export receivables
       securitization notes issued in September 2000 and July 2003. The
       outstanding principal amounts were US$28 for the September 2000,
       at an interest rate of 8.926% per annum notes due in 2010 and
       US$122 for the July 2003, at an interest rate of 4.43% per annum
       notes due in 2013. Redeemed debt amounts totaled US$150.
   &lt;/div&gt;
   &lt;div style="margin-top: 6pt; font-size: 1pt"&gt;&amp;#160;
   &lt;/div&gt;
   &lt;div align="left" style="margin-left: 3%; margin-right: 0%; text-indent: 0%; font-size: 10pt; font-family: Arial, Helvetica; color: #000000; background: #ffffff"&gt;
       In January we entered into a purchase agreement with Bunge
       Fertilizantes S.A. and Bunge Brasil Holdings B.V. to acquire
       100% of the outstanding shares of Bunge Participa&amp;#231;&amp;#245;es
       e Investimentos S.A. (BPI), the Company which has assets in
       Brazil and investments in Fertifos Administra&amp;#231;&amp;#227;o e
       Participa&amp;#231;&amp;#245;es S.A. (Fertifos), which holds 42.3% of
       Fertilizantes Fosfatados S.A.&amp;#160;&amp;#8211; Fosfertil (Fosfertil),
       for US$3,800, in all cash-transaction. The acquisition is still
       subject to conditions precedent such as approvals from
       governmental regulatory agencies. Also, as part of this
       acquisition we entered into option contracts to buy the
       additional shares of Fertifos Administra&amp;#231;&amp;#227;o e
       Participa&amp;#231;&amp;#245;es S.A. (Fertifos) with Fertilizantes
       Heringer S.A.&amp;#160;&amp;#8211; Heringer (strike price US$2) ,
       Fertilizantes do Paran&amp;#225; Ltda.&amp;#160;&amp;#8211; Fertipar (strike
       price US$40) and Yara Brasil Fertilizantes S.A. (strike price
       US$785). These contracts give us the right to acquire 16.3% of
       Fosfertil shares and are subject to certain conditions, among
       them, the effective acquisition of the fertilizer assets of
       Bunge Group in Brazil. Control over these businesses have not
       been obtained when these financial statements were approved to
       be issued.
   &lt;/div&gt;
   &lt;/div&gt;
</NonNumbericText>
          <NonNumericTextHeader>&lt;!--DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" --&gt;
   &lt;!-- Begin Block Tagged Note</NonNumericTextHeader>
          <FootnoteIndexer />
          <hasSegments>false</hasSegments>
          <hasScenarios>false</hasScenarios>
          <DisplayDateInUSFormat>false</DisplayDateInUSFormat>
        </Cell>
      </Cells>
      <OriginalInstanceReportColumns />
      <ElementDefenition>Describes disclosed significant events or transactions that occurred after the balance sheet date, but before the issuance of the financial statements. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, losses resulting from fire or flood, losses on receivables, significant realized and unrealized gains and losses that result from changes in quoted market prices of securities, declines in market prices of inventory, changes in authorized or issued debt (SEC), significant foreign exchange rate changes, substantial loans to insiders or affiliates, significant long-term investments, and substantial dividends not in the ordinary course of business.</ElementDefenition>
      <ElementReferences>Reference 1: http://www.xbrl.org/2003/role/presentationRef
 -Publisher FASB
 -Name Statement of Financial Accounting Standard (FAS)
 -Number 5
 -Paragraph 11

</ElementReferences>
      <IsTotalLabel>false</IsTotalLabel>
    </Row>
  </Rows>
  <Footnotes />
  <ComparabilityReport>false</ComparabilityReport>
  <NumberOfCols>1</NumberOfCols>
  <NumberOfRows>2</NumberOfRows>
  <HasScenarios>false</HasScenarios>
  <MonetaryRoundingLevel>UnKnown</MonetaryRoundingLevel>
  <SharesRoundingLevel>UnKnown</SharesRoundingLevel>
  <PerShareRoundingLevel>UnKnown</PerShareRoundingLevel>
  <HasPureData>false</HasPureData>
  <SharesShouldBeRounded>true</SharesShouldBeRounded>
</InstanceReport>
