XML 352 R299.htm IDEA: XBRL DOCUMENT v2.4.1.9
Condensed Consolidating Statement of Operations (Detail) (USD $)
In Thousands, unless otherwise specified
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Interest Expense Abstract      
Provision for loan losses $ 263,369us-gaap_ProvisionForLoanAndLeaseLosses $ 602,563us-gaap_ProvisionForLoanAndLeaseLosses $ 408,941us-gaap_ProvisionForLoanAndLeaseLosses
Adjustments To Indemnity Reserves On Loans Sold (40,629)bpop_AdjustmentsToIndemnityReservesOnLoansSold (37,054)bpop_AdjustmentsToIndemnityReservesOnLoansSold (21,198)bpop_AdjustmentsToIndemnityReservesOnLoansSold
Noninterest Expense Abstract      
Taxes Other 25,700us-gaap_TaxesOther    
Amortization of intangibles 9,434us-gaap_AmortizationOfIntangibleAssets 9,883us-gaap_AmortizationOfIntangibleAssets 10,072us-gaap_AmortizationOfIntangibleAssets
Income tax expense 58,279us-gaap_IncomeTaxExpenseBenefit (251,327)us-gaap_IncomeTaxExpenseBenefit (26,403)us-gaap_IncomeTaxExpenseBenefit
Equity in undistributed earnings (losses) of subsidiaries 0bpop_EquityInUndistributedEarningsLossesOfSubsidiaries 0bpop_EquityInUndistributedEarningsLossesOfSubsidiaries 0bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
Net Income (313,490)us-gaap_NetIncomeLoss 599,327us-gaap_NetIncomeLoss 245,275us-gaap_NetIncomeLoss
Comprehensive Income Net Of Tax (354,617)us-gaap_ComprehensiveIncomeNetOfTax 513,450us-gaap_ComprehensiveIncomeNetOfTax 184,955us-gaap_ComprehensiveIncomeNetOfTax
Restructuring Charges Member      
Noninterest Expense Abstract      
Labor And Related Expense 17,516us-gaap_LaborAndRelatedExpense
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_RestructuringChargesMember
   
Occupancy Net 3,905us-gaap_OccupancyNet
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_RestructuringChargesMember
   
Equipment Expense 457us-gaap_EquipmentExpense
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_RestructuringChargesMember
   
Professional fees 3,133us-gaap_ProfessionalFees
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_RestructuringChargesMember
   
Other operating expenses 1,714us-gaap_OtherNoninterestExpense
/ us-gaap_IncomeStatementLocationAxis
= us-gaap_RestructuringChargesMember
   
