Direct costs are the ones that would disappear if a specific product, service or customer disappeared: materials, subcontractors, direct labor hours, shipping, transaction fees, and any cost tied specifically to delivering that item. Indirect costs — rent, management salaries, insurance, software, marketing — continue regardless of any single product's existence.
The most common mistake at this stage is lumping too much into 'overhead' out of convenience. If a cost can be traced to a specific line of business with reasonable effort, it belongs there, not in a shared bucket that dilutes the signal.