XML 83 R63.htm IDEA: XBRL DOCUMENT
v3.19.3.a.u2

Marketable and Other Securities - Narrative (Details) - USD ($) $ in Millions | 12 Months Ended
--- | ---
Dec. 31, 2019 | Dec. 31, 2018 | Dec. 31, 2017
Marketable Securities [Line Items] |  |  |
Sales proceeds from investments classified as available-for-sale and sold prior to maturity | $ 4,500 | $ 4,300 | $ 5,600
Lyft, Inc. | Level 3 | Interest Income and Other Non-Operating Income |  |  |
Marketable Securities [Line Items] |  |  |
Unrealized gain (loss) on securities |  | 142 |
Other current assets | Lyft, Inc. | Level 1 |  |  |
Marketable Securities [Line Items] |  |  |
Fair value of equity securities | $ 535 |  |
Other assets | Lyft, Inc. | Level 3 |  |  |
Marketable Securities [Line Items] |  |  |
Fair value of equity securities |  | $ 884 |

X
- Definition Amount of investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI). + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 45 -Paragraph 1A -URI http://asc.fasb.org/extlink&oid=99377092&loc=SL75136599-209740 + Details
Name: | us-gaap_EquitySecuritiesFvNi
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of unrealized gain (loss) on investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI). + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 321 -SubTopic 10 -Section 50 -Paragraph 4 -URI http://asc.fasb.org/extlink&oid=116654751&loc=SL75117546-209714 + Details
Name: | us-gaap_EquitySecuritiesFvNiUnrealizedGainLoss
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

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_MarketableSecuritiesLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of cash inflow from sale of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 320 -SubTopic 10 -Section 45 -Paragraph 11 -URI http://asc.fasb.org/extlink&oid=118954083&loc=d3e26853-111562 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 11 -URI http://asc.fasb.org/extlink&oid=118932676&loc=d3e3151-108585 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 12 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=118932676&loc=d3e3179-108585 + Details
Name: | us-gaap_ProceedsFromSaleOfAvailableForSaleSecuritiesDebt
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Details
Name: | srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=gm_LyftInc.Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=gm_InterestIncomeandOtherNonOperatingIncomeMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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

X
- Details
Name: | us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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