Segment, Continuing Operations [Member]      
Interest And Dividend Income Operating Abstract      
Dividend income from subsidiaries 0bpop_DividendIncomeFromSubsidiaries
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_DividendIncomeFromSubsidiaries
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_DividendIncomeFromSubsidiaries
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Loans 1,478,750us-gaap_InterestAndFeeIncomeLoansAndLeases
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,481,096us-gaap_InterestAndFeeIncomeLoansAndLeases
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,449,227us-gaap_InterestAndFeeIncomeLoansAndLeases
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Money market investments 4,224us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3,464us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3,703us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Investment securities 132,631bpop_RevenueFromInvestmentSecurities
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
141,807bpop_RevenueFromInvestmentSecurities
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
168,632bpop_RevenueFromInvestmentSecurities
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Trading account securities 17,938us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
21,573us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
22,824us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total interest income 1,633,543us-gaap_InterestAndDividendIncomeOperating
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,647,940us-gaap_InterestAndDividendIncomeOperating
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,644,386us-gaap_InterestAndDividendIncomeOperating
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Interest Expense Abstract      
Deposits 105,087us-gaap_InterestExpenseDeposits
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
124,857us-gaap_InterestExpenseDeposits
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
167,765us-gaap_InterestExpenseDeposits
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Short-term borrowings 67,376us-gaap_InterestExpenseShortTermBorrowings
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
38,430us-gaap_InterestExpenseShortTermBorrowings
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
46,802us-gaap_InterestExpenseShortTermBorrowings
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Interest Expense Long Term Debt 516,008us-gaap_InterestExpenseLongTermDebt
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
140,079us-gaap_InterestExpenseLongTermDebt
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
148,192us-gaap_InterestExpenseLongTermDebt
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total interest expense 688,471us-gaap_InterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
303,366us-gaap_InterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
362,759us-gaap_InterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net interest income 945,072us-gaap_InterestIncomeExpenseNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,344,574us-gaap_InterestIncomeExpenseNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,281,627us-gaap_InterestIncomeExpenseNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net interest income after provision for loan losses 674,938us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
738,468us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
884,554us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Fees And Commissions Depositor Accounts 158,637us-gaap_FeesAndCommissionsDepositorAccounts
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
162,870us-gaap_FeesAndCommissionsDepositorAccounts
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
171,226us-gaap_FeesAndCommissionsDepositorAccounts
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other service fees 225,265us-gaap_FeesAndCommissionsOther
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
229,351us-gaap_FeesAndCommissionsOther
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
232,515us-gaap_FeesAndCommissionsOther
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Mortgage banking activities 30,615bpop_MortgageBankingActivities
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
71,657bpop_MortgageBankingActivities
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
84,771bpop_MortgageBankingActivities
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Sale and valuation adjustments of investment securities (870)bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
7,966bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(1,707)bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Trading account profit 4,358us-gaap_TradingGainsLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(13,483)us-gaap_TradingGainsLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
4,478us-gaap_TradingGainsLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net gain on sale of loans, including valuation adjustments on loans held-for-sale 40,591us-gaap_GainLossOnSalesOfLoansNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(52,708)us-gaap_GainLossOnSalesOfLoansNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(29,414)us-gaap_GainLossOnSalesOfLoansNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Adjustments To Indemnity Reserves On Loans Sold (40,629)bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(37,054)bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(21,198)bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
F D I C Loss Share Income (103,024)bpop_FDICLossShareIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(82,051)bpop_FDICLossShareIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(56,211)bpop_FDICLossShareIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Noninterest Income Other Operating Income 71,572us-gaap_NoninterestIncomeOtherOperatingIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
504,465us-gaap_NoninterestIncomeOtherOperatingIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
127,029us-gaap_NoninterestIncomeOtherOperatingIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total non-interest income 386,515us-gaap_NoninterestIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
791,013us-gaap_NoninterestIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
511,489us-gaap_NoninterestIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Noninterest Expense Abstract      
Labor And Related Expense 418,679us-gaap_LaborAndRelatedExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
428,697us-gaap_LaborAndRelatedExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
434,333us-gaap_LaborAndRelatedExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Occupancy Net 86,707us-gaap_OccupancyNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
86,651us-gaap_OccupancyNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
84,687us-gaap_OccupancyNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Equipment Expense 48,917us-gaap_EquipmentExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
46,028us-gaap_EquipmentExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
43,618us-gaap_EquipmentExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Taxes Other 56,918us-gaap_TaxesOther
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
58,028us-gaap_TaxesOther
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
49,844us-gaap_TaxesOther
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Professional fees 282,055us-gaap_ProfessionalFees
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
278,127us-gaap_ProfessionalFees
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
271,008us-gaap_ProfessionalFees
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Communication 25,684us-gaap_Communication
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
25,385us-gaap_Communication
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
25,687us-gaap_Communication
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Marketing And Advertising Expense 54,016us-gaap_MarketingAndAdvertisingExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
59,453us-gaap_MarketingAndAdvertisingExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
60,784us-gaap_MarketingAndAdvertisingExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
FDIC deposit insurance 40,307us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
56,728us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
82,065us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Loss on early extinguishment of debt 532us-gaap_GainsLossesOnExtinguishmentOfDebt
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3,388us-gaap_GainsLossesOnExtinguishmentOfDebt
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
25,196us-gaap_GainsLossesOnExtinguishmentOfDebt
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other Real Estate Owned Expense Net Of Gain Loss On Sale Or Disposition 49,611bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
79,658bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
28,823bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other operating expenses 95,373us-gaap_OtherNoninterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
91,876us-gaap_OtherNoninterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
100,783us-gaap_OtherNoninterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Amortization of intangibles 8,160us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
7,971us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
8,161us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Restructuring Charges 26,725us-gaap_RestructuringCharges
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_RestructuringCharges
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_RestructuringCharges
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total operating expenses 1,193,684us-gaap_NoninterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,221,990us-gaap_NoninterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,214,989us-gaap_NoninterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income (loss) from continuing operations before income tax (132,231)us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
307,491us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
181,054us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income tax expense 58,279us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(251,327)us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(26,403)us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income Loss Before Equity In Undistributed Earnings Of Subsidiaries (190,510)bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
558,818bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
207,457bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Equity in undistributed earnings (losses) of subsidiaries 0bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income (loss) from continuing operations (190,510)us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
558,818us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
207,457us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Segment, Continuing Operations [Member] | Non Covered Under Loss Sharing Agreements With F D I C [Member]      
Interest Expense Abstract      
Provision for loan losses 223,999us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
536,710us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
322,234us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Segment, Continuing Operations [Member] | Covered Under Loss Sharing Agreements With F D I C [Member]      
Interest Expense Abstract      
Provision for loan losses 46,135us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
69,396us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
74,839us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Segment, Discontinued Operations [Member]      
Interest Expense Abstract      
Net interest income 61,352us-gaap_InterestIncomeExpenseNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
88,006us-gaap_InterestIncomeExpenseNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
 
Provision for loan losses (6,764)us-gaap_ProvisionForLoanAndLeaseLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
(3,543)us-gaap_ProvisionForLoanAndLeaseLosses
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
 
Noninterest Income Other Operating Income 27,823us-gaap_NoninterestIncomeOtherOperatingIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
19,556us-gaap_NoninterestIncomeOtherOperatingIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
 
Total non-interest income 61,652us-gaap_NoninterestIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
19,556us-gaap_NoninterestIncome
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
 
Noninterest Expense Abstract      
Labor And Related Expense 36,675us-gaap_LaborAndRelatedExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
33,170us-gaap_LaborAndRelatedExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
 
Occupancy Net 3,086us-gaap_OccupancyNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
12,680us-gaap_OccupancyNet
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
 
Professional fees 15,642us-gaap_ProfessionalFees
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
11,153us-gaap_ProfessionalFees
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
 
Other operating expenses 10,834us-gaap_OtherNoninterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
13,593us-gaap_OtherNoninterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
 
Total operating expenses 252,748us-gaap_NoninterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
70,596us-gaap_NoninterestExpense
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
 
Income Loss From Discontinued Operations Net Of Tax (122,980)us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
40,509us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
37,818us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
Equity In Undistributed Earnings Losses Of Discontinued Operations 0bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
0bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
0bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
Popular, Inc. Holding Co.      
Interest Expense Abstract      
Provision for loan losses (200)us-gaap_ProvisionForLoanAndLeaseLosses
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
398us-gaap_ProvisionForLoanAndLeaseLosses
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
404us-gaap_ProvisionForLoanAndLeaseLosses
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Adjustments To Indemnity Reserves On Loans Sold 0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Noninterest Expense Abstract      
Amortization of intangibles 0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Equity in undistributed earnings (losses) of subsidiaries 171,998bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
196,886bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
274,766bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Net Income (313,490)us-gaap_NetIncomeLoss
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
599,327us-gaap_NetIncomeLoss
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
245,275us-gaap_NetIncomeLoss
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Comprehensive Income Net Of Tax (354,617)us-gaap_ComprehensiveIncomeNetOfTax
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
513,450us-gaap_ComprehensiveIncomeNetOfTax
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
184,955us-gaap_ComprehensiveIncomeNetOfTax
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
Popular, Inc. Holding Co. | Segment, Continuing Operations [Member]      
Interest And Dividend Income Operating Abstract      
Dividend income from subsidiaries 0bpop_DividendIncomeFromSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
37,000bpop_DividendIncomeFromSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
5,000bpop_DividendIncomeFromSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Loans 1,294us-gaap_InterestAndFeeIncomeLoansAndLeases
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
4,543us-gaap_InterestAndFeeIncomeLoansAndLeases
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
6,733us-gaap_InterestAndFeeIncomeLoansAndLeases
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Money market investments 20us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
127us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
14us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Investment securities 617bpop_RevenueFromInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
13,123bpop_RevenueFromInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
16,291bpop_RevenueFromInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Trading account securities 0us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total interest income 1,931us-gaap_InterestAndDividendIncomeOperating
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
54,793us-gaap_InterestAndDividendIncomeOperating
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
28,038us-gaap_InterestAndDividendIncomeOperating
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Interest Expense Abstract      
Deposits 0us-gaap_InterestExpenseDeposits
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestExpenseDeposits
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestExpenseDeposits
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Short-term borrowings 0us-gaap_InterestExpenseShortTermBorrowings
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestExpenseShortTermBorrowings
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
6us-gaap_InterestExpenseShortTermBorrowings
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Interest Expense Long Term Debt 492,657us-gaap_InterestExpenseLongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
101,245us-gaap_InterestExpenseLongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
95,892us-gaap_InterestExpenseLongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total interest expense 492,657us-gaap_InterestExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
101,245us-gaap_InterestExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
95,898us-gaap_InterestExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net interest income (490,726)us-gaap_InterestIncomeExpenseNet
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(46,452)us-gaap_InterestIncomeExpenseNet
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(67,860)us-gaap_InterestIncomeExpenseNet
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net interest income after provision for loan losses (490,526)us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(46,850)us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(68,264)us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Fees And Commissions Depositor Accounts 0us-gaap_FeesAndCommissionsDepositorAccounts
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FeesAndCommissionsDepositorAccounts
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FeesAndCommissionsDepositorAccounts
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other service fees 0us-gaap_FeesAndCommissionsOther
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FeesAndCommissionsOther
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FeesAndCommissionsOther
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Mortgage banking activities 0bpop_MortgageBankingActivities
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_MortgageBankingActivities
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_MortgageBankingActivities
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Sale and valuation adjustments of investment securities 0bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
7,966bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Trading account profit (40)us-gaap_TradingGainsLosses
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
161us-gaap_TradingGainsLosses
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
214us-gaap_TradingGainsLosses
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net gain on sale of loans, including valuation adjustments on loans held-for-sale 0us-gaap_GainLossOnSalesOfLoansNet
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_GainLossOnSalesOfLoansNet
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_GainLossOnSalesOfLoansNet
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Adjustments To Indemnity Reserves On Loans Sold 0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
F D I C Loss Share Income 0bpop_FDICLossShareIncome
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_FDICLossShareIncome
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_FDICLossShareIncome
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Fair value change in equity appreciation instrument 0bpop_FairValueChangeInEquityAppreciationInstrument
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
  0bpop_FairValueChangeInEquityAppreciationInstrument
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Gain on sale of processing and technology business     0us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Noninterest Income Other Operating Income 12,291us-gaap_NoninterestIncomeOtherOperatingIncome
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
443,276us-gaap_NoninterestIncomeOtherOperatingIncome
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
41,966us-gaap_NoninterestIncomeOtherOperatingIncome
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total non-interest income 12,251us-gaap_NoninterestIncome
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
451,403us-gaap_NoninterestIncome
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
42,180us-gaap_NoninterestIncome
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Noninterest Expense Abstract      
Labor And Related Expense 39,457us-gaap_LaborAndRelatedExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
31,086us-gaap_LaborAndRelatedExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
29,779us-gaap_LaborAndRelatedExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Occupancy Net 3,952us-gaap_OccupancyNet
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3,685us-gaap_OccupancyNet
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3,434us-gaap_OccupancyNet
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Equipment Expense 3,764us-gaap_EquipmentExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
4,084us-gaap_EquipmentExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3,831us-gaap_EquipmentExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Taxes Other 1,019us-gaap_TaxesOther
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
413us-gaap_TaxesOther
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
2,209us-gaap_TaxesOther
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Professional fees 14,963us-gaap_ProfessionalFees
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
13,099us-gaap_ProfessionalFees
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
11,042us-gaap_ProfessionalFees
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Communication 496us-gaap_Communication
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
421us-gaap_Communication
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
464us-gaap_Communication
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Marketing And Advertising Expense 1,731us-gaap_MarketingAndAdvertisingExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,838us-gaap_MarketingAndAdvertisingExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,823us-gaap_MarketingAndAdvertisingExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
FDIC deposit insurance 0us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Loss on early extinguishment of debt 0us-gaap_GainsLossesOnExtinguishmentOfDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_GainsLossesOnExtinguishmentOfDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_GainsLossesOnExtinguishmentOfDebt
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other Real Estate Owned Expense Net Of Gain Loss On Sale Or Disposition 6bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other operating expenses (63,755)us-gaap_OtherNoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(53,926)us-gaap_OtherNoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(50,877)us-gaap_OtherNoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Amortization of intangibles 0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Restructuring Charges 0us-gaap_RestructuringCharges
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
  0us-gaap_RestructuringCharges
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total operating expenses 1,633us-gaap_NoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
700us-gaap_NoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,705us-gaap_NoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income (loss) from continuing operations before income tax (479,908)us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
403,853us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(27,789)us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income tax expense 5,580us-gaap_IncomeTaxExpenseBenefit
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,412us-gaap_IncomeTaxExpenseBenefit
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,702us-gaap_IncomeTaxExpenseBenefit
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income Loss Before Equity In Undistributed Earnings Of Subsidiaries (485,488)bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
402,441bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(29,491)bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Equity in undistributed earnings (losses) of subsidiaries 294,978bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
156,377bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
236,948bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income (loss) from continuing operations (190,510)us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
558,818us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
207,457us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Popular, Inc. Holding Co. | Segment, Continuing Operations [Member] | Non Covered Under Loss Sharing Agreements With F D I C [Member]      
Interest Expense Abstract      
Provision for loan losses (200)us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
398us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
404us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Popular, Inc. Holding Co. | Segment, Continuing Operations [Member] | Covered Under Loss Sharing Agreements With F D I C [Member]      
Interest Expense Abstract      
Provision for loan losses 0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Popular, Inc. Holding Co. | Segment, Discontinued Operations [Member]      
Noninterest Expense Abstract      
Income Loss From Discontinued Operations Net Of Tax 0us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
0us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
0us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
Equity In Undistributed Earnings Losses Of Discontinued Operations (122,980)bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
40,509bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
37,818bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ dei_LegalEntityAxis
= us-gaap_ParentCompanyMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
PNA Holding Co.      
Interest Expense Abstract      
Provision for loan losses 0us-gaap_ProvisionForLoanAndLeaseLosses
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
Adjustments To Indemnity Reserves On Loans Sold 0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
Noninterest Expense Abstract      
Amortization of intangibles 0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
Equity in undistributed earnings (losses) of subsidiaries (90,496)bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
94,926bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
32,883bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
Net Income (102,968)us-gaap_NetIncomeLoss
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
71,856us-gaap_NetIncomeLoss
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
1,117us-gaap_NetIncomeLoss
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
Comprehensive Income Net Of Tax (79,665)us-gaap_ComprehensiveIncomeNetOfTax
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
(5,897)us-gaap_ComprehensiveIncomeNetOfTax
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
(5,444)us-gaap_ComprehensiveIncomeNetOfTax
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
PNA Holding Co. | Segment, Continuing Operations [Member]      
Interest And Dividend Income Operating Abstract      
Dividend income from subsidiaries 0bpop_DividendIncomeFromSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_DividendIncomeFromSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_DividendIncomeFromSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Loans 0us-gaap_InterestAndFeeIncomeLoansAndLeases
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestAndFeeIncomeLoansAndLeases
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestAndFeeIncomeLoansAndLeases
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Money market investments 7us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
5us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
25us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Investment securities 322bpop_RevenueFromInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
322bpop_RevenueFromInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
322bpop_RevenueFromInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Trading account securities 0us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total interest income 329us-gaap_InterestAndDividendIncomeOperating
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
327us-gaap_InterestAndDividendIncomeOperating
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
347us-gaap_InterestAndDividendIncomeOperating
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Interest Expense Abstract      
Deposits 0us-gaap_InterestExpenseDeposits
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestExpenseDeposits
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestExpenseDeposits
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Short-term borrowings 405us-gaap_InterestExpenseShortTermBorrowings
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
974us-gaap_InterestExpenseShortTermBorrowings
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
151us-gaap_InterestExpenseShortTermBorrowings
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Interest Expense Long Term Debt 10,826us-gaap_InterestExpenseLongTermDebt
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
24,249us-gaap_InterestExpenseLongTermDebt
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
32,183us-gaap_InterestExpenseLongTermDebt
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total interest expense 11,231us-gaap_InterestExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
25,223us-gaap_InterestExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
32,334us-gaap_InterestExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net interest income (10,902)us-gaap_InterestIncomeExpenseNet
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(24,896)us-gaap_InterestIncomeExpenseNet
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(31,987)us-gaap_InterestIncomeExpenseNet
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net interest income after provision for loan losses (10,902)us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(24,896)us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(31,987)us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Fees And Commissions Depositor Accounts 0us-gaap_FeesAndCommissionsDepositorAccounts
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FeesAndCommissionsDepositorAccounts
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FeesAndCommissionsDepositorAccounts
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other service fees 0us-gaap_FeesAndCommissionsOther
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FeesAndCommissionsOther
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FeesAndCommissionsOther
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Mortgage banking activities 0bpop_MortgageBankingActivities
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_MortgageBankingActivities
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_MortgageBankingActivities
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Sale and valuation adjustments of investment securities 0bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Trading account profit 0us-gaap_TradingGainsLosses
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_TradingGainsLosses
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_TradingGainsLosses
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net gain on sale of loans, including valuation adjustments on loans held-for-sale 0us-gaap_GainLossOnSalesOfLoansNet
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_GainLossOnSalesOfLoansNet
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_GainLossOnSalesOfLoansNet
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Adjustments To Indemnity Reserves On Loans Sold 0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
F D I C Loss Share Income 0bpop_FDICLossShareIncome
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_FDICLossShareIncome
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_FDICLossShareIncome
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Fair value change in equity appreciation instrument 0bpop_FairValueChangeInEquityAppreciationInstrument
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
  0bpop_FairValueChangeInEquityAppreciationInstrument
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Gain on sale of processing and technology business     0us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Noninterest Income Other Operating Income (16)us-gaap_NoninterestIncomeOtherOperatingIncome
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
4,012us-gaap_NoninterestIncomeOtherOperatingIncome
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
707us-gaap_NoninterestIncomeOtherOperatingIncome
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total non-interest income (16)us-gaap_NoninterestIncome
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
4,012us-gaap_NoninterestIncome
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
707us-gaap_NoninterestIncome
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Noninterest Expense Abstract      
Labor And Related Expense 0us-gaap_LaborAndRelatedExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_LaborAndRelatedExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_LaborAndRelatedExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Occupancy Net 0us-gaap_OccupancyNet
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
2us-gaap_OccupancyNet
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3us-gaap_OccupancyNet
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Equipment Expense 0us-gaap_EquipmentExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_EquipmentExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_EquipmentExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Taxes Other 0us-gaap_TaxesOther
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_TaxesOther
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_TaxesOther
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Professional fees 1,119us-gaap_ProfessionalFees
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
72us-gaap_ProfessionalFees
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
42us-gaap_ProfessionalFees
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Communication 0us-gaap_Communication
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_Communication
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_Communication
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Marketing And Advertising Expense 0us-gaap_MarketingAndAdvertisingExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_MarketingAndAdvertisingExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_MarketingAndAdvertisingExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
FDIC deposit insurance 0us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Loss on early extinguishment of debt 0us-gaap_GainsLossesOnExtinguishmentOfDebt
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3,388us-gaap_GainsLossesOnExtinguishmentOfDebt
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_GainsLossesOnExtinguishmentOfDebt
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other Real Estate Owned Expense Net Of Gain Loss On Sale Or Disposition 0bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other operating expenses 435us-gaap_OtherNoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
434us-gaap_OtherNoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
441us-gaap_OtherNoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Amortization of intangibles 0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Restructuring Charges 0us-gaap_RestructuringCharges
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
  0us-gaap_RestructuringCharges
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total operating expenses 1,554us-gaap_NoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3,896us-gaap_NoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
486us-gaap_NoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income (loss) from continuing operations before income tax (12,472)us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(24,780)us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(31,766)us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income tax expense 0us-gaap_IncomeTaxExpenseBenefit
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(1,710)us-gaap_IncomeTaxExpenseBenefit
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_IncomeTaxExpenseBenefit
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income Loss Before Equity In Undistributed Earnings Of Subsidiaries (12,472)bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(23,070)bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(31,766)bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Equity in undistributed earnings (losses) of subsidiaries 32,484bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
54,417bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(4,935)bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income (loss) from continuing operations 20,012us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
31,347us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(36,701)us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
PNA Holding Co. | Segment, Continuing Operations [Member] | Non Covered Under Loss Sharing Agreements With F D I C [Member]      
Interest Expense Abstract      
Provision for loan losses 0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
PNA Holding Co. | Segment, Continuing Operations [Member] | Covered Under Loss Sharing Agreements With F D I C [Member]      
Interest Expense Abstract      
Provision for loan losses 0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
PNA Holding Co. | Segment, Discontinued Operations [Member]      
Noninterest Expense Abstract      
Income Loss From Discontinued Operations Net Of Tax 0us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
0us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
0us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
Equity In Undistributed Earnings Losses Of Discontinued Operations (122,980)bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
40,509bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
37,818bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ dei_LegalEntityAxis
= us-gaap_NonGuarantorSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
Other Subsidiaries      
Interest Expense Abstract      
Provision for loan losses 263,569us-gaap_ProvisionForLoanAndLeaseLosses
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
602,165us-gaap_ProvisionForLoanAndLeaseLosses
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
408,537us-gaap_ProvisionForLoanAndLeaseLosses
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
Adjustments To Indemnity Reserves On Loans Sold (40,629)bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
(37,054)bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
(21,198)bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
Noninterest Expense Abstract      
Amortization of intangibles 9,434us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
9,883us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
10,072us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
Equity in undistributed earnings (losses) of subsidiaries 0bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
0bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
0bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
Net Income 184,469us-gaap_NetIncomeLoss
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
256,830us-gaap_NetIncomeLoss
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
311,189us-gaap_NetIncomeLoss
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
Comprehensive Income Net Of Tax 144,355us-gaap_ComprehensiveIncomeNetOfTax
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
173,754us-gaap_ComprehensiveIncomeNetOfTax
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
248,507us-gaap_ComprehensiveIncomeNetOfTax
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
Other Subsidiaries | Segment, Continuing Operations [Member]      
Interest And Dividend Income Operating Abstract      
Dividend income from subsidiaries 0bpop_DividendIncomeFromSubsidiaries
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_DividendIncomeFromSubsidiaries
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_DividendIncomeFromSubsidiaries
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Loans 1,478,658us-gaap_InterestAndFeeIncomeLoansAndLeases
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,478,526us-gaap_InterestAndFeeIncomeLoansAndLeases
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,445,886us-gaap_InterestAndFeeIncomeLoansAndLeases
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Money market investments 4,219us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3,462us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
3,707us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Investment securities 131,692bpop_RevenueFromInvestmentSecurities
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
139,427bpop_RevenueFromInvestmentSecurities
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
163,179bpop_RevenueFromInvestmentSecurities
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Trading account securities 17,938us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
21,573us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
22,824us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total interest income 1,632,507us-gaap_InterestAndDividendIncomeOperating
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,642,988us-gaap_InterestAndDividendIncomeOperating
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,635,596us-gaap_InterestAndDividendIncomeOperating
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Interest Expense Abstract      
Deposits 105,095us-gaap_InterestExpenseDeposits
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
124,862us-gaap_InterestExpenseDeposits
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
167,790us-gaap_InterestExpenseDeposits
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Short-term borrowings 68,187us-gaap_InterestExpenseShortTermBorrowings
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
39,555us-gaap_InterestExpenseShortTermBorrowings
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
50,055us-gaap_InterestExpenseShortTermBorrowings
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Interest Expense Long Term Debt 12,525us-gaap_InterestExpenseLongTermDebt
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
25,650us-gaap_InterestExpenseLongTermDebt
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
31,765us-gaap_InterestExpenseLongTermDebt
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total interest expense 185,807us-gaap_InterestExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
190,067us-gaap_InterestExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
249,610us-gaap_InterestExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net interest income 1,446,700us-gaap_InterestIncomeExpenseNet
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,452,921us-gaap_InterestIncomeExpenseNet
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,385,986us-gaap_InterestIncomeExpenseNet
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net interest income after provision for loan losses 1,176,366us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
847,213us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
989,317us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Fees And Commissions Depositor Accounts 158,637us-gaap_FeesAndCommissionsDepositorAccounts
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
162,870us-gaap_FeesAndCommissionsDepositorAccounts
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
171,226us-gaap_FeesAndCommissionsDepositorAccounts
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other service fees 228,006us-gaap_FeesAndCommissionsOther
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
232,148us-gaap_FeesAndCommissionsOther
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
235,739us-gaap_FeesAndCommissionsOther
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Mortgage banking activities 30,615bpop_MortgageBankingActivities
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
71,657bpop_MortgageBankingActivities
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
84,771bpop_MortgageBankingActivities
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Sale and valuation adjustments of investment securities (870)bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(1,707)bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Trading account profit 4,398us-gaap_TradingGainsLosses
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(13,644)us-gaap_TradingGainsLosses
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
4,264us-gaap_TradingGainsLosses
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net gain on sale of loans, including valuation adjustments on loans held-for-sale 40,591us-gaap_GainLossOnSalesOfLoansNet
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(52,708)us-gaap_GainLossOnSalesOfLoansNet
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(29,414)us-gaap_GainLossOnSalesOfLoansNet
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Adjustments To Indemnity Reserves On Loans Sold (40,629)bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(37,054)bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(21,198)bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
F D I C Loss Share Income (103,024)bpop_FDICLossShareIncome
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(82,051)bpop_FDICLossShareIncome
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(56,211)bpop_FDICLossShareIncome
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Fair value change in equity appreciation instrument 0bpop_FairValueChangeInEquityAppreciationInstrument
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
  0bpop_FairValueChangeInEquityAppreciationInstrument
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Gain on sale of processing and technology business     0us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Noninterest Income Other Operating Income 59,306us-gaap_NoninterestIncomeOtherOperatingIncome
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
57,177us-gaap_NoninterestIncomeOtherOperatingIncome
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
84,356us-gaap_NoninterestIncomeOtherOperatingIncome
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total non-interest income 377,030us-gaap_NoninterestIncome
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
338,395us-gaap_NoninterestIncome
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
471,826us-gaap_NoninterestIncome
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Noninterest Expense Abstract      
Labor And Related Expense 379,222us-gaap_LaborAndRelatedExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
397,611us-gaap_LaborAndRelatedExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
404,554us-gaap_LaborAndRelatedExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Occupancy Net 82,755us-gaap_OccupancyNet
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
82,964us-gaap_OccupancyNet
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
81,250us-gaap_OccupancyNet
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Equipment Expense 45,153us-gaap_EquipmentExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
41,944us-gaap_EquipmentExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
39,787us-gaap_EquipmentExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Taxes Other 55,899us-gaap_TaxesOther
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
57,615us-gaap_TaxesOther
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
47,635us-gaap_TaxesOther
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Professional fees 266,202us-gaap_ProfessionalFees
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
265,181us-gaap_ProfessionalFees
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
260,680us-gaap_ProfessionalFees
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Communication 25,188us-gaap_Communication
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
24,964us-gaap_Communication
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
25,223us-gaap_Communication
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Marketing And Advertising Expense 52,285us-gaap_MarketingAndAdvertisingExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
57,615us-gaap_MarketingAndAdvertisingExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
58,961us-gaap_MarketingAndAdvertisingExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
FDIC deposit insurance 40,307us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
56,728us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
82,065us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Loss on early extinguishment of debt 532us-gaap_GainsLossesOnExtinguishmentOfDebt
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_GainsLossesOnExtinguishmentOfDebt
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
25,196us-gaap_GainsLossesOnExtinguishmentOfDebt
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other Real Estate Owned Expense Net Of Gain Loss On Sale Or Disposition 49,605bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
79,658bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
28,823bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other operating expenses 161,216us-gaap_OtherNoninterestExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
147,923us-gaap_OtherNoninterestExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
153,584us-gaap_OtherNoninterestExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Amortization of intangibles 8,160us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
7,971us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
8,161us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Restructuring Charges 26,725us-gaap_RestructuringCharges
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
  0us-gaap_RestructuringCharges
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total operating expenses 1,193,249us-gaap_NoninterestExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,220,174us-gaap_NoninterestExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
1,215,919us-gaap_NoninterestExpense
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income (loss) from continuing operations before income tax 360,147us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(34,566)us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
245,224us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income tax expense 52,698us-gaap_IncomeTaxExpenseBenefit
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(250,887)us-gaap_IncomeTaxExpenseBenefit
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(28,147)us-gaap_IncomeTaxExpenseBenefit
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income Loss Before Equity In Undistributed Earnings Of Subsidiaries 307,449bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
216,321bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
273,371bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Equity in undistributed earnings (losses) of subsidiaries 0bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income (loss) from continuing operations 307,449us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
216,321us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
273,371us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other Subsidiaries | Segment, Continuing Operations [Member] | Non Covered Under Loss Sharing Agreements With F D I C [Member]      
Interest Expense Abstract      
Provision for loan losses 224,199us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
536,312us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
321,830us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other Subsidiaries | Segment, Continuing Operations [Member] | Covered Under Loss Sharing Agreements With F D I C [Member]      
Interest Expense Abstract      
Provision for loan losses 46,135us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
69,396us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
74,839us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other Subsidiaries | Segment, Discontinued Operations [Member]      
Noninterest Expense Abstract      
Income Loss From Discontinued Operations Net Of Tax (122,980)us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
40,509us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
37,818us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
Equity In Undistributed Earnings Losses Of Discontinued Operations 0bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
0bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
0bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ dei_LegalEntityAxis
= bpop_OtherSubsidiariesMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
Elimination      
Interest Expense Abstract      
Provision for loan losses 0us-gaap_ProvisionForLoanAndLeaseLosses
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
Adjustments To Indemnity Reserves On Loans Sold 0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
Noninterest Expense Abstract      
Amortization of intangibles 0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
Equity in undistributed earnings (losses) of subsidiaries (81,502)bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
(291,812)bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
(307,649)bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
Net Income (81,501)us-gaap_NetIncomeLoss
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
(328,686)us-gaap_NetIncomeLoss
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
(312,306)us-gaap_NetIncomeLoss
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
Comprehensive Income Net Of Tax (64,690)us-gaap_ComprehensiveIncomeNetOfTax
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
(167,857)us-gaap_ComprehensiveIncomeNetOfTax
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
(243,063)us-gaap_ComprehensiveIncomeNetOfTax
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
Elimination | Segment, Continuing Operations [Member]      
Interest And Dividend Income Operating Abstract      
Dividend income from subsidiaries 0bpop_DividendIncomeFromSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(37,000)bpop_DividendIncomeFromSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(5,000)bpop_DividendIncomeFromSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Loans (1,202)us-gaap_InterestAndFeeIncomeLoansAndLeases
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(1,973)us-gaap_InterestAndFeeIncomeLoansAndLeases
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(3,392)us-gaap_InterestAndFeeIncomeLoansAndLeases
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Money market investments (22)us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(130)us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(43)us-gaap_InterestIncomeDepositsWithFinancialInstitutions
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Investment securities 0bpop_RevenueFromInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(11,065)bpop_RevenueFromInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(11,160)bpop_RevenueFromInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Trading account securities 0us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_InterestAndDividendIncomeSecuritiesTradingOrMeasuredAtFairValue
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total interest income (1,224)us-gaap_InterestAndDividendIncomeOperating
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(50,168)us-gaap_InterestAndDividendIncomeOperating
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(19,595)us-gaap_InterestAndDividendIncomeOperating
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Interest Expense Abstract      
Deposits (8)us-gaap_InterestExpenseDeposits
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(5)us-gaap_InterestExpenseDeposits
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(25)us-gaap_InterestExpenseDeposits
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Short-term borrowings (1,216)us-gaap_InterestExpenseShortTermBorrowings
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(2,099)us-gaap_InterestExpenseShortTermBorrowings
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(3,410)us-gaap_InterestExpenseShortTermBorrowings
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Interest Expense Long Term Debt 0us-gaap_InterestExpenseLongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(11,065)us-gaap_InterestExpenseLongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(11,648)us-gaap_InterestExpenseLongTermDebt
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total interest expense (1,224)us-gaap_InterestExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(13,169)us-gaap_InterestExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(15,083)us-gaap_InterestExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net interest income 0us-gaap_InterestIncomeExpenseNet
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(36,999)us-gaap_InterestIncomeExpenseNet
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(4,512)us-gaap_InterestIncomeExpenseNet
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net interest income after provision for loan losses 0us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(36,999)us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(4,512)us-gaap_InterestIncomeExpenseAfterProvisionForLoanLoss
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Fees And Commissions Depositor Accounts 0us-gaap_FeesAndCommissionsDepositorAccounts
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FeesAndCommissionsDepositorAccounts
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FeesAndCommissionsDepositorAccounts
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other service fees (2,741)us-gaap_FeesAndCommissionsOther
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(2,797)us-gaap_FeesAndCommissionsOther
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(3,224)us-gaap_FeesAndCommissionsOther
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Mortgage banking activities 0bpop_MortgageBankingActivities
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_MortgageBankingActivities
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_MortgageBankingActivities
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Sale and valuation adjustments of investment securities 0bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_NetGainLossAndValuationAdjustmentsOnInvestmentSecurities
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Trading account profit 0us-gaap_TradingGainsLosses
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_TradingGainsLosses
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_TradingGainsLosses
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Net gain on sale of loans, including valuation adjustments on loans held-for-sale 0us-gaap_GainLossOnSalesOfLoansNet
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_GainLossOnSalesOfLoansNet
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_GainLossOnSalesOfLoansNet
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Adjustments To Indemnity Reserves On Loans Sold 0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_AdjustmentsToIndemnityReservesOnLoansSold
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
F D I C Loss Share Income 0bpop_FDICLossShareIncome
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_FDICLossShareIncome
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_FDICLossShareIncome
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Fair value change in equity appreciation instrument 0bpop_FairValueChangeInEquityAppreciationInstrument
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
  0bpop_FairValueChangeInEquityAppreciationInstrument
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Gain on sale of processing and technology business     0us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Noninterest Income Other Operating Income (9)us-gaap_NoninterestIncomeOtherOperatingIncome
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_NoninterestIncomeOtherOperatingIncome
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_NoninterestIncomeOtherOperatingIncome
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total non-interest income (2,750)us-gaap_NoninterestIncome
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(2,797)us-gaap_NoninterestIncome
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(3,224)us-gaap_NoninterestIncome
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Noninterest Expense Abstract      
Labor And Related Expense 0us-gaap_LaborAndRelatedExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_LaborAndRelatedExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_LaborAndRelatedExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Occupancy Net 0us-gaap_OccupancyNet
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_OccupancyNet
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_OccupancyNet
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Equipment Expense 0us-gaap_EquipmentExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_EquipmentExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_EquipmentExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Taxes Other 0us-gaap_TaxesOther
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_TaxesOther
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_TaxesOther
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Professional fees (229)us-gaap_ProfessionalFees
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(225)us-gaap_ProfessionalFees
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(756)us-gaap_ProfessionalFees
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Communication 0us-gaap_Communication
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_Communication
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_Communication
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Marketing And Advertising Expense 0us-gaap_MarketingAndAdvertisingExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_MarketingAndAdvertisingExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_MarketingAndAdvertisingExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
FDIC deposit insurance 0us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_FederalDepositInsuranceCorporationPremiumExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Loss on early extinguishment of debt 0us-gaap_GainsLossesOnExtinguishmentOfDebt
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_GainsLossesOnExtinguishmentOfDebt
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_GainsLossesOnExtinguishmentOfDebt
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other Real Estate Owned Expense Net Of Gain Loss On Sale Or Disposition 0bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0bpop_OtherRealEstateOwnedExpenseNetOfGainLossOnSaleOrDisposition
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Other operating expenses (2,523)us-gaap_OtherNoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(2,555)us-gaap_OtherNoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(2,365)us-gaap_OtherNoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Amortization of intangibles 0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_AmortizationOfIntangibleAssets
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Restructuring Charges 0us-gaap_RestructuringCharges
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
  0us-gaap_RestructuringCharges
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Total operating expenses (2,752)us-gaap_NoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(2,780)us-gaap_NoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(3,121)us-gaap_NoninterestExpense
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income (loss) from continuing operations before income tax 2us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(37,016)us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(4,615)us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income tax expense 1us-gaap_IncomeTaxExpenseBenefit
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(142)us-gaap_IncomeTaxExpenseBenefit
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
42us-gaap_IncomeTaxExpenseBenefit
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income Loss Before Equity In Undistributed Earnings Of Subsidiaries 1bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(36,874)bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(4,657)bpop_IncomeLossBeforeEquityInUndistributedEarningsOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Equity in undistributed earnings (losses) of subsidiaries (327,462)bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(210,794)bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(232,013)bpop_EquityInUndistributedEarningsLossesOfSubsidiaries
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Income (loss) from continuing operations (327,461)us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(247,668)us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
(236,670)us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Elimination | Segment, Continuing Operations [Member] | Non Covered Under Loss Sharing Agreements With F D I C [Member]      
Interest Expense Abstract      
Provision for loan losses 0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_NonCoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Elimination | Segment, Continuing Operations [Member] | Covered Under Loss Sharing Agreements With F D I C [Member]      
Interest Expense Abstract      
Provision for loan losses 0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
0us-gaap_ProvisionForLoanAndLeaseLosses
/ bpop_BankingAgenciesAxis
= bpop_CoveredUnderLossSharingAgreementsWithFDICMember
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentContinuingOperationsMember
Elimination | Segment, Discontinued Operations [Member]      
Noninterest Expense Abstract      
Income Loss From Discontinued Operations Net Of Tax 0us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
0us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
0us-gaap_IncomeLossFromDiscontinuedOperationsNetOfTax
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
Equity In Undistributed Earnings Losses Of Discontinued Operations $ 245,960bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
$ (81,018)bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember
$ (75,636)bpop_EquityInUndistributedEarningsLossesOfDiscontinuedOperations
/ dei_LegalEntityAxis
= us-gaap_ConsolidationEliminationsMember
/ us-gaap_StatementOperatingActivitiesSegmentAxis
= us-gaap_SegmentDiscontinuedOperationsMember