Freelance and independent ML engineers build, deploy, and maintain machine learning systems for startups, agencies, and internal teams at larger companies. Invoices usually cover model development, data pipeline work, MLOps setup, and ongoing advisory or support hours. Many work through their own LLC or as 1099 contractors on monthly or milestone-based engagements.
Create an invoice for payment collection
Upload logo
PDF will be generated with filename:
Invoice_1001_Client_2026-10-14.pdf
Most independent ML engineers bill hourly for open-ended or exploratory work and a flat fee per milestone for well-scoped projects such as a prototype, a deployed inference service, or a model evaluation. Monthly retainers are common for ongoing model monitoring, retraining, and on-call support. Day rates are used for short consulting engagements and workshops. Discovery or feasibility studies are often priced separately from the build, because the outcome of the research is uncertain. Cloud compute, GPU time, labeling costs, and third-party API usage are either billed through at cost (sometimes with a small handling markup) or paid directly by the client from their own accounts, which is the cleaner option. Rates rise for specialized work such as LLM fine-tuning, computer vision in production, or regulated domains like healthcare and finance.
| Service | Priced | Typical range |
|---|---|---|
| General ML engineering (model development, training pipelines) | per hour | $100-200 |
| Senior or specialized work (LLM fine-tuning, RAG systems, computer vision) | per hour | $150-275 |
| Consulting or architecture review | per day | $1,200-2,400 |
| Feasibility study or data audit | flat fee | $2,500-10,000 |
| Prototype or proof of concept | flat fee | $8,000-30,000 |
| MLOps setup (CI/CD, model registry, monitoring) | flat fee | $5,000-20,000 |
| Monitoring, retraining, and support retainer | per month | $2,000-8,000 |
Typical US ranges. Rates vary by region, experience, and job size.
| Description | Qty | Rate | Amount |
|---|---|---|---|
| Data pipeline development: feature extraction and cleaning for churn dataset | 24 hours | $135.00 | $3,240.00 |
| Model training and hyperparameter tuning (gradient boosted trees, 3 iterations) | 18 hours | $135.00 | $2,430.00 |
| Model evaluation report and stakeholder review call | 6 hours | $135.00 | $810.00 |
| Inference API deployment on client AWS account with logging | 1 flat fee | $2,800.00 | $2,800.00 |
| Cloud GPU training costs (pass-through, receipts attached) | 1 lump sum | $412.50 | $412.50 |
| Total | $9,692.50 | ||
Notes: Invoice covers work performed March 1-31 under SOW dated February 20. Payment due within 30 days by ACH or wire. Late balances accrue 1.5% per month. All code and trained model artifacts transfer to client upon payment in full, per the services agreement.
Corporate accounts payable teams often will not process an invoice without a PO or matching contract reference.
Ties charges to specific deliverables such as 'v1 model trained' or 'API deployed' so the client can approve them quickly.
Separating data prep, training, evaluation, and deployment shows where time went and heads off questions about why a model took longer than expected.
GPU hours, API credits, and labeling fees can be large; itemizing them separately keeps them distinct from your labor.
Documents who owns the purchase and avoids disputes over reimbursement.
States when code, weights, and datasets transfer to the client, usually upon full payment.
Needed for the client to issue a 1099 where required and to pay by ACH or wire correctly.
Net 15 to Net 30 is standard, and larger companies often push for Net 45 or Net 60, so confirm this before signing. For new clients, a deposit of 25 to 50 percent on fixed-fee projects is common, with the balance tied to milestones. Retainers are usually invoiced at the start of the month. Many engineers add a late fee of 1 to 1.5 percent per month and the right to pause work on unpaid invoices. ACH and wire transfers are the most common payment methods for larger amounts; cards are occasionally accepted with the processing fee passed on, where allowed.
Model performance depends on data you have not seen yet. Bill an initial data audit or feasibility phase on its own so you are paid even if the data turns out to be too thin for the project.
Define payment triggers like 'baseline model delivered with evaluation report' rather than 'model is accurate enough.' Avoid linking payment to a specific accuracy target unless the target is agreed in writing and the data is verified.
Setting up compute under the client's account keeps large GPU bills off your books and removes the risk of fronting thousands of dollars in costs you must then chase.
Failed experiments and dead ends are real work. Log time by task so you can show the client the iteration behind the result if questions come up.
Monitoring and retraining work is unpredictable. A monthly fee with a stated hours cap, and an overage rate beyond it, keeps billing simple and income steady.
Hourly suits exploratory work where scope is unclear, such as research or debugging an existing model. Fixed fees work once the data and deliverables are understood, for example a deployed API with a defined interface. A common approach is hourly or a fixed fee for discovery, then a fixed fee or capped hourly estimate for the build.
The cleanest option is to have the client pay the cloud provider directly from their own account. If you pay upfront, list the costs as a separate line item with receipts and invoice them at cost, or with a small handling fee if your contract allows it.
Your contract should say you are paid for the work performed, not for a guaranteed metric. If a target exists, define the dataset, metric, and test method in the SOW, and note that results depend on data quality the client provides.
It depends on the state and on what you deliver. Some states tax custom software or SaaS-like services while many do not tax professional services. Check your state's rules or ask an accountant, especially if you sell access to a hosted model.
Whatever your contract says. Many engineers state that ownership transfers on full payment, and that they retain rights to pre-existing tools and general know-how. Put this in the agreement and repeat it briefly on the invoice.
Send a ML Engineer estimate for approval, then turn it into an invoice when the work is done.
ML Engineer estimate template