[{"data":1,"prerenderedAt":151},["ShallowReactive",2],{"/blog/upwork-taxes":3},{"id":4,"title":5,"authors":6,"badge":12,"body":14,"date":141,"description":142,"extension":143,"image":144,"meta":145,"navigation":146,"path":147,"seo":148,"stem":149,"__hash__":150},"posts/3.blog/1.upwork-taxes.md","How to Track Upwork Income for Taxes (Without Spreadsheets)",[7],{"name":8,"to":9,"avatar":10},"Mohammad Sulthan","https://x.com/mohsulthana",{"src":11},"https://avatars.githubusercontent.com/u/mohsulthana",{"label":13},"Finance",{"type":15,"value":16,"toc":132},"minimark",[17,21,24,29,32,55,62,66,72,75,79,86,102,105,109,116,120,126,129],[18,19,20],"p",{},"Upwork pays you in USD, charges a service fee, and sometimes adds VAT on top. By the time the money lands in your bank account, the original invoice amount looks nothing like what you received — which makes tax time confusing.",[18,22,23],{},"Here's how to handle it cleanly.",[25,26,28],"h2",{"id":27},"what-upwork-actually-sends-you","What Upwork actually sends you",[18,30,31],{},"Every Upwork payout contains three numbers:",[33,34,35,43,49],"ul",{},[36,37,38,42],"li",{},[39,40,41],"strong",{},"Gross earnings"," — what the client paid",[36,44,45,48],{},[39,46,47],{},"Upwork service fee"," — 10% (or 5% for long-term contracts)",[36,50,51,54],{},[39,52,53],{},"Net payout"," — what hits your account",[18,56,57,58,61],{},"For tax purposes you may need to report the ",[39,59,60],{},"gross"," amount (depending on your country), not just what you received. FreelancerrFlow's CSV import captures all three automatically.",[25,63,65],{"id":64},"step-1-export-your-transaction-csv","Step 1: Export your transaction CSV",[18,67,68,69],{},"In Upwork: ",[39,70,71],{},"Reports → Transaction History → Export to CSV",[18,73,74],{},"Download the full year or the date range you need.",[25,76,78],{"id":77},"step-2-import-into-freelancerrflow","Step 2: Import into FreelancerrFlow",[18,80,81,82,85],{},"Go to ",[39,83,84],{},"Transactions → Import → Upwork CSV",". The parser:",[87,88,89,96,99],"ol",{},[36,90,91,92],{},"Detects service fee rows and tags them as ",[93,94,95],"code",{},"expense",[36,97,98],{},"Links earnings to the right client if the contract name matches",[36,100,101],{},"Flags duplicates so you don't double-count",[18,103,104],{},"Review the preview, adjust any types, and confirm.",[25,106,108],{"id":107},"step-3-reconcile-with-your-bank","Step 3: Reconcile with your bank",[18,110,111,112,115],{},"After import, open ",[39,113,114],{},"Balance → Reconciliation",". Compare the platform balance (sum of Upwork payouts) against your actual bank total. Any difference usually comes from currency conversion slippage or pending withdrawals.",[25,117,119],{"id":118},"step-4-run-your-tax-estimate","Step 4: Run your tax estimate",[18,121,81,122,125],{},[39,123,124],{},"Tax"," and check your quarterly estimate. FreelancerrFlow applies your configured tax rate to net income and shows how much to set aside.",[127,128],"hr",{},[18,130,131],{},"That's it. No pivot tables, no manual fee calculations. Your records stay clean year-round instead of becoming a one-week panic every April.",{"title":133,"searchDepth":134,"depth":134,"links":135},"",2,[136,137,138,139,140],{"id":27,"depth":134,"text":28},{"id":64,"depth":134,"text":65},{"id":77,"depth":134,"text":78},{"id":107,"depth":134,"text":108},{"id":118,"depth":134,"text":119},"2026-03-15","A practical guide to recording Upwork earnings, platform fees, and currency conversions so tax season doesn't catch you off guard.","md",null,{},true,"/blog/upwork-taxes",{"title":5,"description":142},"3.blog/1.upwork-taxes","9kBao9XV9XkBQgt1ECFqThyTR55eGp0V-sEGgahR7T8",1776409355714]