XML 28 R14.htm IDEA: XBRL DOCUMENT
v3.22.4

Revenue | 12 Months Ended
--- | ---
Dec. 31, 2022
Revenue from Contract with Customer [Abstract] |
Revenue | Revenue The Company’s revenues are comprised of product and service sales, including products and services provided under long-term agreements with its customers. All revenue is recognized when the Company satisfies its performance obligations under the contract, either implicit or explicit, by transferring the promised product or rendering a service to its customer either when or as its customer obtains control of the product or as the service is rendered. A performance obligation is a promise in a contract to transfer a distinct product or render a specific service to a customer. A contract’s transaction price is allocated to each distinct performance obligation. The majority of the Company’s contracts have a single performance obligation, as the promise to transfer products or render services is not separately identifiable from other promises in the contract and, therefore, not distinct. Revenue is measured as the amount of consideration the Company expects to receive in exchange for transferring products or providing services. Revenue is recorded net of returns, allowances, customer discounts, and incentives. Sales, value added, and other taxes collected from customers and remitted to governmental authorities are accounted for on a net (excluded from revenues) basis. Shipping and handling costs are included in cost of goods sold. The Company’s performance obligations under long-term agreements with its customers are generally satisfied over time. Over time revenue is primarily comprised of transit infrastructure projects within the Rail segment, precast concrete buildings within the Precast Concrete Products segment, and long-term bridge projects within the Fabricated Steel Products division and custom precision metering systems within the Coatings and Measurement division in the Steel Products and Measurement segment. Revenue under these long-term agreements is generally recognized over time either using an input measure based upon the proportion of actual costs incurred to estimated total project costs or an input measure based upon actual labor costs as a percentage of estimated total labor costs, depending upon which measure the Company believes best depicts the Company’s performance to date under the terms of the contract. A certain portion of the Company’s revenue recognized over time under these long-term agreements is recognized using an output method, specifically units delivered, based upon certain customer acceptance and delivery requirements. The Company records contract liabilities in “Deferred revenue” within the Consolidated Balance Sheets. Deferred revenue of $19,452 and $13,411 as of December 31, 2022 and 2021, respectively, consisted of customer billings or payments received for which the revenue recognition criteria had not yet been met as well as contract liabilities (billings in excess of costs) on over time revenue projects. For the years ended December 31, 2022 and 2021, revenue recognized over time was as follows:
|  | Year Ended December 31, |  | Percentage of Total Net Sales Year Ended December 31,
|  | 2022 |  | 2021 |  | 2022 |  | 2021
Over time input method |  | $ | 67,116 |  |  | $ | 100,787 |  |  | 13.5 | % |  | 19.6 | %
Over time output method |  | 68,794 |  |  | 52,844 |  |  | 13.8 |  |  | 10.3 |
Total over time sales |  | $ | 135,910 |  |  | $ | 153,631 |  |  | 27.3 | % |  | 29.9 | %
Accounting for these long-term agreements involves the use of various techniques to estimate total revenues and costs. The Company estimates profit on these long-term agreements as the difference between total estimated revenues and expected costs to complete a contract and recognizes that profit over the life of the contract. Contract estimates are based on various assumptions to project the outcome of future events that may span several years. These assumptions include, among other things, labor productivity, cost and availability of materials, and timing of funding by customers. The nature of these long-term agreements may give rise to several types of variable consideration, such as claims, awards, and incentive fees. Contract estimates may include additional revenue for submitted contract modifications if there exists an enforceable right to the modification, the amount can be reasonably estimated, and its realization is probable. These estimates are based on historical collection experience, anticipated performance, and the Company’s best judgment at that time. These amounts are generally included in the contract’s transaction price and are allocated over the remaining performance obligations. Changes in judgments related to the estimates above, customer disputes, or changes in contract terms could impact the timing and amount of revenue recognized and, accordingly, the timing and amount of associated income. In the event that a contract loss becomes known, the entire amount of the estimated loss is recognized in the Consolidated Statements of Operations. The majority of the Company’s revenue is from products transferred and services rendered to customers at a point in time, which is inherent in all major product and service categories. Point in time revenue accounted for 72.7% and 70.1% of revenue for the years ended December 31, 2022 and 2021, respectively. The Company recognizes revenue at the point in time in which the customer obtains control of the product or service, which is generally when product title passes to the customer upon shipment or the service has been rendered to the customer. In limited cases, title does not transfer upon shipment and revenue is not recognized until the customer has received the products at a designated physical location. For the years ended December 31, 2022 and 2021, net sales by the timing of the transfer of goods and services were as follows:
Year Ended December 31, 2022 |  | Rail, Technologies, and Services |  | Precast Concrete Products |  | Steel Products and Measurement |  | Total
Point in time |  | $ | 241,759 |  |  | $ | 43,069 |  |  | $ | 76,759 |  |  | $ | 361,587 |
Over time |  | 58,833 |  |  | 61,143 |  |  | 15,934 |  |  | 135,910 |
Total net sales |  | $ | 300,592 |  |  | $ | 104,212 |  |  | $ | 92,693 |  |  | $ | 497,497 |
Year Ended December 31, 2021 |  | Rail, Technologies, and Services |  | Precast Concrete Products |  | Steel Products and Measurement |  | Total
Point in time |  | $ | 232,880 |  |  | $ | 21,351 |  |  | $ | 105,758 |  |  | $ | 359,989 |
Over time |  | 66,869 |  |  | 49,639 |  |  | 37,123 |  |  | 153,631 |
Total net sales |  | $ | 299,749 |  |  | $ | 70,990 |  |  | $ | 142,881 |  |  | $ | 513,620 |
See Note 2 for additional information for the Company’s net sales by major product and service category. The timing of revenue recognition, billings, and cash collections results in billed receivables, costs in excess of billings (contract assets), and billings in excess of costs (contract liabilities), included in deferred revenue on the Consolidated Balance Sheets. As of December 31, 2022 and 2021, the Company's contract asset balances were $33,613 and $36,179, respectively, with significant changes during the year due to transfers of contract assets to receivables of $15,018 and $24,501, respectively. As of December 31, 2022 and 2021, contract liabilities, recorded within deferred revenue, were $6,781 and $3,245, respectively. Advanced payments from customers typically relate to contracts with respect to which the Company has significantly fulfilled its obligations, but due to the Company’s continuing involvement with the project, revenue is not recognized until title, ownership, and risk of loss have passed to the customer. Significant changes in contract liabilities during the year ended December 31, 2022 and 2021 included increases of $2,910 and $3,245, respectively, due to billings in excess of costs, excluding amounts recognized as revenue during the period. During the years ended December 31, 2022 and 2021, contract liabilities were reduced due to revenue recognized of $2,665 and $917, respectively, from contract liability balances. As of December 31, 2022, the Company had approximately $272,251 of remaining performance obligations, which is also referred to as backlog. Approximately 8.3% of the backlog as of December 31, 2022 was related to projects that are anticipated to extend beyond December 31, 2023.

X
- References No definition available. + Details
Name: | us-gaap_RevenueFromContractWithCustomerAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -URI https://asc.fasb.org/topic&trid=49130388 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 10 -URI https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 13 -Subparagraph (b)(2) -URI https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 12 -Subparagraph (b) -URI https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 9 -URI https://asc.fasb.org/extlink&oid=126920106&loc=SL49130550-203045 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 12 -Subparagraph (e) -URI https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045 Reference 7: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 12 -Subparagraph (a) -URI https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045 Reference 8: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 12 -Subparagraph (d) -URI https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045 Reference 9: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 15 -URI https://asc.fasb.org/extlink&oid=126920106&loc=SL49130558-203045 Reference 10: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 12 -Subparagraph (c) -URI https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045 + Details
Name: | us-gaap_RevenueFromContractWithCustomerTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration