Fair Value Measurements - Recurring Fair Value (Details) (USD $) In Millions, unless otherwise specified
|
Dec. 31, 2014
|
Dec. 31, 2013
|
Dec. 31, 2012
|
Financial assets |
|
|
|
Federal funds sold and securities borrowed or purchased under agreements to resell |
$ 62,182us-gaap_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellFairValueDisclosure
|
$ 68,656us-gaap_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellFairValueDisclosure
|
|
Trading account assets |
191,785us-gaap_TradingSecurities
|
200,993us-gaap_TradingSecurities
|
|
Gross Derivative Assets |
984,800us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement
|
920,300us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement
|
|
Derivative assets |
52,682us-gaap_DerivativeAssets
|
47,495us-gaap_DerivativeAssets
|
|
Total available-for-sale debt securities |
284,274us-gaap_AvailableForSaleSecuritiesDebtSecurities
|
235,951us-gaap_AvailableForSaleSecuritiesDebtSecurities
|
|
Other debt securities carried at fair value |
36,421bac_OtherDebtSecuritiesCarriedAtFairValue
|
32,844bac_OtherDebtSecuritiesCarriedAtFairValue
|
|
Loans and leases |
8,681us-gaap_LoansReceivableFairValueDisclosure
|
10,042us-gaap_LoansReceivableFairValueDisclosure
|
|
Mortgage servicing rights |
3,530us-gaap_ServicingAssetAtFairValueAmount
|
5,042us-gaap_ServicingAssetAtFairValueAmount
|
5,716us-gaap_ServicingAssetAtFairValueAmount
|
Loans held-for-sale |
6,801us-gaap_LoansHeldForSaleFairValueDisclosure
|
6,656us-gaap_LoansHeldForSaleFairValueDisclosure
|
|
Other assets |
13,873us-gaap_OtherAssetsFairValueDisclosure
|
18,055us-gaap_OtherAssetsFairValueDisclosure
|
|
Liabilities |
|
|
|
Interest-bearing deposits in U.S. offices |
1,469bac_InterestbearingDepositLiabilitiesDomesticFairValueDisclosure
|
1,899bac_InterestbearingDepositLiabilitiesDomesticFairValueDisclosure
|
|
Federal funds purchased and securities loaned or sold under agreements to repurchase, measured at fair value |
35,357us-gaap_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseFairValueDisclosure
|
26,500us-gaap_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseFairValueDisclosure
|
|
Gross Derivative Liabilities |
981,800us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement
|
906,400us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement
|
|
Derivative Liability |
46,909us-gaap_DerivativeLiabilities
|
37,407us-gaap_DerivativeLiabilities
|
|
Short-term borrowings |
2,697us-gaap_ShorttermDebtFairValue
|
1,520us-gaap_ShorttermDebtFairValue
|
|
Long-term debt |
36,404us-gaap_LongTermDebtFairValue
|
47,035us-gaap_LongTermDebtFairValue
|
|
Assets and Liabilities, Recurring Basis, Supplemental Information: |
|
|
|
Assets transferred from Level 1 to Level 2 |
4,100us-gaap_FairValueAssetsLevel1ToLevel2TransfersAmount
|
500us-gaap_FairValueAssetsLevel1ToLevel2TransfersAmount
|
|
Liabilities transferred from Level 1 to Level 2 |
570us-gaap_FairValueLiabilitiesLevel1ToLevel2TransfersAmount
|
|
|
U.S. government and government agency securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
69,595us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
8,954us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
|
Other debt securities carried at fair value |
1,541bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
4,062bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
|
Agency |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
165,039us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
164,935us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
|
Other debt securities carried at fair value |
15,704bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
16,500bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
|
Agency-collateralized mortgage obligations |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
14,248us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
22,492us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
|
Other debt securities carried at fair value |
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
218bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
|
Non-agency residential |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
4,454us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
6,239us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
|
Other debt securities carried at fair value |
3,745bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
|
Commercial |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
4,000us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
2,480us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
|
Other debt securities carried at fair value |
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
749bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
|
Other taxable securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
10,791us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
16,830us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
|
Other debt securities carried at fair value |
299bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
|
Tax-exempt securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
9,549us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_TaxExemptSecuritiesMember
|
5,928us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_TaxExemptSecuritiesMember
|
|
US Government-sponsored Enterprises Debt Securities |
|
|
|
Financial assets |
|
|
|
Trading account assets |
17,200us-gaap_TradingSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentSponsoredEnterprisesDebtSecuritiesMember
|
15,600us-gaap_TradingSecurities / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentSponsoredEnterprisesDebtSecuritiesMember
|
|
Recurring |
|
|
|
Financial assets |
|
|
|
Federal funds sold and securities borrowed or purchased under agreements to resell |
62,182us-gaap_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
68,656us-gaap_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Trading account assets |
191,785us-gaap_TradingSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
200,993us-gaap_TradingSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Netting adjustments |
(932,103)us-gaap_DerivativeAssetFairValueGrossLiabilityAndObligationToReturnCashOffset / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
(872,758)us-gaap_DerivativeAssetFairValueGrossLiabilityAndObligationToReturnCashOffset / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Derivative assets |
52,682us-gaap_DerivativeAssets / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
47,495us-gaap_DerivativeAssets / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total available-for-sale debt securities |
284,274us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
235,951us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Other debt securities carried at fair value |
36,421bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
32,844bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Loans and leases |
8,681us-gaap_LoansReceivableFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
10,042us-gaap_LoansReceivableFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Mortgage servicing rights |
3,530us-gaap_ServicingAssetAtFairValueAmount / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
5,042us-gaap_ServicingAssetAtFairValueAmount / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Loans held-for-sale |
6,801us-gaap_LoansHeldForSaleFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
6,656us-gaap_LoansHeldForSaleFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Other assets |
13,873us-gaap_OtherAssetsFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
18,055us-gaap_OtherAssetsFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total assets |
660,229us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
625,734us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Liabilities |
|
|
|
Interest-bearing deposits in U.S. offices |
1,469bac_InterestbearingDepositLiabilitiesDomesticFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
1,899bac_InterestbearingDepositLiabilitiesDomesticFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Federal funds purchased and securities loaned or sold under agreements to repurchase, measured at fair value |
35,357us-gaap_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
26,500us-gaap_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total trading account liabilities |
74,192us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
83,469us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Netting adjustment |
(934,857)us-gaap_DerivativeLiabilityFairValueGrossAssetAndRightToReclaimCashOffset / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
(868,969)us-gaap_DerivativeLiabilityFairValueGrossAssetAndRightToReclaimCashOffset / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Derivative Liability |
46,909us-gaap_DerivativeLiabilities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
37,407us-gaap_DerivativeLiabilities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Short-term borrowings |
2,697us-gaap_ShorttermDebtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
1,520us-gaap_ShorttermDebtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Accrued expenses and other liabilities |
12,055bac_AccruedExpensesandOtherLiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
11,233bac_AccruedExpensesandOtherLiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Long-term debt |
36,404us-gaap_LongTermDebtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
47,035us-gaap_LongTermDebtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total liabilities |
209,083us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
209,063us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Recurring | U.S. government and agency securities |
|
|
|
Financial assets |
|
|
|
Trading account assets |
51,019us-gaap_TradingSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
48,847us-gaap_TradingSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
18,960us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
27,263us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
|
Recurring | Corporate securities, trading loans and other |
|
|
|
Financial assets |
|
|
|
Trading account assets |
35,212us-gaap_TradingSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
32,452us-gaap_TradingSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
7,169us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
6,479us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
|
Recurring | Equity securities |
|
|
|
Financial assets |
|
|
|
Trading account assets |
56,358us-gaap_TradingSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
64,451us-gaap_TradingSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
28,349us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
27,585us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
|
Recurring | Non-U.S. sovereign debt |
|
|
|
Financial assets |
|
|
|
Trading account assets |
36,254us-gaap_TradingSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
37,224us-gaap_TradingSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
19,714us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
22,142us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
|
Recurring | Mortgage trading loans and ABS |
|
|
|
Financial assets |
|
|
|
Trading account assets |
12,942us-gaap_TradingSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
18,019us-gaap_TradingSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
|
Recurring | U.S. government and government agency securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
69,595us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
8,954us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
|
Other debt securities carried at fair value |
1,541bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
4,062bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
|
Recurring | Agency |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
165,039us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
164,935us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
|
Other debt securities carried at fair value |
15,704bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
16,500bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
|
Recurring | Agency-collateralized mortgage obligations |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
14,248us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
22,492us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
|
Other debt securities carried at fair value |
|
218bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
|
Recurring | Non-agency residential |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
4,454us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
6,239us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
|
Other debt securities carried at fair value |
3,745bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
|
|
Recurring | Commercial |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
4,000us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
2,480us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
|
Other debt securities carried at fair value |
|
749bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
|
Recurring | Non-U.S. securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
6,230us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
7,220us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
|
Other debt securities carried at fair value |
15,132bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
11,315bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
|
Recurring | Corporate/Agency bonds |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
368us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CorporateBondSecuritiesMember
|
873us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CorporateBondSecuritiesMember
|
|
Recurring | Other taxable securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
10,791us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
16,830us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
|
Other debt securities carried at fair value |
299bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
|
|
Recurring | Tax-exempt securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
9,549us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_TaxExemptSecuritiesMember
|
5,928us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_TaxExemptSecuritiesMember
|
|
Recurring | Level 1 |
|
|
|
Financial assets |
|
|
|
Federal funds sold and securities borrowed or purchased under agreements to resell |
0us-gaap_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
0us-gaap_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Trading account assets |
87,579us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
101,050us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Gross Derivative Assets |
4,957us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
2,374us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total available-for-sale debt securities |
70,624us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
10,309us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Other debt securities carried at fair value |
14,811bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
11,519bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Loans and leases |
0us-gaap_LoansReceivableFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
0us-gaap_LoansReceivableFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Mortgage servicing rights |
0us-gaap_ServicingAssetAtFairValueAmount / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
0us-gaap_ServicingAssetAtFairValueAmount / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Loans held-for-sale |
0us-gaap_LoansHeldForSaleFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
0us-gaap_LoansHeldForSaleFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Other assets |
11,581us-gaap_OtherAssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
14,474us-gaap_OtherAssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total assets |
189,552us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
139,726us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Liabilities |
|
|
|
Interest-bearing deposits in U.S. offices |
0bac_InterestbearingDepositLiabilitiesDomesticFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
0bac_InterestbearingDepositLiabilitiesDomesticFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Federal funds purchased and securities loaned or sold under agreements to repurchase, measured at fair value |
0us-gaap_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
0us-gaap_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total trading account liabilities |
59,471us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
72,062us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Gross Derivative Liabilities |
4,493us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
1,968us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Short-term borrowings |
0us-gaap_ShorttermDebtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
0us-gaap_ShorttermDebtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Accrued expenses and other liabilities |
10,795bac_AccruedExpensesandOtherLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
10,130bac_AccruedExpensesandOtherLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Long-term debt |
0us-gaap_LongTermDebtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
0us-gaap_LongTermDebtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total liabilities |
74,759us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
84,160us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Recurring | Level 1 | U.S. government and agency securities |
|
|
|
Financial assets |
|
|
|
Trading account assets |
33,470us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
34,222us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
18,514us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
26,915us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
|
Recurring | Level 1 | Corporate securities, trading loans and other |
|
|
|
Financial assets |
|
|
|
Trading account assets |
243us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
1,147us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
189us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
518us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
|
Recurring | Level 1 | Equity securities |
|
|
|
Financial assets |
|
|
|
Trading account assets |
33,518us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
41,324us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
24,679us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
23,874us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
|
Recurring | Level 1 | Non-U.S. sovereign debt |
|
|
|
Financial assets |
|
|
|
Trading account assets |
20,348us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
24,357us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
16,089us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
20,755us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
|
Recurring | Level 1 | U.S. government and government agency securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
67,413us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
6,591us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
|
Other debt securities carried at fair value |
1,541bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
4,062bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
|
Recurring | Level 1 | Agency |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
|
Other debt securities carried at fair value |
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
|
Recurring | Level 1 | Agency-collateralized mortgage obligations |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
|
Other debt securities carried at fair value |
|
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
|
Recurring | Level 1 | Non-agency residential |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
|
Other debt securities carried at fair value |
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
|
|
Recurring | Level 1 | Commercial |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
|
Other debt securities carried at fair value |
|
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
|
Recurring | Level 1 | Non-U.S. securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
3,191us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
3,698us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
|
Other debt securities carried at fair value |
13,270bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
7,457bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
|
Recurring | Level 1 | Corporate/Agency bonds |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CorporateBondSecuritiesMember
|
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CorporateBondSecuritiesMember
|
|
Recurring | Level 1 | Other taxable securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
20us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
20us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
|
Other debt securities carried at fair value |
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
|
|
Recurring | Level 1 | Tax-exempt securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_TaxExemptSecuritiesMember
|
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel1Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_TaxExemptSecuritiesMember
|
|
Recurring | Level 2 |
|
|
|
Financial assets |
|
|
|
Federal funds sold and securities borrowed or purchased under agreements to resell |
62,182us-gaap_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
68,656us-gaap_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Trading account assets |
97,947us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
90,899us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Gross Derivative Assets |
972,977us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
910,602us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total available-for-sale debt securities |
211,095us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
220,882us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Other debt securities carried at fair value |
21,610bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
21,325bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Loans and leases |
6,698us-gaap_LoansReceivableFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
6,985us-gaap_LoansReceivableFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Mortgage servicing rights |
0us-gaap_ServicingAssetAtFairValueAmount / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
|
Loans held-for-sale |
6,628us-gaap_LoansHeldForSaleFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
5,727us-gaap_LoansHeldForSaleFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Other assets |
1,381us-gaap_OtherAssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
1,912us-gaap_OtherAssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total assets |
1,380,518us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
1,326,988us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Liabilities |
|
|
|
Interest-bearing deposits in U.S. offices |
1,469bac_InterestbearingDepositLiabilitiesDomesticFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
1,899bac_InterestbearingDepositLiabilitiesDomesticFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Federal funds purchased and securities loaned or sold under agreements to repurchase, measured at fair value |
35,357us-gaap_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
26,500us-gaap_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total trading account liabilities |
14,685us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
11,372us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Gross Derivative Liabilities |
969,502us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
896,907us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Short-term borrowings |
2,697us-gaap_ShorttermDebtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
1,520us-gaap_ShorttermDebtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Accrued expenses and other liabilities |
1,250bac_AccruedExpensesandOtherLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
1,093bac_AccruedExpensesandOtherLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Long-term debt |
34,042us-gaap_LongTermDebtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
45,045us-gaap_LongTermDebtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total liabilities |
1,059,002us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
984,336us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Recurring | Level 2 | U.S. government and agency securities |
|
|
|
Financial assets |
|
|
|
Trading account assets |
17,549us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
14,625us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
446us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
348us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
|
Recurring | Level 2 | Corporate securities, trading loans and other |
|
|
|
Financial assets |
|
|
|
Trading account assets |
31,699us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
27,746us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
6,944us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
5,926us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
|
Recurring | Level 2 | Equity securities |
|
|
|
Financial assets |
|
|
|
Trading account assets |
22,488us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
22,741us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
3,670us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
3,711us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
|
Recurring | Level 2 | Non-U.S. sovereign debt |
|
|
|
Financial assets |
|
|
|
Trading account assets |
15,332us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
12,399us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
3,625us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
1,387us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
|
Recurring | Level 2 | Mortgage trading loans and ABS |
|
|
|
Financial assets |
|
|
|
Trading account assets |
10,879us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
13,388us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
|
Recurring | Level 2 | U.S. government and government agency securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
2,182us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
2,363us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
|
Other debt securities carried at fair value |
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
|
|
Recurring | Level 2 | Agency |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
165,039us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
164,935us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
|
Other debt securities carried at fair value |
15,704bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
16,500bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
|
Recurring | Level 2 | Agency-collateralized mortgage obligations |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
14,248us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
22,492us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
|
Other debt securities carried at fair value |
|
218bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
|
Recurring | Level 2 | Non-agency residential |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
4,175us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
6,239us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
|
Other debt securities carried at fair value |
3,745bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
|
|
Recurring | Level 2 | Commercial |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
4,000us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
2,480us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
|
Other debt securities carried at fair value |
|
749bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
|
Recurring | Level 2 | Non-U.S. securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
3,029us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
3,415us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
|
Other debt securities carried at fair value |
1,862bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
3,858bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
|
Recurring | Level 2 | Corporate/Agency bonds |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
368us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CorporateBondSecuritiesMember
|
873us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CorporateBondSecuritiesMember
|
|
Recurring | Level 2 | Other taxable securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
9,104us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
12,963us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
|
Other debt securities carried at fair value |
299bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
|
|
Recurring | Level 2 | Tax-exempt securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
8,950us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_TaxExemptSecuritiesMember
|
5,122us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel2Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_TaxExemptSecuritiesMember
|
|
Recurring | Level 3 |
|
|
|
Financial assets |
|
|
|
Federal funds sold and securities borrowed or purchased under agreements to resell |
0us-gaap_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
0us-gaap_FederalFundsSoldAndSecuritiesBorrowedOrPurchasedUnderAgreementsToResellFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Trading account assets |
6,259us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
9,044us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Gross Derivative Assets |
6,851us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
7,277us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
8,100us-gaap_DerivativeAssetFairValueGrossAssetIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
Total available-for-sale debt securities |
2,555us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
4,760us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Other debt securities carried at fair value |
|
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Loans and leases |
1,983us-gaap_LoansReceivableFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
3,057us-gaap_LoansReceivableFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Mortgage servicing rights |
3,530us-gaap_ServicingAssetAtFairValueAmount / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
5,042us-gaap_ServicingAssetAtFairValueAmount / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Loans held-for-sale |
173us-gaap_LoansHeldForSaleFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
929us-gaap_LoansHeldForSaleFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Other assets |
911us-gaap_OtherAssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
1,669us-gaap_OtherAssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total assets |
22,262us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
31,778us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Liabilities |
|
|
|
Interest-bearing deposits in U.S. offices |
0bac_InterestbearingDepositLiabilitiesDomesticFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
0bac_InterestbearingDepositLiabilitiesDomesticFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Federal funds purchased and securities loaned or sold under agreements to repurchase, measured at fair value |
0us-gaap_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
0us-gaap_FederalFundsPurchasedAndSecuritiesLoanedOrSoldUnderAgreementsToRepurchaseFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total trading account liabilities |
36us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
35us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Gross Derivative Liabilities |
7,771us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
7,501us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
6,600us-gaap_DerivativeLiabilityFairValueGrossLiabilityIncludingNotSubjectToMasterNettingArrangement / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
Short-term borrowings |
0us-gaap_ShorttermDebtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
0us-gaap_ShorttermDebtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Accrued expenses and other liabilities |
10bac_AccruedExpensesandOtherLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
10bac_AccruedExpensesandOtherLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Long-term debt |
2,362us-gaap_LongTermDebtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
1,990us-gaap_LongTermDebtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Total liabilities |
10,179us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
9,536us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember
|
|
Recurring | Level 3 | U.S. government and agency securities |
|
|
|
Financial assets |
|
|
|
Trading account assets |
0us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
0us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
|
0us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
|
|
Recurring | Level 3 | Corporate securities, trading loans and other |
|
|
|
Financial assets |
|
|
|
Trading account assets |
3,270us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
3,559us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
|
Total assets |
3,300us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
3,600us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
36us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
35us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_CorporateSecuritiesTradingLoansAndOtherMember
|
|
Recurring | Level 3 | Equity securities |
|
|
|
Financial assets |
|
|
|
Trading account assets |
352us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
386us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
|
0us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_EquitySecuritiesMember
|
|
Recurring | Level 3 | Non-U.S. sovereign debt |
|
|
|
Financial assets |
|
|
|
Trading account assets |
574us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
468us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
|
Total assets |
574us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
468us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
|
Liabilities |
|
|
|
Total trading account liabilities |
|
0us-gaap_TradingLiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignGovernmentDebtSecuritiesMember
|
|
Recurring | Level 3 | Mortgage trading loans and ABS |
|
|
|
Financial assets |
|
|
|
Trading account assets |
2,063us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
4,631us-gaap_TradingSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
|
Total assets |
2,100us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
4,600us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageTradingLoansAndAssetBackedSecuritiesMember
|
|
Recurring | Level 3 | U.S. government and government agency securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
|
Other debt securities carried at fair value |
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_USTreasuryAndGovernmentMember
|
|
|
Recurring | Level 3 | Agency |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
|
Other debt securities carried at fair value |
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyMember
|
|
Recurring | Level 3 | Agency-collateralized mortgage obligations |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
|
|
Other debt securities carried at fair value |
|
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_MortgageBackedSecuritiesAgencyCollateralizedMortgageObligationMember
|
|
Recurring | Level 3 | Non-agency residential |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
279us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
|
Other debt securities carried at fair value |
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ResidentialMortgageBackedSecuritiesMember
|
|
|
Recurring | Level 3 | Commercial |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
|
Other debt securities carried at fair value |
|
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CommercialMortgageBackedSecuritiesMember
|
|
Recurring | Level 3 | Non-U.S. securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
10us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
107us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
|
Other debt securities carried at fair value |
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_ForeignCorporateDebtSecuritiesMember
|
|
Recurring | Level 3 | Corporate/Agency bonds |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CorporateBondSecuritiesMember
|
0us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = us-gaap_CorporateBondSecuritiesMember
|
|
Recurring | Level 3 | Other taxable securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
1,667us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
3,847us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
|
Other debt securities carried at fair value |
0bac_OtherDebtSecuritiesCarriedAtFairValue / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
|
|
Total assets |
1,700us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
3,800us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_OtherTaxableSecuritiesMember
|
|
Recurring | Level 3 | Tax-exempt securities |
|
|
|
Financial assets |
|
|
|
Total available-for-sale debt securities |
599us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_TaxExemptSecuritiesMember
|
806us-gaap_AvailableForSaleSecuritiesDebtSecurities / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_TaxExemptSecuritiesMember
|
|
Total assets |
$ 599us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_TaxExemptSecuritiesMember
|
$ 806us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis = us-gaap_FairValueInputsLevel3Member / us-gaap_FairValueByMeasurementFrequencyAxis = us-gaap_FairValueMeasurementsRecurringMember / us-gaap_MajorTypesOfDebtAndEquitySecuritiesAxis = bac_TaxExemptSecuritiesMember
|
|