XML 109 R59.htm IDEA: XBRL DOCUMENT
v3.19.3.a.u2

Significant Accounting Policies (Details) - USD ($) $ in Millions |  |  | 12 Months Ended
--- | --- | --- | ---
Jan. 01, 2020 | Jan. 01, 2019 | Dec. 31, 2019 | Dec. 31, 2018 | Dec. 31, 2017
Revenue Recognition [Abstract] |  |  |  |  |
Revenue recognition term of separate and bundled services |  |  | 3 years |  |
Cash Equivalents [Abstract] |  |  |  |  |
Maximum maturity period for highly liquid securities |  |  | 90 days |  |
Pension and Other Postretirement Plans [Abstract] |  |  |  |  |
Percentage recognized as pension expense in the first year |  |  | 60.00% |  |
Percentage of pension expense recognized in each of the next four years |  |  | 10.00% |  |
Subsequent period over which pension expense adjustment is amortized |  |  | 4 years |  |
Percentage of non-US pension benefit obligations related to Canada, United Kingdom and Germany |  |  | 93.00% |  |
Income Taxes [Abstract] |  |  |  |  |
Number of years used for valuation allowance methodology |  |  | 3 years |  |
Minimum threshold to recognize the tax benefit for uncertain tax positions |  |  | 50.00% |  |
Foreign Currency Transactions and Translation [Abstract] |  |  |  |  |
Foreign currency transaction and remeasurement losses |  |  | $ (85) | $ 168 | $ 52
Recently Adopted Accounting Standards and Accounting Standards Not Yet Adopted [Abstract] |  |  |  |  |
Adoption of accounting standards |  |  |  | (1,144) |
Automotive Selling, General and Administrative Expense |  |  |  |  |
Advertising and Promotion Expenditures [Abstract] |  |  |  |  |
Advertising and promotion expenditures |  |  | 3,700 | 4,000 | 4,300
Automotive Cost of Sales |  |  |  |  |
Research and Development Expenditures [Abstract] |  |  |  |  |
Research and development expenditures |  |  | $ 6,800 | $ 7,800 | $ 7,300
GM Financial | Minimum | Vehicles |  |  |  |  |
Equipment on Operating Leases, net [Abstract] |  |  |  |  |
Term of leasing arrangements |  |  | 2 years |  |
GM Financial | Maximum | Vehicles |  |  |  |  |
Equipment on Operating Leases, net [Abstract] |  |  |  |  |
Term of leasing arrangements |  |  | 5 years |  |
GM Financial | Retail Finance Receivables |  |  |  |  |
Revenue Recognition [Abstract] |  |  |  |  |
Period past due threshold for suspending accrual of finance charge income |  |  | 60 days |  |
Finance Receivables [Abstract] |  |  |  |  |
Period past due threshold for charge off of finance receivables |  |  | 120 days |  |
GM Financial | Commercial Finance Receivables |  |  |  |  |
Revenue Recognition [Abstract] |  |  |  |  |
Period past due threshold for suspending accrual of finance charge income |  |  | 90 days |  |
Automotive | Vehicles |  |  |  |  |
Equipment on Operating Leases, net [Abstract] |  |  |  |  |
Term of leasing arrangements |  |  | 7 months |  |
Noncancelable Operating Lease Assets | Accounting Standards Update 2016-02 |  |  |  |  |
Recently Adopted Accounting Standards and Accounting Standards Not Yet Adopted [Abstract] |  |  |  |  |
Adoption of accounting standards |  | $ 1,000 |  |  |
Noncancelable Operating Lease Obligations | Accounting Standards Update 2016-02 |  |  |  |  |
Recently Adopted Accounting Standards and Accounting Standards Not Yet Adopted [Abstract] |  |  |  |  |
Adoption of accounting standards |  | $ 1,000 |  |  |
Forecast | Financing Receivable, Allowance for Credit Loss | Accounting Standards Update 2016-13 |  |  |  |  |
Recently Adopted Accounting Standards and Accounting Standards Not Yet Adopted [Abstract] |  |  |  |  |
Adoption of accounting standards | $ 800 |  |  |  |
Forecast | Retained Earnings | Accounting Standards Update 2016-13 |  |  |  |  |
Recently Adopted Accounting Standards and Accounting Standards Not Yet Adopted [Abstract] |  |  |  |  |
Adoption of accounting standards | $ (600) |  |  |  |

