XML 156 R143.htm IDEA: XBRL DOCUMENT
v3.19.1

Net Revenue - Summary of Disaggregation of Revenue from Contracts with Customers Based on Resolution (Detail) $ in Millions | 12 Months Ended
--- | ---
Dec. 31, 2018 TWD ($)
Disclosure of disaggregation of revenue from contracts with customers [line items] |
Revenue from contracts with customers | $ 1,031,473.6
Wafer [member] |
Disclosure of disaggregation of revenue from contracts with customers [line items] |
Revenue from contracts with customers | 911,296.4
Wafer [member] | 7-nanometer [member] |
Disclosure of disaggregation of revenue from contracts with customers [line items] |
Revenue from contracts with customers | 81,680.7
Wafer [member] | 10-nanometer [member] |
Disclosure of disaggregation of revenue from contracts with customers [line items] |
Revenue from contracts with customers | 96,989.5
Wafer [member] | 16/20-nanometer [member] |
Disclosure of disaggregation of revenue from contracts with customers [line items] |
Revenue from contracts with customers | 210,989.0
Wafer [member] | 28-nanometer [member] |
Disclosure of disaggregation of revenue from contracts with customers [line items] |
Revenue from contracts with customers | 178,440.4
Wafer [member] | 40/45-nanometer [member] |
Disclosure of disaggregation of revenue from contracts with customers [line items] |
Revenue from contracts with customers | 101,801.0
Wafer [member] | 65-nanometer [member] |
Disclosure of disaggregation of revenue from contracts with customers [line items] |
Revenue from contracts with customers | 76,122.3
Wafer [member] | 90-nanometer [member] |
Disclosure of disaggregation of revenue from contracts with customers [line items] |
Revenue from contracts with customers | 36,652.1
Wafer [member] | 0.11/0.13 micron [member] |
Disclosure of disaggregation of revenue from contracts with customers [line items] |
Revenue from contracts with customers | 20,677.7
Wafer [member] | 0.15/0.18 micron [member] |
Disclosure of disaggregation of revenue from contracts with customers [line items] |
Revenue from contracts with customers | 81,182.6
Wafer [member] | 0.25 micron and above [member] |
Disclosure of disaggregation of revenue from contracts with customers [line items] |
Revenue from contracts with customers | $ 26,761.1

X
- Definition Line items represent concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes of the table. + References No definition available. + Details
Name: | ifrs-full_DisclosureOfDisaggregationOfRevenueFromContractsWithCustomersLineItems
Namespace Prefix: | ifrs-full_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The amount of revenue from contracts with customers. A customer is a party that has contracted with an entity to obtain goods or services that are an output of the entity’s ordinary activities in exchange for consideration. [Refer: Revenue] + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Name IFRS -Number 15 -IssueDate 2018-01-01 -Paragraph 113 -Subparagraph a -URI http://eifrs.ifrs.org/eifrs/XBRL?type=IFRS&num=15&date=2018-03-01&anchor=para_113_a&doctype=Standard -URIDate 2018-03-16 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Name IFRS -Number 15 -IssueDate 2018-01-01 -Paragraph 114 -URI http://eifrs.ifrs.org/eifrs/XBRL?type=IFRS&num=15&date=2018-03-01&anchor=para_114&doctype=Standard -URIDate 2018-03-16 + Details
Name: | ifrs-full_RevenueFromContractsWithCustomers
Namespace Prefix: | ifrs-full_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Details
Name: | ifrs-full_ProductsAndServicesAxis=tsm_WaferMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ifrs-full_MeasurementAxis=tsm_SevenNanometerMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ifrs-full_MeasurementAxis=tsm_TenNanometerMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ifrs-full_MeasurementAxis=tsm_SixteenToTwentyNanometerMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ifrs-full_MeasurementAxis=tsm_TwentyEightNanometerMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ifrs-full_MeasurementAxis=tsm_FortyToFortyFiveNanometerMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ifrs-full_MeasurementAxis=tsm_SixtyFiveNanometerMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ifrs-full_MeasurementAxis=tsm_NinetyNanometerMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ifrs-full_MeasurementAxis=tsm_ZeroPointOneOneToZeroPointOneThreeMicronMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ifrs-full_MeasurementAxis=tsm_ZeroPointOneFiveToZeroPointOneEightMicronMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ifrs-full_MeasurementAxis=tsm_ZeroPointTwoFiveMicronAndAboveMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |