2024 Q4 Form 10-Q Financial Statement
#000143774924032788 Filed on October 31, 2024
Income Statement
Concept | 2024 Q4 | 2024 Q3 |
---|---|---|
Revenue | $130.2M | |
YoY Change | 9.67% | |
Cost Of Revenue | $103.2M | |
YoY Change | 3.78% | |
Gross Profit | $27.02M | |
YoY Change | 40.04% | |
Gross Profit Margin | 20.75% | |
Selling, General & Admin | $11.58M | |
YoY Change | 13.13% | |
% of Gross Profit | 42.86% | |
Research & Development | ||
YoY Change | ||
% of Gross Profit | ||
Depreciation & Amortization | $5.157M | |
YoY Change | 27.33% | |
% of Gross Profit | 19.09% | |
Operating Expenses | $11.58M | |
YoY Change | 13.13% | |
Operating Profit | $15.44M | |
YoY Change | 70.45% | |
Interest Expense | $1.452M | |
YoY Change | 24.96% | |
% of Operating Profit | 9.41% | |
Other Income/Expense, Net | -$66.00K | |
YoY Change | 8.2% | |
Pretax Income | $13.92M | |
YoY Change | 77.69% | |
Income Tax | $3.667M | |
% Of Pretax Income | 26.34% | |
Net Earnings | $10.25M | |
YoY Change | 76.23% | |
Net Earnings / Revenue | 7.87% | |
Basic Earnings Per Share | $1.03 | |
Diluted Earnings Per Share | $1.02 | |
COMMON SHARES | ||
Basic Shares Outstanding | 9.919M | 9.919M |
Diluted Shares Outstanding | 10.06M |
Balance Sheet
Concept | 2024 Q4 | 2024 Q3 |
---|---|---|
SHORT-TERM ASSETS | ||
Cash & Short-Term Investments | $5.723M | |
YoY Change | 39.59% | |
Cash & Equivalents | $5.723M | |
Short-Term Investments | ||
Other Short-Term Assets | $2.530M | |
YoY Change | -61.67% | |
Inventory | $84.98M | |
Prepaid Expenses | ||
Receivables | $200.5M | |
Other Receivables | $0.00 | |
Total Short-Term Assets | $293.7M | |
YoY Change | 10.34% | |
LONG-TERM ASSETS | ||
Property, Plant & Equipment | $149.3M | |
YoY Change | 6.76% | |
Goodwill | $55.50M | |
YoY Change | 0.0% | |
Intangibles | ||
YoY Change | ||
Long-Term Investments | ||
YoY Change | ||
Other Assets | $6.493M | |
YoY Change | 11.11% | |
Total Long-Term Assets | $323.5M | |
YoY Change | 0.18% | |
TOTAL ASSETS | ||
Total Short-Term Assets | $293.7M | |
Total Long-Term Assets | $323.5M | |
Total Assets | $617.2M | |
YoY Change | 4.77% | |
SHORT-TERM LIABILITIES | ||
YoY Change | ||
Accounts Payable | $20.36M | |
YoY Change | -34.66% | |
Accrued Expenses | $26.66M | |
YoY Change | 12.08% | |
Deferred Revenue | $28.90M | |
YoY Change | 67.38% | |
Short-Term Debt | $0.00 | |
YoY Change | ||
Long-Term Debt Due | $10.76M | |
YoY Change | 0.0% | |
Total Short-Term Liabilities | $91.85M | |
YoY Change | 4.54% | |
LONG-TERM LIABILITIES | ||
Long-Term Debt | $60.70M | |
YoY Change | 4.48% | |
Other Long-Term Liabilities | $9.673M | |
YoY Change | -1.75% | |
Total Long-Term Liabilities | $9.673M | |
YoY Change | -1.75% | |
TOTAL LIABILITIES | ||
Total Short-Term Liabilities | $91.85M | |
Total Long-Term Liabilities | $9.673M | |
Total Liabilities | $254.8M | |
YoY Change | 0.35% | |
SHAREHOLDERS EQUITY | ||
Retained Earnings | $236.2M | |
YoY Change | 14.3% | |
Common Stock | $127.3M | |
YoY Change | -1.64% | |
Preferred Stock | ||
YoY Change | ||
Treasury Stock (at cost) | ||
YoY Change | ||
Treasury Stock Shares | ||
Shareholders Equity | $362.4M | |
YoY Change | ||
Total Liabilities & Shareholders Equity | $617.2M | |
YoY Change | 4.77% |
Cashflow Statement
Concept | 2024 Q4 | 2024 Q3 |
---|---|---|
OPERATING ACTIVITIES | ||
Net Income | $10.25M | |
YoY Change | 76.23% | |
Depreciation, Depletion And Amortization | $5.157M | |
YoY Change | 27.33% | |
Cash From Operating Activities | $22.74M | |
YoY Change | 34.34% | |
INVESTING ACTIVITIES | ||
Capital Expenditures | $5.975M | |
YoY Change | 23.71% | |
Acquisitions | ||
YoY Change | ||
Other Investing Activities | $1.000K | |
YoY Change | -98.0% | |
Cash From Investing Activities | -$5.974M | |
YoY Change | 25.24% | |
FINANCING ACTIVITIES | ||
Cash Dividend Paid | ||
YoY Change | ||
Common Stock Issuance & Retirement, Net | ||
YoY Change | ||
Debt Paid & Issued, Net | ||
YoY Change | ||
Cash From Financing Activities | -15.57M | |
YoY Change | 27.13% | |
NET CHANGE | ||
Cash From Operating Activities | 22.74M | |
Cash From Investing Activities | -5.974M | |
Cash From Financing Activities | -15.57M | |
Net Change In Cash | 1.195M | |
YoY Change | -1427.78% | |
FREE CASH FLOW | ||
Cash From Operating Activities | $22.74M | |
Capital Expenditures | $5.975M | |
Free Cash Flow | $16.77M | |
YoY Change | 38.58% |
Facts In Submission
Frame | Concept Type | Concept / XBRL Key | Value | Unit |
---|---|---|---|---|
dei |
Entity Registrant Name
EntityRegistrantName
|
Northwest Pipe Co. | ||
dei |
Entity Central Index Key
EntityCentralIndexKey
|
0001001385 | ||
dei |
Entity File Number
EntityFileNumber
|
0-27140 | ||
dei |
Entity Tax Identification Number
EntityTaxIdentificationNumber
|
93-0557988 | ||
dei |
Entity Address Address Line1
EntityAddressAddressLine1
|
201 NE Park Plaza Drive, Suite 100 | ||
dei |
Entity Address City Or Town
EntityAddressCityOrTown
|
Vancouver | ||
dei |
Entity Address State Or Province
EntityAddressStateOrProvince
|
WA | ||
dei |
Entity Address Postal Zip Code
EntityAddressPostalZipCode
|
98684 | ||
dei |
City Area Code
CityAreaCode
|
360 | ||
dei |
Local Phone Number
LocalPhoneNumber
|
397‑6250 | ||
dei |
Security12b Title
Security12bTitle
|
Common Stock, par value $0.01 per share | ||
dei |
Trading Symbol
TradingSymbol
|
NWPX | ||
dei |
Security Exchange Name
SecurityExchangeName
|
NASDAQ | ||
dei |
Amendment Flag
AmendmentFlag
|
false | ||
dei |
Current Fiscal Year End Date
CurrentFiscalYearEndDate
|
--12-31 | ||
dei |
Document Fiscal Period Focus
DocumentFiscalPeriodFocus
|
Q3 | ||
dei |
Document Fiscal Year Focus
DocumentFiscalYearFocus
|
2024 | ||
CY2024Q3 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
215000 | usd |
CY2023Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable
AllowanceForDoubtfulAccountsReceivable
|
121000 | usd |
CY2024Q3 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
137029000 | usd |
CY2023Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
126359000 | usd |
CY2024Q3 | us-gaap |
Commitments And Contingencies
CommitmentsAndContingencies
|
usd | |
CY2023Q4 | us-gaap |
Commitments And Contingencies
CommitmentsAndContingencies
|
usd | |
CY2024Q3 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.01 | |
CY2023Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.01 | |
CY2024Q3 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
10000000 | |
CY2023Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
10000000 | |
CY2024Q3 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2024Q3 | us-gaap |
Preferred Stock Shares Outstanding
PreferredStockSharesOutstanding
|
0 | |
CY2023Q4 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | |
CY2023Q4 | us-gaap |
Preferred Stock Shares Outstanding
PreferredStockSharesOutstanding
|
0 | |
CY2024Q3 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2023Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2024Q3 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
15000000 | |
CY2023Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
15000000 | |
CY2024Q3 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
9918711 | |
CY2024Q3 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
9918711 | |
CY2023Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
9985580 | |
CY2023Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
9985580 | |
nwpx |
Number Of Inactive Stock Incentive Plans
NumberOfInactiveStockIncentivePlans
|
1 | pure | |
us-gaap |
Contract With Customer Liability Cumulative Catch Up Adjustment To Revenue Change In Estimate Of Transaction Price
ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
|
-800000 | usd | |
CY2024Q3 | us-gaap |
Revenue Remaining Performance Obligation Expected Timing Of Satisfaction Period1
RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
|
P0Y3M | |
CY2024Q3 | us-gaap |
Revenue Remaining Performance Obligation Expected Timing Of Satisfaction Period1
RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
|
P1Y | |
CY2024Q4 | us-gaap |
Debt Instrument Variable Interest Rate Type Extensible Enumeration
DebtInstrumentVariableInterestRateTypeExtensibleEnumeration
|
http://fasb.org/us-gaap/2024#SecuredOvernightFinancingRateSofrMember | |
CY2024Q3 | ecd |
Non Rule10b51 Arr Adopted Flag
NonRule10b51ArrAdoptedFlag
|
false | |
CY2024Q3 | ecd |
Rule10b51 Arr Trmntd Flag
Rule10b51ArrTrmntdFlag
|
false | |
CY2024Q3 | ecd |
Non Rule10b51 Arr Trmntd Flag
NonRule10b51ArrTrmntdFlag
|
false | |
CY2024Q3 | ecd |
Trd Arr Adoption Date
TrdArrAdoptionDate
|
August 19, 2024 | |
CY2024Q3 | ecd |
Trd Arr Ind Name
TrdArrIndName
|
Aaron Wilkins | |
CY2024Q3 | ecd |
Trd Arr Ind Title
TrdArrIndTitle
|
Senior Vice President, Chief Financial Officer, and Corporate Secretary | |
CY2024Q3 | ecd |
Rule10b51 Arr Adopted Flag
Rule10b51ArrAdoptedFlag
|
true | |
dei |
Document Type
DocumentType
|
10-Q | ||
dei |
Document Quarterly Report
DocumentQuarterlyReport
|
true | ||
dei |
Document Period End Date
DocumentPeriodEndDate
|
2024-09-30 | ||
dei |
Document Transition Report
DocumentTransitionReport
|
false | ||
dei |
Entity Incorporation State Country Code
EntityIncorporationStateCountryCode
|
OR | ||
dei |
Entity Current Reporting Status
EntityCurrentReportingStatus
|
Yes | ||
dei |
Entity Interactive Data Current
EntityInteractiveDataCurrent
|
Yes | ||
dei |
Entity Filer Category
EntityFilerCategory
|
Accelerated Filer | ||
dei |
Entity Small Business
EntitySmallBusiness
|
false | ||
dei |
Entity Emerging Growth Company
EntityEmergingGrowthCompany
|
false | ||
dei |
Entity Shell Company
EntityShellCompany
|
false | ||
CY2024Q4 | dei |
Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
|
9918711 | |
CY2024Q3 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
130201000 | usd |
CY2023Q3 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
118722000 | usd |
us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
372921000 | usd | |
us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
334191000 | usd | |
CY2024Q3 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
103182000 | usd |
CY2023Q3 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
99428000 | usd |
us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
299954000 | usd | |
us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
275839000 | usd | |
CY2024Q3 | us-gaap |
Gross Profit
GrossProfit
|
27019000 | usd |
CY2023Q3 | us-gaap |
Gross Profit
GrossProfit
|
19294000 | usd |
us-gaap |
Gross Profit
GrossProfit
|
72967000 | usd | |
us-gaap |
Gross Profit
GrossProfit
|
58352000 | usd | |
CY2024Q3 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
11581000 | usd |
CY2023Q3 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
10237000 | usd |
us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
35220000 | usd | |
us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
33119000 | usd | |
CY2024Q3 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
15438000 | usd |
CY2023Q3 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
9057000 | usd |
us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
37747000 | usd | |
us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
25233000 | usd | |
CY2024Q3 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
-66000 | usd |
CY2023Q3 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
-61000 | usd |
us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
-287000 | usd | |
us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
-224000 | usd | |
CY2024Q3 | us-gaap |
Interest Expense
InterestExpense
|
1452000 | usd |
CY2023Q3 | us-gaap |
Interest Expense
InterestExpense
|
1162000 | usd |
us-gaap |
Interest Expense
InterestExpense
|
4749000 | usd | |
us-gaap |
Interest Expense
InterestExpense
|
3722000 | usd | |
CY2024Q3 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
13920000 | usd |
CY2023Q3 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
7834000 | usd |
us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
32711000 | usd | |
us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
21287000 | usd | |
CY2024Q3 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
3667000 | usd |
CY2023Q3 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
2016000 | usd |
us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
8601000 | usd | |
us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
5659000 | usd | |
CY2024Q3 | us-gaap |
Net Income Loss
NetIncomeLoss
|
10253000 | usd |
CY2023Q3 | us-gaap |
Net Income Loss
NetIncomeLoss
|
5818000 | usd |
us-gaap |
Net Income Loss
NetIncomeLoss
|
24110000 | usd | |
us-gaap |
Net Income Loss
NetIncomeLoss
|
15628000 | usd | |
CY2024Q3 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.03 | |
CY2023Q3 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.58 | |
us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
2.43 | ||
us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.57 | ||
CY2024Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.02 | |
CY2023Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.58 | |
us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
2.4 | ||
us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.55 | ||
CY2024Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
9919000 | |
CY2023Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
10014000 | |
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
9915000 | ||
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
9985000 | ||
CY2024Q3 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
10055000 | |
CY2023Q3 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
10107000 | |
us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
10040000 | ||
us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
10088000 | ||
CY2024Q3 | us-gaap |
Net Income Loss
NetIncomeLoss
|
10253000 | usd |
CY2023Q3 | us-gaap |
Net Income Loss
NetIncomeLoss
|
5818000 | usd |
us-gaap |
Net Income Loss
NetIncomeLoss
|
24110000 | usd | |
us-gaap |
Net Income Loss
NetIncomeLoss
|
15628000 | usd | |
CY2024Q3 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
-238000 | usd |
CY2023Q3 | us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
-27000 | usd |
us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
-196000 | usd | |
us-gaap |
Other Comprehensive Income Loss Net Of Tax Portion Attributable To Parent
OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
|
-162000 | usd | |
CY2024Q3 | us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
10015000 | usd |
CY2023Q3 | us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
5791000 | usd |
us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
23914000 | usd | |
us-gaap |
Comprehensive Income Net Of Tax
ComprehensiveIncomeNetOfTax
|
15466000 | usd | |
CY2024Q3 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
5723000 | usd |
CY2023Q4 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
4068000 | usd |
CY2024Q3 | us-gaap |
Receivables Net Current
ReceivablesNetCurrent
|
79507000 | usd |
CY2023Q4 | us-gaap |
Receivables Net Current
ReceivablesNetCurrent
|
47645000 | usd |
CY2024Q3 | us-gaap |
Contract With Customer Asset Net Current
ContractWithCustomerAssetNetCurrent
|
120983000 | usd |
CY2023Q4 | us-gaap |
Contract With Customer Asset Net Current
ContractWithCustomerAssetNetCurrent
|
120516000 | usd |
CY2024Q3 | us-gaap |
Inventory Net
InventoryNet
|
84977000 | usd |
CY2023Q4 | us-gaap |
Inventory Net
InventoryNet
|
91229000 | usd |
CY2024Q3 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
2530000 | usd |
CY2023Q4 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
9026000 | usd |
CY2024Q3 | us-gaap |
Assets Current
AssetsCurrent
|
293720000 | usd |
CY2023Q4 | us-gaap |
Assets Current
AssetsCurrent
|
272484000 | usd |
CY2024Q3 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
149262000 | usd |
CY2023Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
143955000 | usd |
CY2024Q3 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
84161000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
88155000 | usd |
CY2024Q3 | us-gaap |
Goodwill
Goodwill
|
55504000 | usd |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
55504000 | usd |
CY2024Q3 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
28050000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
31074000 | usd |
CY2024Q3 | us-gaap |
Other Assets Noncurrent
OtherAssetsNoncurrent
|
6493000 | usd |
CY2023Q4 | us-gaap |
Other Assets Noncurrent
OtherAssetsNoncurrent
|
6709000 | usd |
CY2024Q3 | us-gaap |
Assets
Assets
|
617190000 | usd |
CY2023Q4 | us-gaap |
Assets
Assets
|
597881000 | usd |
CY2024Q3 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
10756000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Current
LongTermDebtCurrent
|
10756000 | usd |
CY2024Q3 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
20356000 | usd |
CY2023Q4 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
31142000 | usd |
CY2024Q3 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
26659000 | usd |
CY2023Q4 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
27913000 | usd |
CY2024Q3 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
28897000 | usd |
CY2023Q4 | us-gaap |
Contract With Customer Liability Current
ContractWithCustomerLiabilityCurrent
|
21450000 | usd |
CY2024Q3 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
5181000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
4933000 | usd |
CY2024Q3 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
91849000 | usd |
CY2023Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
96194000 | usd |
CY2024Q3 | us-gaap |
Long Term Line Of Credit
LongTermLineOfCredit
|
60704000 | usd |
CY2023Q4 | us-gaap |
Long Term Line Of Credit
LongTermLineOfCredit
|
54485000 | usd |
CY2024Q3 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
81748000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
85283000 | usd |
CY2024Q3 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
10856000 | usd |
CY2023Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
10942000 | usd |
CY2024Q3 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
9673000 | usd |
CY2023Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
10617000 | usd |
CY2024Q3 | us-gaap |
Liabilities
Liabilities
|
254830000 | usd |
CY2023Q4 | us-gaap |
Liabilities
Liabilities
|
257521000 | usd |
CY2024Q3 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | usd |
CY2023Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | usd |
CY2024Q3 | us-gaap |
Common Stock Value
CommonStockValue
|
99000 | usd |
CY2023Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
100000 | usd |
CY2024Q3 | us-gaap |
Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
|
127182000 | usd |
CY2023Q4 | us-gaap |
Additional Paid In Capital Common Stock
AdditionalPaidInCapitalCommonStock
|
129095000 | usd |
CY2024Q3 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
236235000 | usd |
CY2023Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
212125000 | usd |
CY2024Q3 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-1156000 | usd |
CY2023Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-960000 | usd |
CY2024Q3 | us-gaap |
Stockholders Equity
StockholdersEquity
|
362360000 | usd |
CY2023Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
340360000 | usd |
CY2024Q3 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
617190000 | usd |
CY2023Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
597881000 | usd |
CY2024Q2 | us-gaap |
Stockholders Equity
StockholdersEquity
|
351183000 | usd |
CY2024Q3 | us-gaap |
Net Income Loss
NetIncomeLoss
|
10253000 | usd |
CY2024Q3 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
1162000 | usd |
CY2024Q3 | us-gaap |
Stockholders Equity
StockholdersEquity
|
362360000 | usd |
CY2023Q2 | us-gaap |
Stockholders Equity
StockholdersEquity
|
328601000 | usd |
CY2023Q3 | us-gaap |
Net Income Loss
NetIncomeLoss
|
5818000 | usd |
CY2023Q3 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
746000 | usd |
CY2023Q3 | us-gaap |
Stockholders Equity
StockholdersEquity
|
335138000 | usd |
CY2023Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
340360000 | usd |
us-gaap |
Net Income Loss
NetIncomeLoss
|
24110000 | usd | |
us-gaap |
Stock Issued During Period Value Share Based Compensation
StockIssuedDuringPeriodValueShareBasedCompensation
|
1449000 | usd | |
us-gaap |
Stock Repurchased And Retired During Period Value
StockRepurchasedAndRetiredDuringPeriodValue
|
4301000 | usd | |
us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
3836000 | usd | |
CY2024Q3 | us-gaap |
Stockholders Equity
StockholdersEquity
|
362360000 | usd |
CY2022Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
318274000 | usd |
us-gaap |
Net Income Loss
NetIncomeLoss
|
15628000 | usd | |
us-gaap |
Stock Issued During Period Value Share Based Compensation
StockIssuedDuringPeriodValueShareBasedCompensation
|
1652000 | usd | |
us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
3050000 | usd | |
CY2023Q3 | us-gaap |
Stockholders Equity
StockholdersEquity
|
335138000 | usd |
us-gaap |
Net Income Loss
NetIncomeLoss
|
24110000 | usd | |
us-gaap |
Net Income Loss
NetIncomeLoss
|
15628000 | usd | |
nwpx |
Depreciation And Finance Lease Right Of Use Asset Amortization
DepreciationAndFinanceLeaseRightOfUseAssetAmortization
|
11255000 | usd | |
nwpx |
Depreciation And Finance Lease Right Of Use Asset Amortization
DepreciationAndFinanceLeaseRightOfUseAssetAmortization
|
8644000 | usd | |
us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
3024000 | usd | |
us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
3147000 | usd | |
us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-70000 | usd | |
us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
226000 | usd | |
us-gaap |
Share Based Compensation
ShareBasedCompensation
|
3836000 | usd | |
us-gaap |
Share Based Compensation
ShareBasedCompensation
|
3050000 | usd | |
us-gaap |
Other Noncash Income Expense
OtherNoncashIncomeExpense
|
-539000 | usd | |
us-gaap |
Other Noncash Income Expense
OtherNoncashIncomeExpense
|
-1298000 | usd | |
us-gaap |
Increase Decrease In Accounts And Other Receivables
IncreaseDecreaseInAccountsAndOtherReceivables
|
32267000 | usd | |
us-gaap |
Increase Decrease In Accounts And Other Receivables
IncreaseDecreaseInAccountsAndOtherReceivables
|
-4401000 | usd | |
us-gaap |
Increase Decrease In Contract With Customer Asset
IncreaseDecreaseInContractWithCustomerAsset
|
-6980000 | usd | |
us-gaap |
Increase Decrease In Contract With Customer Asset
IncreaseDecreaseInContractWithCustomerAsset
|
-16165000 | usd | |
us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
-6252000 | usd | |
us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
12064000 | usd | |
us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-10832000 | usd | |
us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
-7417000 | usd | |
us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
-10517000 | usd | |
us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
4974000 | usd | |
us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
-5046000 | usd | |
us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
-8477000 | usd | |
us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
18928000 | usd | |
us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
44409000 | usd | |
us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
16609000 | usd | |
us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
13244000 | usd | |
nwpx |
Payment Of Working Capital Adjustment In Business Acquisition
PaymentOfWorkingCapitalAdjustmentInBusinessAcquisition
|
-0 | usd | |
nwpx |
Payment Of Working Capital Adjustment In Business Acquisition
PaymentOfWorkingCapitalAdjustmentInBusinessAcquisition
|
2731000 | usd | |
us-gaap |
Payments For Proceeds From Other Investing Activities
PaymentsForProceedsFromOtherInvestingActivities
|
-62000 | usd | |
us-gaap |
Payments For Proceeds From Other Investing Activities
PaymentsForProceedsFromOtherInvestingActivities
|
-63000 | usd | |
us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-16547000 | usd | |
us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-15912000 | usd | |
us-gaap |
Proceeds From Lines Of Credit
ProceedsFromLinesOfCredit
|
142883000 | usd | |
us-gaap |
Proceeds From Lines Of Credit
ProceedsFromLinesOfCredit
|
113047000 | usd | |
us-gaap |
Repayments Of Lines Of Credit
RepaymentsOfLinesOfCredit
|
136664000 | usd | |
us-gaap |
Repayments Of Lines Of Credit
RepaymentsOfLinesOfCredit
|
138667000 | usd | |
us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
1067000 | usd | |
us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
548000 | usd | |
us-gaap |
Payments Related To Tax Withholding For Share Based Compensation
PaymentsRelatedToTaxWithholdingForShareBasedCompensation
|
1449000 | usd | |
us-gaap |
Payments Related To Tax Withholding For Share Based Compensation
PaymentsRelatedToTaxWithholdingForShareBasedCompensation
|
1652000 | usd | |
us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
4429000 | usd | |
us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
-0 | usd | |
us-gaap |
Proceeds From Payments For Other Financing Activities
ProceedsFromPaymentsForOtherFinancingActivities
|
0 | usd | |
us-gaap |
Proceeds From Payments For Other Financing Activities
ProceedsFromPaymentsForOtherFinancingActivities
|
-300000 | usd | |
us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-726000 | usd | |
us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-28120000 | usd | |
us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
1655000 | usd | |
us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
377000 | usd | |
CY2023Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
4068000 | usd |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
3681000 | usd |
CY2024Q3 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
5723000 | usd |
CY2023Q3 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
4058000 | usd |
us-gaap |
Capital Expenditures Incurred But Not Yet Paid
CapitalExpendituresIncurredButNotYetPaid
|
514000 | usd | |
us-gaap |
Capital Expenditures Incurred But Not Yet Paid
CapitalExpendituresIncurredButNotYetPaid
|
528000 | usd | |
us-gaap |
Right Of Use Asset Obtained In Exchange For Finance Lease Liability
RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability
|
269000 | usd | |
us-gaap |
Right Of Use Asset Obtained In Exchange For Finance Lease Liability
RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability
|
3243000 | usd | |
us-gaap |
Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
481000 | usd | |
us-gaap |
Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
952000 | usd | |
us-gaap |
Number Of Operating Segments
NumberOfOperatingSegments
|
2 | pure | |
nwpx |
Number Of Manufacturing Facilities
NumberOfManufacturingFacilities
|
13 | pure | |
CY2024Q3 | us-gaap |
Inventory Raw Materials Net Of Reserves
InventoryRawMaterialsNetOfReserves
|
61552000 | usd |
CY2023Q4 | us-gaap |
Inventory Raw Materials Net Of Reserves
InventoryRawMaterialsNetOfReserves
|
68110000 | usd |
CY2024Q3 | us-gaap |
Inventory Work In Process Net Of Reserves
InventoryWorkInProcessNetOfReserves
|
8293000 | usd |
CY2023Q4 | us-gaap |
Inventory Work In Process Net Of Reserves
InventoryWorkInProcessNetOfReserves
|
8912000 | usd |
CY2024Q3 | us-gaap |
Inventory Finished Goods Net Of Reserves
InventoryFinishedGoodsNetOfReserves
|
12660000 | usd |
CY2023Q4 | us-gaap |
Inventory Finished Goods Net Of Reserves
InventoryFinishedGoodsNetOfReserves
|
11911000 | usd |
CY2024Q3 | us-gaap |
Inventory Supplies Net Of Reserves
InventorySuppliesNetOfReserves
|
2472000 | usd |
CY2023Q4 | us-gaap |
Inventory Supplies Net Of Reserves
InventorySuppliesNetOfReserves
|
2296000 | usd |
CY2024Q3 | us-gaap |
Inventory Net
InventoryNet
|
84977000 | usd |
CY2023Q4 | us-gaap |
Inventory Net
InventoryNet
|
91229000 | usd |
us-gaap |
Other Comprehensive Income Loss Cash Flow Hedge Gain Loss Before Reclassification And Tax
OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAndTax
|
0 | usd | |
nwpx |
Number Of Active Stock Incentive Plans
NumberOfActiveStockIncentivePlans
|
1 | pure | |
CY2024Q3 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
1162000 | usd |
CY2023Q3 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
746000 | usd |
us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
3836000 | usd | |
us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
3050000 | usd | |
CY2024Q3 | us-gaap |
Letters Of Credit Outstanding Amount
LettersOfCreditOutstandingAmount
|
1600000 | usd |
CY2024Q3 | us-gaap |
Contract With Customer Liability Cumulative Catch Up Adjustment To Revenue Change In Estimate Of Transaction Price
ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
|
800000 | usd |
us-gaap |
Contract With Customer Liability Cumulative Catch Up Adjustment To Revenue Change In Estimate Of Transaction Price
ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
|
3100000 | usd | |
CY2023Q3 | us-gaap |
Contract With Customer Liability Cumulative Catch Up Adjustment To Revenue Change In Estimate Of Transaction Price
ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice
|
-800000 | usd |
CY2024Q3 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
130201000 | usd |
CY2023Q3 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
118722000 | usd |
us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
372921000 | usd | |
us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
334191000 | usd | |
CY2023Q4 | us-gaap |
Contract With Customer Asset Net
ContractWithCustomerAssetNet
|
120516000 | usd |
CY2022Q4 | us-gaap |
Contract With Customer Asset Net
ContractWithCustomerAssetNet
|
121778000 | usd |
nwpx |
Contract With Customer Asset Revenue Recognized
ContractWithCustomerAssetRevenueRecognized
|
220632000 | usd | |
nwpx |
Contract With Customer Asset Revenue Recognized
ContractWithCustomerAssetRevenueRecognized
|
192558000 | usd | |
nwpx |
Contract With Customer Asset Billings
ContractWithCustomerAssetBillings
|
-220060000 | usd | |
nwpx |
Contract With Customer Asset Billings
ContractWithCustomerAssetBillings
|
-207436000 | usd | |
nwpx |
Contract With Customer Asset Other
ContractWithCustomerAssetOther
|
-105000 | usd | |
nwpx |
Contract With Customer Asset Other
ContractWithCustomerAssetOther
|
-1480000 | usd | |
CY2024Q3 | us-gaap |
Contract With Customer Asset Net
ContractWithCustomerAssetNet
|
120983000 | usd |
CY2023Q3 | us-gaap |
Contract With Customer Asset Net
ContractWithCustomerAssetNet
|
105420000 | usd |
CY2023Q4 | us-gaap |
Contract With Customer Liability
ContractWithCustomerLiability
|
21450000 | usd |
CY2022Q4 | us-gaap |
Contract With Customer Liability
ContractWithCustomerLiability
|
17456000 | usd |
nwpx |
Contract With Customer Liability Billings
ContractWithCustomerLiabilityBillings
|
42333000 | usd | |
nwpx |
Contract With Customer Liability Billings
ContractWithCustomerLiabilityBillings
|
28544000 | usd | |
us-gaap |
Contract With Customer Liability Revenue Recognized
ContractWithCustomerLiabilityRevenueRecognized
|
-34822000 | usd | |
us-gaap |
Contract With Customer Liability Revenue Recognized
ContractWithCustomerLiabilityRevenueRecognized
|
-28736000 | usd | |
nwpx |
Contract With Customer Liability Other
ContractWithCustomerLiabilityOther
|
-64000 | usd | |
nwpx |
Contract With Customer Liability Other
ContractWithCustomerLiabilityOther
|
0 | usd | |
CY2024Q3 | us-gaap |
Contract With Customer Liability
ContractWithCustomerLiability
|
28897000 | usd |
CY2023Q3 | us-gaap |
Contract With Customer Liability
ContractWithCustomerLiability
|
17264000 | usd |
CY2024Q3 | us-gaap |
Revenue Remaining Performance Obligation
RevenueRemainingPerformanceObligation
|
231000000 | usd |
CY2024Q3 | us-gaap |
Revenue Remaining Performance Obligation Percentage
RevenueRemainingPerformanceObligationPercentage
|
0.33 | pure |
CY2024Q3 | us-gaap |
Revenue Remaining Performance Obligation Percentage
RevenueRemainingPerformanceObligationPercentage
|
0.51 | pure |
CY2024Q3 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.263 | pure |
us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.263 | pure | |
CY2023Q3 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.257 | pure |
us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.266 | pure | |
CY2024Q3 | us-gaap |
Net Income Loss
NetIncomeLoss
|
10253000 | usd |
CY2023Q3 | us-gaap |
Net Income Loss
NetIncomeLoss
|
5818000 | usd |
us-gaap |
Net Income Loss
NetIncomeLoss
|
24110000 | usd | |
us-gaap |
Net Income Loss
NetIncomeLoss
|
15628000 | usd | |
CY2024Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
9919000 | |
CY2023Q3 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
10014000 | |
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
9915000 | ||
us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
9985000 | ||
CY2024Q3 | us-gaap |
Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
|
136000 | |
CY2023Q3 | us-gaap |
Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
|
93000 | |
us-gaap |
Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
|
125000 | ||
us-gaap |
Weighted Average Number Diluted Shares Outstanding Adjustment
WeightedAverageNumberDilutedSharesOutstandingAdjustment
|
103000 | ||
CY2024Q3 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
10055000 | |
CY2023Q3 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
10107000 | |
us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
10040000 | ||
us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
10088000 | ||
CY2024Q3 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.03 | |
CY2023Q3 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
0.58 | |
us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
2.43 | ||
us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.57 | ||
CY2024Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.02 | |
CY2023Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.58 | |
us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
2.4 | ||
us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.55 | ||
CY2024Q3 | ecd |
Trd Arr Securities Agg Avail Amt
TrdArrSecuritiesAggAvailAmt
|
2500 |