X
- Definition Equipment on Operating Leases, net [Abstract] + References No definition available. + Details
Name: | gm_EquipmentOnOperatingLeasesNetAbstract
Namespace Prefix: | gm_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The aggregate realized and unrealized foreign currency transaction gain or loss, net (pretax) or remeasurement gain or loss, net (pretax) included in determining net income for the reporting period. Represents the aggregate of gains or losses, net, on foreign currency transactions that are unsettled as of the balance sheet date, which is therefore an adjustment to reconcile income or loss from continuing operations to net cash provided by or used in continuing operations. Also includes the gains or losses associated with remeasuring foreign currency denominated entities into the functional currency of those entities. Excludes foreign currency transactions designated as hedges of net investment in a foreign entity. + References No definition available. + Details
Name: | gm_ForeignCurrencyRemeasurementandTransactionGainsLosses
Namespace Prefix: | gm_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Maximum period past due before the accrual of finance charge income is suspended. + References No definition available. + Details
Name: | gm_MaximumPeriodPastDuebeforeSuspensionofAccrualofFinanceChargeIncome
Namespace Prefix: | gm_
Data Type: | us-types:durationStringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Maximum original maturity period threshold for securities that are considered highly liquid. 'P90D' represents the reported fact of 90 days. + References No definition available. + Details
Name: | gm_Maximummaturityperiodforhighlyliquidsecurities
Namespace Prefix: | gm_
Data Type: | us-types:durationStringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Percentage threshold applied to uncertain tax positions to determine recognition of the tax benefit. If greater than this percentage, the largest amount of the tax benefit will be recognized. + References No definition available. + Details
Name: | gm_MinimumPercentageThresholdToRecognizeTheTaxBenefitForUncertainTaxPositions
Namespace Prefix: | gm_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Percentage of benefit obligation for pension plans of Canada, the United Kingdom and Germany to the total non- U.S. pension benefit obligation. + References No definition available. + Details
Name: | gm_PercentageOfBenefitObligationForPensionPlansOfCanadaUkAndGermany
Namespace Prefix: | gm_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition An expected return on plan asset methodology is utilized to calculate future pension expense for certain significant funded benefit plans. A market-related value of plan assets methodology is also utilized that averages gains and losses on the plan assets over a period of years to determine future pension expense. The element represents the percentage recognized of the difference between the fair value of assets and the expected calculated value in each of the next four years after the first year. + References No definition available. + Details
Name: | gm_PercentageOfPensionExpenseRecognizedInNextFourYears
Namespace Prefix: | gm_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition An expected return on plan asset methodology is utilized to calculate future pension expense for certain significant funded benefit plans. A market-related value of plan assets methodology is also utilized that averages gains and losses on the plan assets over a period of years to determine future pension expense. The element represents the percentage recognized of the difference between the fair value of assets and the expected calculated value in the first year. + References No definition available. + Details
Name: | gm_PercentageRecognizedAsPensionExpenseInFirstYear
Namespace Prefix: | gm_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition The period of time over which expected expense on pension plan assets is amortized, after the first year. + References No definition available. + Details
Name: | gm_PeriodOfTimeOverWhichPensionExpenseAdjustmentIsAmortized
Namespace Prefix: | gm_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Revenue Recognition, Separate and Bundled Services, Term + References No definition available. + Details
Name: | gm_RevenueRecognitionSeparateandBundledServicesTerm
Namespace Prefix: | gm_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Number of rolling years of actual and current year results utilized as the primary measure of cumulative losses for purposes of establishing the deferred tax asset valuation allowance. + References No definition available. + Details
Name: | gm_ValuationAllowanceMethodologyNumberOfYearsUtilized
Namespace Prefix: | gm_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_CashAndCashEquivalentsAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_DeferredTaxAssetsNetAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_DefinedBenefitPlanAssumptionsUsedInCalculationsAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Threshold period for when financing receivable is considered past due to write off as uncollectible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 326 -SubTopic 20 -Section 50 -Paragraph 14 -URI http://asc.fasb.org/extlink&oid=119407570&loc=SL82919253-210447 + Details
Name: | us-gaap_FinancingReceivableThresholdPeriodPastDueWriteoff
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | instant

X
- References No definition available. + Details
Name: | us-gaap_ForeignCurrencyAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Term of lessor's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 30 -Section 50 -Paragraph 3 -Subparagraph (a)(3) -URI http://asc.fasb.org/extlink&oid=119202524&loc=SL77919359-209981 + Details
Name: | us-gaap_LessorOperatingLeaseTermOfContract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | instant

X
- Definition The total expense recognized in the period for promotion, public relations, and brand or product advertising. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03.4) -URI http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227 + Details
Name: | us-gaap_MarketingAndAdvertisingExpense
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_MarketingAndAdvertisingExpenseAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Represents the quantification of the effect of adopting the new accounting standard or change in accounting principle expected by the entity to have a significant effect on the entity's financial statements. + References No definition available. + Details
Name: | us-gaap_NewAccountingPronouncementOrChangeInAccountingPrincipleEffectOfAdoptionQuantification
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_NotesReceivableNetAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 985 -SubTopic 20 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 730 -SubTopic 10 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373 + Details
Name: | us-gaap_ResearchAndDevelopmentExpense
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_ResearchAndDevelopmentExpenseAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_RevenueRecognitionAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

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

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember
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: |

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_MajorPropertyClassAxis=us-gaap_VehiclesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivablePortfolioSegmentAxis=us-gaap_ConsumerPortfolioSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivablePortfolioSegmentAxis=us-gaap_CommercialPortfolioSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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

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

X
- Details
Name: | us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201602Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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

X
- Details
Name: | srt_StatementScenarioAxis=srt_ScenarioForecastMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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

X
- Details
Name: | us-gaap_AdjustmentsForNewAccountingPronouncementsAxis=us-gaap_AccountingStandardsUpdate201613Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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