
833 N.E.2d 382 (2005)
358 Ill. App.3d 1157
295 Ill.Dec. 549
Charles HEUERMAN, d/b/a Charles Heuerman Trucking, Plaintiff-Appellee,
v.
B & M CONSTRUCTION, INC., Defendant-Appellant.
No. 5-04-0170.
Appellate Court of Illinois, Fifth District.
July 12, 2005.
*384 David C. Nelson, E. Lee Waite II, Dilsaver & Nelson, Mattoon, for Appellant.
E.C. Eberspacher, Elizabeth A. Eberspacher, Dove & Dove, Shelbyville, for Appellee.
Justice GOLDENHERSH delivered the opinion of the court:
Plaintiff, Charles Heuerman, doing business as Charles Heuerman Trucking, sued defendant, B & M Construction, Inc., for breach of contract. After a bench trial, the circuit court of Effingham County entered a judgment in favor of plaintiff. On appeal, defendant raises these issues: (1) whether the trial court erred by not applying article 2 of the Uniform Commercial Code (Code) as adopted by the State of Illinois (810 ILCS 5/2-101 et seq. (West 2002)), (2) whether the trial court erred in assessing the amount of damages, (3) whether the award of interest was proper, and (4) whether the trial court erred by awarding attorney fees. We affirm.

FACTS
In the fall of 2000, the State of Illinois began taking bids for a road improvement project on Interstate 57 (I-57) between the Effingham County line and the Route 45 exit in Mattoon. Howell Asphalt and Howell Paving (Howell) were awarded the general contractor's position. Defendant was awarded a subcontract on this project for under-drain pipe work and hired plaintiff.
On February 2, 2001, plaintiff sent to defendant a document entitled "BID/QUOTE" (Bid). The Bid gives the location of the job site and also lists the quantities:


      "QUANTITY            DESCRIPTION         PRICE PER TON PIT
      27,000-32,000   CA16 Gravel or Stone          $14.30
      10,000-15,000   CM14 Gravel in lieu of        $12.30
                      CA16 Gravel or Stone"

Plaintiff negotiated a contract with a gas station near I-57, which allowed plaintiff to stockpile materials for the project. The gas station was within two miles of the job site. Plaintiff was not a union shop, nor did it have a contract with any applicable workers' unions. The week before the highway work was to begin, the International Brotherhood of Teamsters union (Teamsters) threatened to put up pickets unless union labor was hired to move and spread the stockpiled materials. On the Friday before the project was to commence, representatives of plaintiff, defendant, and Howell huddled to solve the problem. Plaintiff declined to sign a contract with the Teamsters. Plaintiff offered to cross the picket line, but defendant and Howell rejected this option. The parties reached a solution. Defendant agreed to hire union trucks and drivers to haul the materials from the stockpile in Neoga to the rockbox on the job site, and plaintiff agreed to provide a loader to load the materials onto the union trucks. Defendant would hire a union operator for that loader and agreed to pay the full price of $14.30 per ton for the materials. Plaintiff agreed to reimburse defendant for its expenses in hiring union trucks, drivers, and loader operators. In the construction industry, this is called "double-gating."
Within one week of starting the under-drain work, the Illinois Department of Transportation (Department) modified the specifications of the project and decided that the pipe trench would run at a constant depth of 24 inches. This modified specification would require less gravel. The Department notified defendant.
Plaintiff hauled materials to the Neoga stockpile every day and met the 1,500-to-1,700-ton-per-day *385 requirement. Charles Heuerman testified that he monitored the size of the Neoga stockpile but did not keep track of the progress at the job site.
On December 15, 2001, plaintiff filed a complaint against defendant, alleging breach of contract. A copy of the Bid was attached to the complaint, but plaintiff alleged that, at defendant's request, the contract had been orally modified in order to resolve the dilemma with the Teamsters. Defendant filed a motion to dismiss, stating that the Bid called for the sale of goods (gravel) and arguing that the asserted oral modifications violated the Illinois statute of frauds for the sale of goods as found in the Code (810 ILCS 5/2-201 (West 2002)). The court denied the motion to dismiss and ordered defendant to answer the complaint. The court ordered:
"The Complaint states a cause of action. The allegations are sufficient to take the case out of the statute of frauds. The terms of delivery were not specifically delineated in the contract[,] only showing a job site of a stretch of interstate and not actually requiring delivery to that site. The allegation also shows the product was actually delivered to a place agreed upon by the parties. All the modifications in the contract have to do with the service portion of the contract[,] not the goods portion of the contract. Further[,] the [p]laintiff alleges full compliance with the terms of the contract by the delivery alleged."
Defendant filed an answer to the complaint and filed two affirmative defenses, including alleging that the complaint was not in compliance with the requirements set forth in the Code (810 ILCS 5/2-101 et seq. (West 2002)). Plaintiff filed a first amended complaint, adding a second count seeking an additional $3 per ton for the hauling of 4,000 tons of gravel from the stockpile to the job site.
After a bench trial, the court entered a judgment in favor of plaintiff. The court stated:
"[Defendant's] position that by the custom and usage of the trade[] the contract with [plaintiff] is a `Requirements' contract obligating [defendant] to accept only so much CA16 as it actually used to install the under[-]drains is not supported by the facts or the law. Likewise, [defendant's] position that this transaction is governed by the [Code] is not well taken: the theory was not pled by [defendant]; no evidence specific to [defendant's] [Code] arguments was offered (nor would it have been admitted absent amendments to the pleadings); the contract in question is no more predominantly for the delivery of CA16 (not covered by the [Code] Article 2 Sales) than for the sale of CA16 (covered by the [Code] Article 2 Sales)[,] but the dispute between the parties in this litigation revolves exclusively around the delivery portion and not the goods portion of their contract; and, most significantly, [defendant's] failure to inform [plaintiff] to decrease the amount of material by approximately 25% below the contract's minimum material term vitiates the [Code] requirement that [defendant] acted in `good faith,' a necessary condition precedent for [defendant's] [Code] theories."
The court found that there was no requirements contract. The court stated that even if there had been a requirements contract, plaintiff's conduct would have been excused. In addition to amounts due for the performance of the contract, the court awarded plaintiff attorney fees in the amount of $26,141.04. Defendant appeals.

ANALYSIS
On appeal, defendant contends that the parties entered into a requirements contract *386 for the sale of gravel as goods. As an initial matter, a finding that the parties entered into a requirements contract would require a finding that the Code applies. Because we find the trial court properly ruled that the Code does not apply, we do not address other issues raised on appeal.
Plaintiff contends that defendant waived any argument that the Code applied to this case. Indeed, the trial court found that defendant had not properly pled that the Code applied. A review of the record indicates that defendant objected to plaintiff's original complaint for a failure to comply with the Code and that the court denied the motion. We find that the record is sufficient to review the issue of whether the Code applies to the contract between plaintiff and defendant. Because we find that the Code does not govern this contract, we need not address whether defendant properly pled that this was a requirements contract.
Defendant contends that the trial court erred by not applying the Code. The resolution of this issue is determined by whether the contract was for the sale of goods or whether it was for the sale of services. Article 2 of the Code only applies to the sale of goods. 810 ILCS 5/2-102 (West 2002); Tivoli Enterprises, Inc. v. Brunswick Bowling & Billiards Corp., 269 Ill.App.3d 638, 645, 207 Ill.Dec. 109, 646 N.E.2d 943, 947 (1995); Zielinski v. Miller, 277 Ill.App.3d 735, 741, 214 Ill.Dec. 340, 660 N.E.2d 1289, 1294 (1995); see 67 Am.Jur.2d Sales § 37 (2003) ("Article 2 applies to transactions in goods but does not apply to construction contracts or contracts for the rendition of services"). Illinois courts use a "predominant purpose" test if a contract provides for both the sale of goods and the rendition of services. As the Illinois Supreme Court has explained:
"Under this test, if the contract is predominantly for the sale of goods, with services being incidental thereto, the contract will be governed by article 2. Conversely, if the contract is predominantly for services, with the sale of goods being incidental thereto, the contract will not fall within article 2." Belleville Toyota, Inc. v. Toyota Motor Sales, U.S.A., Inc., 199 Ill.2d 325, 352-53, 264 Ill.Dec. 283, 770 N.E.2d 177, 195 (2002).
Defendant is able to point to several cases in which Illinois courts have found that the predominant purpose of the contract was the sale of goods. In Tivoli Enterprises, Inc., 269 Ill.App.3d at 646, 207 Ill.Dec. 109, 646 N.E.2d at 948, the court found that the contract was predominantly for goods and that the services were incidental. The court succinctly analyzed the relevant facts:
"First, the contract's introductory language states that Tivoli was ordering from Brunswick: (1) material for the assembly, construction[,] and installation of items identified as 12 replacement bowling lanes; and (2) equipment identified as a lane-cleaning tool. This suggests the thrust of the contract as being one for the sale of goods. Second, the contract provides for shipment and installation of the material and equipment by Brunswick. This too suggests the contract to be primarily for the sale of goods, which can be shipped and installed, unlike services. Third, the contract specifies a total sales price of $74,655, which includes sales tax. Such tax is found in the sale of goods, but not services. Finally, the contract warrants the lanes to be free from defects in materials and workmanship for five years. This warranty runs to the goods which Brunswick provided, not the services incidental thereto." (Emphasis in original.) Tivoli Enterprises, Inc., 269 *387 Ill.App.3d at 646-47, 207 Ill.Dec. 109, 646 N.E.2d at 948.
The court acknowledged that the services provided by the defendant were substantial. The defendant performed a feasibility study and supplied the labor necessary for the installation of the lanes. The court found, however, that these services did not render the contract as one predominantly for services. See Bob Neiner Farms, Inc. v. Hendrix, 141 Ill.App.3d 499, 501, 95 Ill.Dec. 784, 490 N.E.2d 257, 258 (1986).
On the other hand, plaintiff is able to point to several cases in which Illinois courts have found a contract to be predominantly for services. In Zielinski, homeowners sued the general contractor after noticing that the bricks in their house were flaking and cracking. Zielinski, 277 Ill. App.3d at 741, 214 Ill.Dec. 340, 660 N.E.2d at 1294. The general contractor brought third-party actions against the masonry subcontractor, Chris W. Knapp & Sons, Inc., and against the brick supplier, Peoria Brick & Tile Company, and sought indemnification. The court found the contract with the masonry contractor to be one for services. The defendant had agreed to perform all the masonry work on the house, including providing the bricks necessary to complete the task. The court found, however, that masonry subcontracts of this sort are not primarily contracts for the sale of goods. Zielinski, 277 Ill. App.3d at 741, 214 Ill.Dec. 340, 660 N.E.2d at 1294.
In Brandt v. Boston Scientific Corp., 204 Ill.2d 640, 652, 275 Ill.Dec. 65, 792 N.E.2d 296, 303 (2003), a patient sued a hospital after suffering severe complications following the surgical implementation of a medical device that was later recalled by the manufacturer for being substandard. The status of the surgeon was not determinative. The court deconstructed the bill and found that a majority of the charges, 51.4%, were for services and that only a small fraction of the bill was for the medical device and surgical kit. Brandt, 204 Ill.2d at 652, 275 Ill.Dec. 65, 792 N.E.2d at 303. The court also noted that the bill itemized charges under the heading "service description." The court continued:
"There is, however, more to the predominant purpose test than making a simple comparison of money paid for goods and services within a transaction. We must consider the predominate nature of the transaction as a whole. As can be reasonably inferred from the amended complaint, Brandt went to the Health Center for medical treatment for her urinary incontinence, rather than merely to buy a sling as one buys goods from a store. Treatment for her condition involved implantation of the sling. While Brandt clearly purchased these goods from the Health Center, the sling was only potentially useful after its surgical implantation. Even assuming the surgeon was a private physician not affiliated with the Health Center, the Health Center provided services before, during, and after surgery to facilitate implantation of the sling. These services, the medical treatment, were the primary purpose of the transaction between Brandt and the Health Center, and the purchase of the sling was incidental to the treatment." Brandt, 204 Ill.2d at 652-53, 275 Ill.Dec. 65, 792 N.E.2d at 303.
Defendant contends that the thrust of the contract was for the sale of goods. Defendant also asserts that, like a contract for the sale of goods, the Bid set forth a description of goods, an estimated quantity, and a price. Defendant points to several parts of the Bid, most notably that the contract calls for the payment of the "amounts due for the material." Defendant *388 also contends that by providing a location and then specifying "Loads Will Be: Dumped," the Bid included shipment and installation terms, which would not be included for a services contract. In Tivoli Enterprises, Inc., the court noted that goods can be shipped and delivered, but services cannot. Tivoli Enterprises, Inc., 269 Ill.App.3d at 646-47, 207 Ill.Dec. 109, 646 N.E.2d at 948. Defendant argues that, like the situation in Tivoli Enterprises, Inc., the shipping and installation were parts of a contract that was predominantly for the sale of goods.
Hauling, however, can be a service. For example, in Lukwinski v. Stone Container Corp., 312 Ill.App.3d 385, 389, 244 Ill.Dec. 690, 726 N.E.2d 665, 669 (2000), a truck driver for a delivery carrier company sought to invoke warranty protections after he was injured delivering corrugated boxes. The Code did not apply. The court found that the contract between the driver's employer and the seller of the corrugated boxes was "entirely one for the rendition of services." Lukwinski, 312 Ill. App.3d at 389, 244 Ill.Dec. 690, 726 N.E.2d at 669.
The record supports a finding that the dominant factor of the contract was the service of hauling. The requirement that the loads were to be dumped can be seen as a description of the trucking service provided. This reading is further suggested by the specification in the Bid of the type of over-the-road vehicle to be used  a "semi." In contrast to contracts whose purpose is the sale of goods, the description of the form of delivery indicates that the service of trucking was the focus of the contract. Cf. Tivoli Enterprises, Inc., 269 Ill.App.3d at 646, 207 Ill.Dec. 109, 646 N.E.2d at 948.
Defendant's focus on the phrase "amounts due for materials" distorts its context in the contract. The description of the materials is given in the context of the service of trucking. Instead of simply listing an amount of goods "sold," the Bid uses the term "All Prices Are Quoted Furnished & Delivered." Cf. Bob Neiner Farms, Inc., 141 Ill.App.3d at 501, 95 Ill. Dec. 784, 490 N.E.2d at 258. Also conspicuously absent from the contract are the terms of art for the sale of goods  "buyer" and "seller." Plaintiff used its proper name, whereas defendant was referred to as a "customer."
Defendant contends that the trial court did not appear to apply the predominant factor test at all. Defendant asserts that the court erred by focusing on only a part of the contract. The trial court did note that the dispute revolved exclusively around the delivery and not the goods portion of the contract. The trial court noted this after finding that the description of this contract as one predominantly for goods or services was not easily resolved. We agree with the trial court's assessment of the difficulty of the question. We also agree with the trial court's findings. The court noted that neither goods nor services clearly predominated the contract. Application of the Code, article 2, requires the predominant purpose of the contract to be the sale of goods. The court was correct to find that the Code did not govern this contract. The court's note that the litigation revolves exclusively around the delivery portion of the contract is well-taken. Illinois does not use a gravamen-of-the-action test to determine whether a contract should be seen as one for services or one for the sale of goods. Tivoli Enterprises, Inc., 269 Ill. App.3d at 646, 207 Ill.Dec. 109, 646 N.E.2d at 948; cf. 1 W. Hawkland, Uniform Commercial Code Series § 2-102:4 (2002) (arguing that the gravamen-of-the-action test can be instructive in gray-area cases). The fact that the dispute between the parties *389 was based on services, however, could be seen as an indication that the contract was predominantly for services.
The significance of the court noting that the subject of the litigation was services becomes apparent when viewed in light of the breakdown of the bill. Plaintiff provides a breakdown of the costs involved in the contract, and the breakdown indicates that close to two-thirds of the charges were for the service of hauling, compared to one-third for the price of procuring rock from gravel companies. Like Brandt, the itemization of the bill indicates that the contract was predominantly for services. See Brandt, 204 Ill.2d at 652, 275 Ill.Dec. 65, 792 N.E.2d at 303.
A finding that the contract was not predominantly for the sale of goods is supported by the record. After all, plaintiff is arguing that it is in the business of providing the service of trucking. Although the interpretation of the terms of a contract is a matter of law, whether the contract was predominantly for goods or services is generally a question of fact. Maldonado v. Creative Woodworking Concepts, Inc., 342 Ill.App.3d 1028, 1034, 277 Ill.Dec. 576, 796 N.E.2d 662, 667 (2003); 67 Am.Jur.2d Sales § 37 (2003). The trial court's skill as a fact finder was of particular importance in this case, considering the claims of an oral modification and the parties' agreement to double-gating. The court properly found that the Code did not apply to this contract.
Defendant contests the amount of damages awarded by the trial court, specifically, that the trial court erred in its determination of the amount of gravel remaining in the Neoga stockpile. The trial court awarded defendant a transport savings credit of $2.70 per ton for the gravel remaining in the Mattoon and Neoga stockpiles. Defendant points out that the witness the court relied on gave inconsistent testimony. Although this witness is plaintiff's brother and employee, he was called to the stand on behalf of and by defendant. The witness testified regarding the dimensions of the stockpile. The court's findings regarding the size of the stockpile and the figure for the transportation savings credit were based on properly admitted evidence and were not against the manifest weight of the evidence.
Similarly, the award for interest is not against the manifest weight of the evidence. The contract called for interest to be paid. The court made mathematical calculations regarding the amount of interest based on the size and time of the deliveries. The court was presented with testimony to support the finding regarding the time of the deliveries. The award of interest was not against the manifest weight of the evidence.
Under the terms of the contract, plaintiff is entitled to attorney fees and court costs necessarily incurred for collecting the amounts due. The trial court found that plaintiff was entitled to attorney fees under those terms. Defendant contends that the amount of attorney fees awarded is unreasonable. See Powers v. Rockford Stop-N-Go, Inc., 326 Ill.App.3d 511, 515, 260 Ill.Dec. 393, 761 N.E.2d 237, 240 (2001). Defendant's argument appears to be based on an argued-for reduction of the award of damages by this court. Because we affirm the trial court, there is no doubt that plaintiff is the prevailing party. See J.B. Esker & Sons, Inc. v. ClePa's Partnership, 325 Ill.App.3d 276, 280, 259 Ill.Dec. 136, 757 N.E.2d 1271, 1275 (2001). The attorney fees incurred by plaintiff were, as defined by the contract, necessary to collect on amounts due. The trial court's award of attorney fees was proper.


*390 CONCLUSION
Accordingly, the judgment of the circuit court of Effingham County is hereby affirmed.
Affirmed.
CHAPMAN and WELCH, JJ., concur.
