Annual report pursuant to Section 13 and 15(d)

Income Taxes - Net Operating Loss and Tax Credit Carryforwards (Details)

v2.4.1.9
Income Taxes - Net Operating Loss and Tax Credit Carryforwards (Details) (USD $)
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Operating Loss Carryforwards [Line Items]    
Deferred Tax Asset $ 9,787,000,000us-gaap_DeferredTaxAssetsOperatingLossCarryforwards $ 10,967,000,000us-gaap_DeferredTaxAssetsOperatingLossCarryforwards
Net operating losses before benefit of federal deductions 1,800,000,000bac_DeferredTaxAssetOperatingLossCarryforwardsBeforeFederalDeductions  
Valuation allowance before considering benefit of federal deductions 708,000,000bac_OperatingLossCarryforwardsValuationAllowanceBeforeFederalDeductions  
Net operating losses – U.S.    
Operating Loss Carryforwards [Line Items]    
Deferred Tax Asset 3,065,000,000us-gaap_DeferredTaxAssetsOperatingLossCarryforwards
/ us-gaap_IncomeTaxAuthorityAxis
= us-gaap_DomesticCountryMember
 
Valuation Allowance 0us-gaap_OperatingLossCarryforwardsValuationAllowance
/ us-gaap_IncomeTaxAuthorityAxis
= us-gaap_DomesticCountryMember
 
Net Deferred Tax Asset 3,065,000,000bac_DeferredTaxAssetsOperatingLossCarryforwardsNetValuationAllowance
/ us-gaap_IncomeTaxAuthorityAxis
= us-gaap_DomesticCountryMember
 
Net operating losses – U.K. and other    
Operating Loss Carryforwards [Line Items]    
Deferred Tax Asset 446,000,000us-gaap_DeferredTaxAssetsOperatingLossCarryforwards
/ us-gaap_IncomeTaxAuthorityAxis
= us-gaap_ForeignCountryMember
 
Valuation Allowance (316,000,000)us-gaap_OperatingLossCarryforwardsValuationAllowance
/ us-gaap_IncomeTaxAuthorityAxis
= us-gaap_ForeignCountryMember
 
Net Deferred Tax Asset 130,000,000bac_DeferredTaxAssetsOperatingLossCarryforwardsNetValuationAllowance
/ us-gaap_IncomeTaxAuthorityAxis
= us-gaap_ForeignCountryMember
 
Net operating losses – U.S. states    
Operating Loss Carryforwards [Line Items]    
Deferred Tax Asset 1,168,000,000us-gaap_DeferredTaxAssetsOperatingLossCarryforwards
/ us-gaap_IncomeTaxAuthorityAxis
= us-gaap_StateAndLocalJurisdictionMember
 
Valuation Allowance (460,000,000)us-gaap_OperatingLossCarryforwardsValuationAllowance
/ us-gaap_IncomeTaxAuthorityAxis
= us-gaap_StateAndLocalJurisdictionMember
 
Net Deferred Tax Asset 708,000,000bac_DeferredTaxAssetsOperatingLossCarryforwardsNetValuationAllowance
/ us-gaap_IncomeTaxAuthorityAxis
= us-gaap_StateAndLocalJurisdictionMember
 
UNITED KINGDOM | Net operating losses – U.K. and other    
Operating Loss Carryforwards [Line Items]    
Deferred Tax Asset 6,276,000,000us-gaap_DeferredTaxAssetsOperatingLossCarryforwards
/ us-gaap_IncomeTaxAuthorityAxis
= us-gaap_ForeignCountryMember
/ us-gaap_StatementGeographicalAxis
= country_GB
 
Valuation Allowance 0us-gaap_OperatingLossCarryforwardsValuationAllowance
/ us-gaap_IncomeTaxAuthorityAxis
= us-gaap_ForeignCountryMember
/ us-gaap_StatementGeographicalAxis
= country_GB
 
Net Deferred Tax Asset 6,276,000,000bac_DeferredTaxAssetsOperatingLossCarryforwardsNetValuationAllowance
/ us-gaap_IncomeTaxAuthorityAxis
= us-gaap_ForeignCountryMember
/ us-gaap_StatementGeographicalAxis
= country_GB
 
General business credits    
Tax Credit Carryforward [Line Items]    
Deferred Tax Asset 3,383,000,000us-gaap_TaxCreditCarryforwardDeferredTaxAsset
/ us-gaap_TaxCreditCarryforwardAxis
= us-gaap_GeneralBusinessMember
 
Valuation Allowance 0us-gaap_TaxCreditCarryforwardValuationAllowance
/ us-gaap_TaxCreditCarryforwardAxis
= us-gaap_GeneralBusinessMember
 
Net Deferred Tax Asset 3,383,000,000bac_DeferredTaxAssetsTaxCreditCarryforwardsNetValuationAllowance
/ us-gaap_TaxCreditCarryforwardAxis
= us-gaap_GeneralBusinessMember
 
Foreign tax credits    
Tax Credit Carryforward [Line Items]    
Deferred Tax Asset 2,231,000,000us-gaap_TaxCreditCarryforwardDeferredTaxAsset
/ us-gaap_TaxCreditCarryforwardAxis
= bac_ForeignTaxCreditsMember
 
Valuation Allowance (68,000,000)us-gaap_TaxCreditCarryforwardValuationAllowance
/ us-gaap_TaxCreditCarryforwardAxis
= bac_ForeignTaxCreditsMember
 
Net Deferred Tax Asset $ 2,163,000,000bac_DeferredTaxAssetsTaxCreditCarryforwardsNetValuationAllowance
/ us-gaap_TaxCreditCarryforwardAxis
= bac_ForeignTaxCreditsMember