A $2,000/month freelance contract on Upwork and a $2,000/month full-time role through an EOR are not the same $2,000. After platform service fees, self-paid social security, and the value of statutory benefits an employee gets automatically, the two paths can differ by several hundred dollars a month in real terms, and the direction of that gap usually surprises people.
Every Indonesian engineer weighing global work eventually runs into this choice: build a client base on a freelance platform, or take a full-time offer from a foreign company through an Employer of Record (EOR). Both routes can lead to a USD salary.
Both get pitched as "the way to go global." But the number on the contract and the number that actually lands in your bank account every month are two different things, and the gap between them isn't the same on both paths.
What a Freelance Platform Actually Takes Off the Top
Upwork is the platform most Indonesian engineers start with, so it's worth looking at exactly what it charges.
As of 2026, Upwork's own pricing page confirms freelancers pay a variable service fee of 0% to 15% per contract, set at the moment a proposal is accepted and locked for the life of that contract. Most freelancers land close to the middle of that range in practice.
That headline percentage isn't the whole cost, though. A detailed 2026 breakdown of Upwork's fee stack found that once you add Connects (the pay-to-apply credits needed for most proposals, at $0.15 each, with 4 to 16 typically required per application), withdrawal fees, and currency conversion costs, the platform can extract over $1,500 from a $10,000 project — and more than $7,500 from a $50,000 retainer.
None of these are hidden in a deceptive sense. They're disclosed individually. They're just never shown together as one number, which is exactly why so many freelancers underestimate their real cost of doing business on the platform.
Other platforms shift the math differently. Fiverr charges a flat 20% regardless of contract size or client relationship length. Freelancer.com sits closer to 10%.
Toptal and a handful of newer platforms advertise 0% freelancer commission, but they take their margin from the client side instead and accept only a small fraction of applicants — Toptal's own screening process reportedly admits around 3% of those who apply. None of this is inherently bad. It just means the fee isn't the only filter; the acceptance rate is too.
What "Full-Time Through an EOR" Actually Includes
A full-time role through an EOR looks different on paper because the deductions aren't itemized the same way, they show up as statutory entitlements instead of platform fees, and most of the cost is paid by the employer, not the worker.
The most concrete example is BPJS. Every legitimately employed worker in Indonesia is entitled to BPJS Kesehatan and BPJS Ketenagakerjaan, and under a compliant EOR arrangement, the employer covers the majority of that contribution.
RainTech's complete guide to BPJS for foreign employers breaks down exactly what that employer contribution covers and how it's supposed to appear on a payslip.
A freelancer who wants equivalent health and employment-injury coverage has to enroll independently through BPJS Mandiri and pay the full premium themselves, with no employer share offsetting the cost.
Beyond BPJS, a compliant full-time contract also comes with THR (a mandatory 13th-month payment before major religious holidays), statutory paid leave, and severance protection under Indonesian labor law if the relationship ends.
None of these show up as a line item in a monthly paycheck the way an Upwork service fee shows up as a deduction, but they carry real financial value, and a freelancer has none of them by default.
The contract and counter-offer sections further down cover how to weigh these entitlements when two offers look similar on the surface.
A Worked Example: Same Headline Number, Different Take-Home
Here's an illustrative comparison using RainTech's published Tier 2 salary range ($1,200–$2,000/month) to make the gap concrete. Take a mid-level engineer earning $2,000/month gross on both paths.
| Category | Freelance Platform (Upwork) | Full-Time Role (Compliant EOR) |
|---|---|---|
| Gross Monthly | $2,000 | $2,000 |
| Platform Service Fee | –$200 (~10% effective fee) | $0 (No platform fee deducted) |
| Client Acquisition / Proposal Costs | –$20 to $40/month (Connects & proposals) | $0 |
| BPJS Health & Employment | –$25 to $50/month (Self-paid BPJS Mandiri) | About –$55/month (1% health, 2% JHT, 1% pension; the employer pays the larger share) |
| Income Tax Handling | Self-managed filing (PPh 25/29), no automatic withholding | Withheld and reported by employer automatically (PPh 21) |
| THR (13th-Month Bonus) | $0 (Zero THR) | 1 extra month's pay per year ($2,000 equivalent) |
| Realistic Net Income | ~$1,700–$1,750 / month before income tax | ~$1,700 / month after PPh 21 and BPJS (single filer) |
| Protections & Guarantees | Zero severance protection; income stops when contract ends | Statutory leave, BPJS coverage, and severance (permanent contract) or compensation pay (fixed-term contract) |
The freelance path isn't just paying more in fees, but it's also carrying costs (self-paid BPJS, no THR, no severance) that a full-time EOR arrangement absorbs on the employer's side by law.
Monthly take-home ends up close on both paths once PPh 21 and the employee's BPJS share come out of the EOR salary. The difference sits outside the monthly number: over a full year, THR alone adds roughly one extra month of income that the freelance comparison simply doesn't have.
Where Freelance Platforms Still Make Sense
None of this means freelancing is the worst choice for everyone. It's the better fit when:
- You want multiple income streams instead of one employer, as a hedge against any single relationship ending.
- You're testing global clients before committing to one full-time role.
- Your skill set commands rates high enough that even a 10–15% platform cut still clears more than a comparable full-time salary. This is realistic for senior specialists with strong portfolios, less so for engineers early in their career
- You value schedule flexibility over benefits like BPJS and severance protection.
The 3 Things You Must Clarify Before Signing
#1: Remote Working Terms
Ask these specifically:
- Timezone: Must you be online 9am-5pm Jakarta time? Or flexible? (A 9am-5pm day in UTC-7, US Pacific summer time, runs from 11pm to 7am in Jakarta. Avoid it.)
- Equipment: Does the company provide laptops? Internet stipend?
- Location: Can you work from anywhere in Indonesia? Can you travel if you maintain hours?
- Meetings: Are they recorded or live-only? Live meetings at bad hours = exhaustion.
#2 and #3: IP Ownership and Exit Terms
The other two are IP ownership, including whether you can keep side projects, and exit terms: notice period and severance. 5 EOR Contract Red Flags for Indonesian Engineers walks through what each clause should say, so check your contract against it before you sign.
The Counter-Offer Template
When they offer $1,800, respond with:
"Thank you for the offer. I appreciate it. Based on market rates for mid-level [your stack] engineers in Indonesia, comparable roles with global companies pay $1,200–2,000/month + benefits, and my experience puts me at the top of that range. I'd like to propose $2,000/month, which aligns with market data and my track record in [specific expertise]."
Those figures are the Tier 2 range from the worked example above. If you're senior, use the Tier 3 range of $2,000–3,000/month instead.
Key principles:
- Always counter (shows you know your worth)
- Use market data (makes it objective)
- Tie to value you'll deliver (not your personal need)
- Split the difference (easier to approve)
If they say no to salary, ask about:
- Signing bonus ($200-300)?
- Extra paid leave?
- Professional development budget?
- Flexible hours?
Before You Sign: Your Checklist
- Calculate real compensation (base + all benefits + equipment)
- Ask about remote terms (time zone, location, equipment, meetings)
- Review contract clauses (IP ownership, side projects, notice period, severance)
- Research market rates for your skill level in Indonesia.
- Counter-offer with market data (not personal need)
- Confirm tax withholding (PPh 21, BPJS, ask for pay stub example)
- Sleep on it 24 hours before saying yes.
FAQs
Is Upwork's 0-15% fee negotiable?
No, it's set automatically per contract when a proposal is accepted and stays fixed for that contract's duration. It's not something you negotiate with the client, it's the platform's cut regardless of what rate you agree on.
Do EOR full-time roles ever have any fee at all deducted from salary?
Not from the employee side under a compliant arrangement. The EOR's service fee is paid by the employer, not deducted from the worker's gross salary. It's a separate line item in the employer's cost, not the engineer's.
Can I do both — freelance and take a full-time EOR role — at the same time?
Generally no, if the full-time contract includes standard exclusivity terms, which most legitimate EOR-mediated employment contracts do. This is worth clarifying directly during offer negotiation if maintaining some freelance income matters to you.
Which path builds a stronger long-term profile for global companies?
Both can, but for different reasons. A full-time EOR role gives you a verifiable single-employer track record, which some hiring managers weigh heavily. A strong freelance portfolio demonstrates range across multiple clients. Neither is objectively stronger, it depends on what the next opportunity is evaluating for.
Next Step
Neither path is wrong, but the real math behind each one is easy to get wrong if you're only comparing the number on the offer.
If predictable income, BPJS coverage, and severance protection matter more to you right now than platform flexibility, join RainTech's talent pool and get matched with global companies hiring full-time through a properly licensed, entity-owned EOR — real BPJS, real THR, and no platform fee taken off the top of your salary.
