XML 127 R63.htm IDEA: XBRL DOCUMENT v2.4.1.9
Asset Quality - Changes in Allowance for Loan and Lease Losses by Loan Category (Detail) (USD $)
In Millions, unless otherwise specified
3 Months Ended
Mar. 31, 2015
Mar. 31, 2014
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance $ 823us-gaap_FinancingReceivableAllowanceForCreditLosses $ 887us-gaap_FinancingReceivableAllowanceForCreditLosses
Provision 30us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease 10us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
Charge-offs (57)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs (70)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
Recoveries (23)us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery (41)us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
Ending balance 819us-gaap_FinancingReceivableAllowanceForCreditLosses 868us-gaap_FinancingReceivableAllowanceForCreditLosses
Continuing Operations [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 794us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
848us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision 28us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
6us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (47)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(57)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries 19us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
37us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 794us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
834us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Commercial, Financial and Agricultural [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 391us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialFinancialAndAgriculturalMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
362us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialFinancialAndAgriculturalMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision 21us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialFinancialAndAgriculturalMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
13us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialFinancialAndAgriculturalMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (12)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialFinancialAndAgriculturalMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(12)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialFinancialAndAgriculturalMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries 5us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialFinancialAndAgriculturalMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
10us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialFinancialAndAgriculturalMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 405us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialFinancialAndAgriculturalMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
373us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialFinancialAndAgriculturalMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Commercial Real Estate: Commercial Mortgage [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 148us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialRealEstateCommercialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
165us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialRealEstateCommercialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision   (3)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialRealEstateCommercialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (2)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialRealEstateCommercialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(2)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialRealEstateCommercialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries 2us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialRealEstateCommercialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialRealEstateCommercialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 148us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialRealEstateCommercialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
161us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialRealEstateCommercialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Commercial Real Estate Construction Financing Receivable [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 28us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
32us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision 1us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(7)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (1)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(2)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries   14us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 28us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
37us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Commercial Lease Financing [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 56us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialLeaseFinancingMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
62us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialLeaseFinancingMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision (3)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialLeaseFinancingMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialLeaseFinancingMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (2)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialLeaseFinancingMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(3)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialLeaseFinancingMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries 4us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialLeaseFinancingMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
2us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialLeaseFinancingMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 55us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialLeaseFinancingMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
62us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CommercialLeaseFinancingMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Commercial Loans [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 623us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
621us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision 19us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
4us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (17)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(19)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries 11us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
27us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 636us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
633us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Real Estate - Residential Mortgage [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 23us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_RealEstateResidentialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
37us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_RealEstateResidentialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision   (8)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_RealEstateResidentialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (2)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_RealEstateResidentialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(3)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_RealEstateResidentialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries   1us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_RealEstateResidentialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 21us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_RealEstateResidentialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
27us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_RealEstateResidentialMortgageMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Home Equity: Key Community Bank [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 66us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
84us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision (3)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (7)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(10)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries 2us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 58us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
80us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Home Equity: Other [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 5us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityOtherMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
11us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityOtherMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision   2us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityOtherMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (1)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityOtherMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(3)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityOtherMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries 1us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityOtherMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityOtherMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 5us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityOtherMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
11us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityOtherMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Home Equity Loans [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 71us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityLoansMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
95us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityLoansMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision (3)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityLoansMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
5us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityLoansMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (8)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityLoansMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(13)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityLoansMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries 3us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityLoansMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
4us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityLoansMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 63us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityLoansMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
91us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_HomeEquityLoansMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Consumer Other - Key Community Bank [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 22us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
29us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision 3us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
2us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (6)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(8)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries 2us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
2us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 21us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
25us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCommunityBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Credit Cards [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 33us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CreditCardsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
34us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CreditCardsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision 7us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CreditCardsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
4us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CreditCardsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (8)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CreditCardsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(6)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CreditCardsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 32us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CreditCardsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
32us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_CreditCardsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Consumer Marine [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 21us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerMarineMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
29us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerMarineMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision 1us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerMarineMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(2)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerMarineMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (5)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerMarineMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(7)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerMarineMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries 3us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerMarineMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerMarineMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 20us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerMarineMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
23us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerMarineMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Consumer Others [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 1us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOthersMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOthersMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision 1us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOthersMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOthersMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (1)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOthersMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(1)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOthersMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 1us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOthersMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOthersMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Consumer Other - Key Corporate Bank [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 22us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCorporateBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
32us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCorporateBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision 2us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCorporateBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(1)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCorporateBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (6)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCorporateBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(8)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCorporateBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries 3us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCorporateBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCorporateBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 21us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCorporateBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
26us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= key_ConsumerOtherKeyCorporateBankMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Continuing Operations [Member] | Consumer Loans [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 171us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
227us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Provision 9us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
2us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Charge-offs (30)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(38)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Recoveries 8us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
10us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Ending balance 158us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
201us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Discontinued Operations [Member]    
Financing Receivable, Allowance for Credit Losses [Line Items]    
Beginning balance 29us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
39us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
Provision 2us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
4us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
Charge-offs   (13)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
Charge-offs (10)key_FinancingReceivableAllowanceForCreditLossesRecoveriesAlllIncludingDiscontinuedOperations
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
 
Recoveries (4)us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
(4)us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
Ending balance $ 25us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
$ 34us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember