XML 78 R66.htm IDEA: XBRL DOCUMENT
v3.20.2

Derivative Financial Instruments - Balance Sheet Location of GM Financial Unsecured Debt (Details) - Fair Value Hedges [Member] - Long-term Debt [Member] - GM Financial [Member] - USD ($) $ in Millions | Jun. 30, 2020 | Dec. 31, 2019
--- | --- | ---
Derivatives, Fair Value [Line Items] |  |
Carrying Amount of Hedged Items | $ 24,203 | $ 20,397
Cumulative Amount of Fair Value Hedging Adjustments on Hedging Relationships | $ (648) | $ (77)

X
- Definition Derivative Liabilities, Fair Value Adjustment + References No definition available. + Details
Name: | gm_DerivativeLiabilitiesFairValueAdjustment
Namespace Prefix: | gm_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

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

X
- Definition Amount of liability hedged in fair value hedging relationship. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 815 -SubTopic 10 -Section 50 -Paragraph 4EE -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=121590274&loc=SL109999712-113959 + Details
Name: | us-gaap_HedgedLiabilityFairValueHedge
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Details
Name: | us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_FairValueHedgingMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BalanceSheetLocationAxis=us-gaap_LongTermDebtMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | gm_BusinessGroupAxis=gm_GmFinancialMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |