B2B Contract in Poland: Complete JDG Guide for Freelancers
Introduction: Why B2B Is the Dominant Work Model in Poland
If you work in IT, consulting, marketing, or any skilled profession in Poland, you have almost certainly encountered the term B2B contract. In Poland, B2B is not just a niche arrangement -- it is the default working model for a massive portion of the professional workforce. Estimates suggest that over 500,000 Poles and foreigners work on B2B contracts, and in the IT sector, the figure approaches 70-80% of all contractors.
A B2B contract means you are not an employee. Instead, you operate your own registered business -- most commonly a JDG (jednoosobowa dzialalnosc gospodarcza), which translates to sole proprietorship or sole trader -- and you invoice your client (often a single company) for your services each month. The company pays your invoice rather than a salary, and you are responsible for your own taxes, social insurance (ZUS), health insurance, and accounting.
Why is this model so popular? The short answer: significantly higher take-home pay. For the same gross cost to the employer, a B2B contractor typically nets 20-40% more than an equivalent employee on a standard employment contract (umowa o prace, or UoP). The trade-off is that you lose certain employment protections -- paid leave, sick pay, notice periods -- and take on administrative responsibilities.
This guide is for anyone considering or already working on a B2B contract in Poland: freelancers, IT contractors, consultants, foreign professionals on digital nomad arrangements, and anyone who wants to understand how JDG works from registration to monthly taxes. All figures reflect 2026 rates and thresholds.
What Is JDG (Jednoosobowa Dzialalnosc Gospodarcza)?
JDG stands for jednoosobowa dzialalnosc gospodarcza, which literally means "one-person economic activity." It is the simplest and most common legal form for running a business in Poland. Think of it as the Polish equivalent of a sole proprietorship, sole trader, or self-employed status in other countries.
When you register a JDG, you are not creating a separate legal entity. You are the business. Your personal tax identification number (NIP) becomes your business NIP, your personal assets and business assets are not legally separated, and you bear unlimited personal liability for any business debts or obligations.
Despite the liability issue, JDG is overwhelmingly the preferred structure for B2B contractors in Poland because of its simplicity. Registration is free, there is no minimum capital requirement, accounting is straightforward, and the tax options are highly favorable for service-based professionals.
JDG vs Sp. z o.o. (Limited Liability Company)
The alternative to JDG is registering a sp. z o.o. (spolka z ograniczona odpowiedzialnoscia) -- a limited liability company. While sp. z o.o. provides liability protection and can look more professional for client-facing businesses, it comes with significantly more overhead: 5,000 PLN minimum share capital, mandatory bookkeeping, corporate income tax (CIT) at 9% or 19%, and then personal income tax on dividends (19%) -- resulting in effective double taxation.
For a single person doing B2B contract work, JDG is almost always the better choice. The administrative burden is lower, the tax options are more favorable, and the setup is free and fast. You would only consider sp. z o.o. if you need liability protection (e.g., high-risk consulting), plan to take on partners, or want to build a company that exists independently from you.
Step-by-Step CEIDG Registration
CEIDG stands for Centralna Ewidencja i Informacja o Dzialalnosci Gospodarczej -- the Central Register and Information on Economic Activity. This is the official government registry for all sole proprietorships in Poland. Registering your JDG through CEIDG is free and can be done entirely online.
Who Can Register a JDG?
Polish citizens can register without restrictions. EU/EEA citizens have the same right as Polish citizens -- no additional requirements. Non-EU citizens can register a JDG if they hold a valid residence card (karta pobytu) with the right to work, a temporary residence permit, permanent residence, long-term EU residence, or refugee status. If you are in Poland on a work visa or temporary residence permit, check that your permit allows self-employment.
You will also need a PESEL number (Polish personal identification number). If you do not have one yet, see our guide to getting a PESEL.
How to Register Online (Recommended)
- Step 1: Get a Profil Zaufany (Trusted Profile). This is Poland's electronic identity system. You can set it up through your Polish bank's online banking portal (most major banks support this), at a government office, or via the e-dowod (electronic ID card). This is required for online registration.
- Step 2: Go to biznes.gov.pl. Navigate to the CEIDG section and click "Register a business" (Zarejestruj dzialalnosc). The form is available in Polish, but browser translation tools work reasonably well.
- Step 3: Fill in your personal details. Name, PESEL, address, contact information. Your registered business address can be your home address -- there is no requirement for a separate office.
- Step 4: Choose your PKD codes. PKD (Polska Klasyfikacja Dzialalnosci) codes describe your business activities. For IT consulting, the most common code is 62.02.Z (IT consultancy). You can list multiple codes. Your primary code should match your main activity, as it affects which ryczalt tax rate applies.
- Step 5: Choose your tax form. You will select your preferred taxation method during registration (see the Tax Options section below). You can change this at the start of the following year.
- Step 6: Choose your ZUS registration date. You can start your business immediately or set a future date. Your ZUS obligations begin on the date your business becomes active.
- Step 7: Submit. The registration is processed within 1 business day. You will receive your NIP (tax ID) and REGON (statistical number) automatically. Your business is now officially registered.
Alternative: Register in Person
If you prefer face-to-face assistance, you can register at any urzad gminy (municipal office) or urzad miasta (city office). Bring your passport or ID card, your PESEL confirmation, and your chosen PKD codes. The staff will help you fill out the CEIDG-1 form. This is particularly useful if your Polish is limited and you want guidance through the process.
ZUS Contributions Explained
ZUS (Zaklad Ubezpieczen Spolecznych) is Poland's social insurance institution. As a JDG owner, you are responsible for paying your own social insurance contributions monthly. This is the single biggest ongoing cost of running a B2B business in Poland, and understanding it is critical to calculating your actual take-home pay.
The good news: Poland offers generous preferential rates for new businesses that can save you tens of thousands of zlotys in your first two and a half years.
ZUS Phases: From Zero to Full Contributions
The Ulga na Start (startup relief) exempts you from social insurance contributions (emerytalna, rentowa, wypadkowa) for the first 6 months. You only pay the health insurance contribution (skladka zdrowotna), which depends on your chosen tax form and income. For most B2B contractors, this amounts to roughly 400-450 PLN per month.
After 6 months, you move to preferential ZUS (Maly ZUS) for 24 months. Your social insurance base is calculated at 30% of the minimum wage rather than the standard 60% of the forecasted average salary. This roughly halves your social contributions compared to the full rate.
After 30 months total (6 + 24), you pay full ZUS. In 2026, this is approximately 1,600-1,700 PLN per month, depending on exact health insurance calculations. This is a significant cost, but even at full ZUS, B2B still nets more than an equivalent employment contract in most scenarios.
| Phase | Duration | Monthly ZUS (approx. 2026) | What You Pay | Key Conditions |
|---|---|---|---|---|
| Ulga na Start | First 6 months | ~420 PLN | Health insurance (skladka zdrowotna) only | Must be first-time business or 60+ months since last JDG closure |
| Preferential ZUS (Maly ZUS) | Next 24 months | ~470 PLN | Reduced social + health insurance | Social contributions based on 30% of minimum wage |
| Full ZUS | Indefinitely after | ~1,650 PLN | Full social + health insurance | Based on 60% of average national salary forecast |
Full ZUS Breakdown (2026 Approximate Monthly Amounts)
The chorobowa (sickness) contribution is voluntary for JDG owners. Paying it gives you access to sick pay (zasilek chorobowy) and maternity benefits. Most contractors choose to pay it, as it costs relatively little and provides important safety net coverage.
The zdrowotna (health insurance) contribution is calculated differently depending on your tax form. On skala podatkowa or podatek liniowy, it is 9% or 4.9% of your actual income respectively. On ryczalt, it is a fixed amount based on your annual revenue bracket. This distinction significantly affects which tax form is optimal for you.
| Contribution | Rate | Base | Monthly Amount (approx.) |
|---|---|---|---|
| Emerytalna (pension) | 19.52% | 60% of avg. salary (~4,700 PLN) | ~918 PLN |
| Rentowa (disability) | 8.00% | 60% of avg. salary | ~376 PLN |
| Chorobowa (sickness -- voluntary) | 2.45% | 60% of avg. salary | ~115 PLN |
| Wypadkowa (accident) | 1.67% | 60% of avg. salary | ~78 PLN |
| Fundusz Pracy (labor fund) | 2.45% | 60% of avg. salary | ~115 PLN |
| Zdrowotna (health) | Varies by tax form | Your actual income | ~400-700 PLN |
| <b>Total (with chorobowa)</b> | <b>~1,600-1,700 PLN</b> |
Tax Options: Which One Is Best for B2B?
Choosing the right tax form is one of the most important financial decisions you will make as a B2B contractor. Poland offers three main options for JDG income, each with dramatically different effective tax rates depending on your income level and type of work.
The Three Tax Forms Compared
| Tax Form | Rate | Health Insurance (Zdrowotna) | Cost Deductions? | Tax-Free Allowance? | Best For |
|---|---|---|---|---|---|
| Skala podatkowa (progressive scale) | 12% up to 120,000 PLN / 32% above | 9% of income | Yes | Yes (30,000 PLN) | Lower earners, those with high deductible costs |
| Podatek liniowy (flat tax) | 19% flat | 4.9% of income | Yes | No | High earners above ~150K PLN with significant costs |
| Ryczalt (lump-sum tax) | 8.5% / 12% / 15% depending on PKD | Fixed: ~420-840 PLN/mo based on revenue bracket | No | No | IT, consultants, and service professionals with low costs |
Example Calculations: 15,000 PLN/Month Gross Revenue
At 15,000 PLN per month with minimal deductible business costs, ryczalt at 12% is the clear winner. The combination of a low flat rate on revenue and fixed health insurance contributions results in the highest take-home pay.
| Item | Skala Podatkowa | Podatek Liniowy | Ryczalt (12%) |
|---|---|---|---|
| Monthly gross revenue | 15,000 PLN | 15,000 PLN | 15,000 PLN |
| ZUS social (full) | ~1,250 PLN | ~1,250 PLN | ~1,250 PLN |
| Health insurance (zdrowotna) | ~1,080 PLN (9%) | ~590 PLN (4.9%) | ~560 PLN (fixed) |
| Taxable base | ~12,670 PLN | ~12,670 PLN | 15,000 PLN (no deductions) |
| Income tax | ~1,220 PLN (12%) | ~2,407 PLN (19%) | ~1,800 PLN (12%) |
| <b>Approximate net take-home</b> | <b>~10,450 PLN</b> | <b>~9,750 PLN</b> | <b>~11,390 PLN</b> |
Example Calculations: 25,000 PLN/Month Gross Revenue
At 25,000 PLN per month, the differences become even more dramatic. Ryczalt saves over 2,700 PLN per month compared to skala podatkowa and over 1,500 PLN compared to podatek liniowy. Over a year, that is 32,000+ PLN in additional take-home pay.
For IT professionals (PKD codes 62.01.Z, 62.02.Z, 62.03.Z, 62.09.Z, 63.11.Z), the applicable ryczalt rate is 12%. For many other professional services (marketing, management consulting, translation), rates of 8.5% or 15% may apply. Always confirm your PKD code's ryczalt rate before choosing this tax form.
Use our salary budget calculator to model different income scenarios and see how each tax form affects your monthly budget.
| Item | Skala Podatkowa | Podatek Liniowy | Ryczalt (12%) |
|---|---|---|---|
| Monthly gross revenue | 25,000 PLN | 25,000 PLN | 25,000 PLN |
| ZUS social (full) | ~1,250 PLN | ~1,250 PLN | ~1,250 PLN |
| Health insurance (zdrowotna) | ~1,890 PLN (9%) | ~1,035 PLN (4.9%) | ~840 PLN (fixed) |
| Taxable base | ~22,670 PLN | ~22,670 PLN | 25,000 PLN (no deductions) |
| Income tax | ~3,675 PLN (blended 12/32%) | ~4,307 PLN (19%) | ~3,000 PLN (12%) |
| <b>Approximate net take-home</b> | <b>~16,185 PLN</b> | <b>~17,408 PLN</b> | <b>~18,910 PLN</b> |
B2B vs Employment Contract (UoP): The Full Comparison
The ~3,950 PLN per month difference (or ~47,400 PLN per year) is why B2B is so popular. However, this is not purely "free money" -- you need to account for the value of benefits you lose. Paid vacation alone is worth roughly 2,800 PLN per month if you take the full 26 days. Sick leave protection and job security have real value too.
That said, most B2B contractors negotiate higher rates specifically because they lack employment benefits. A common approach: calculate the fully-loaded UoP equivalent (including employer's ZUS, vacation cost, and benefits) and add 20-30% as a B2B premium. This means the B2B contractor still nets more, while the employer may pay slightly more total -- but gains flexibility and lower administrative burden.
Use our rent affordability calculator to see how your B2B income translates into housing budget, or explore apartments across Poland to see what your higher take-home pay can get you.
| Factor | Employment (UoP) | B2B (JDG with Ryczalt 12%) |
|---|---|---|
| Employer's total cost | 20,000 PLN | 20,000 PLN |
| Employer's ZUS contribution | ~3,550 PLN | 0 PLN (you pay your own) |
| Gross salary / Invoice amount | ~16,450 PLN | 20,000 PLN |
| Employee's ZUS (social) | ~2,260 PLN | ~1,250 PLN (full ZUS) |
| Health insurance | ~1,150 PLN (9%) | ~560 PLN (fixed ryczalt) |
| Income tax | ~1,200 PLN | ~2,400 PLN (12% of revenue) |
| <b>Net take-home</b> | <b>~11,840 PLN</b> | <b>~15,790 PLN</b> |
| Difference | Baseline | <b>+3,950 PLN/month (+33%)</b> |
| Paid vacation (26 days) | Yes, paid by employer | No -- you do not invoice for days off |
| Sick leave | 80-100% of salary paid | Only if paying voluntary chorobowa; limited |
| Notice period | 1-3 months depending on tenure | As per B2B contract (often 1 month) |
| Severance pay | Yes, in certain conditions | No |
| Overtime protection | Yes, regulated by labor code | No -- you negotiate your rate |
| Accounting burden | None -- employer handles everything | You or your accountant handles monthly filings |
| Pension contributions | Mandatory, employer co-pays | Mandatory, you pay it all yourself |
VAT Registration: When and Why
VAT (podatek od towarow i uslug, or PTU) is a separate question from income tax. As a new JDG, you are VAT-exempt by default if your annual revenue is below 200,000 PLN. But should you register voluntarily? It depends on your situation.
Mandatory vs Voluntary VAT Registration
Mandatory: If your annual revenue exceeds 200,000 PLN (approximately 16,700 PLN/month), you must register as a VAT payer (VAT czynny). You must register before exceeding the threshold, not after.
Voluntary: Even below the threshold, you can choose to register. This makes sense if you have significant business expenses with VAT (equipment, software, coworking fees) because you can deduct input VAT from your output VAT liability. For service-based B2B contractors with minimal expenses, staying VAT-exempt is usually simpler.
Most B2B contractors in IT earn above the 200,000 PLN threshold (that is only about 16,700 PLN/month in revenue), so VAT registration is effectively mandatory for most readers of this guide.
VAT for International Clients
If you provide services to clients outside Poland, VAT treatment depends on where the client is located:
EU clients (B2B): Your services are subject to the reverse charge mechanism. You issue an invoice with 0% VAT and note "reverse charge" (odwrotne obciazenie). The client accounts for VAT in their country. You must register for EU VAT (VAT-UE) and file periodic EU sales declarations.
Non-EU clients: Services are generally not subject to Polish VAT (not in the scope of Polish VAT). You invoice without VAT. This is the simplest scenario and common for contractors working for US or UK companies.
Even if all your clients are foreign and your invoices carry 0% or no VAT, being VAT-registered still allows you to reclaim VAT on your Polish business expenses -- a nice bonus.
Accounting and Invoicing
Running a JDG requires monthly accounting and invoicing. You have two main options: hire an accounting office or do it yourself with software.
Option 1: Biuro Rachunkowe (Accounting Office)
A biuro rachunkowe is a Polish accounting office that handles your monthly bookkeeping, tax filings, ZUS declarations, and annual returns. This is the most popular option for B2B contractors who want to focus on their work rather than tax compliance.
Costs range from 200 to 500 PLN per month depending on the complexity of your business (number of invoices, VAT status, expense volume). English-speaking accounting offices are available in all major cities, and many work entirely remotely. For a straightforward B2B contractor issuing 1-2 invoices per month, expect to pay 250-350 PLN.
Your accountant will file your monthly ZUS declarations (DRA), VAT returns (JPK_V7M or JPK_V7K), advance income tax payments, and your annual tax return. They will also advise you on tax optimization and flag any compliance issues.
Option 2: DIY with Accounting Software
If you are comfortable with numbers and want to save on accounting fees, several Polish SaaS platforms let you manage your own JDG accounting. The most popular are:
iFirma -- from 149 PLN/month. Full accounting, invoicing, ZUS and tax filing, bank integration. English interface available. Best for tech-savvy contractors.
wFirma -- from 59 PLN/month for basic plans. Invoicing, expense tracking, and basic tax calculations. Good for ryczalt taxpayers with simple needs.
InFakt -- from 99 PLN/month. Invoicing, accounting, and a hybrid model where you do the invoicing but their accountants handle filings. Good middle ground.
Even with DIY software, consider having an accountant review your setup in the first year. A one-time consultation (200-400 PLN) can prevent costly mistakes.
What Goes on a Polish Invoice (Faktura)?
Every invoice you issue must include: your full name and business name, your NIP number, the client's name and NIP (or VAT-UE number for EU clients), a sequential invoice number, the date of issue and date of service, a description of the service provided, the net amount, VAT rate and amount (or "zw" if VAT-exempt, "NP" if not applicable, or "odwrotne obciazenie" for reverse charge), and the gross amount.
Invoices can be in any language, but if the client is Polish, a Polish version is standard. For foreign clients, English invoices are fine -- but all invoices must be available in Polish for tax inspection purposes. Most accounting software generates bilingual invoices automatically.
Common Mistakes Foreigners Make with JDG
Having helped thousands of international professionals navigate Poland's business landscape, we see the same mistakes again and again. Avoid these and you will save yourself money, stress, and potential legal trouble.
1. Missing the ZUS Registration Window
When your JDG becomes active, you have 7 days to register with ZUS (the ZUA or ZZA form, depending on your contribution type). Missing this deadline can result in penalties and backdated contributions with interest. Your CEIDG registration does not automatically register you with ZUS -- it sends notification, but you should verify your registration through PUE ZUS (the ZUS online portal) within the first week.
2. Choosing the Wrong Tax Form
Many foreigners default to skala podatkowa (the progressive scale) because it seems familiar, or they choose podatek liniowy because 19% sounds reasonable. For the majority of B2B contractors -- especially in IT -- ryczalt is the optimal choice. Run the numbers for your specific income level before deciding. You can only change your tax form at the beginning of the calendar year (by January 20), so a wrong choice locks you in for 12 months.
3. Forgetting to File JPK_V7
If you are VAT-registered, you must file JPK_V7M (monthly) or JPK_V7K (quarterly for smaller businesses) by the 25th of the following month. This is Poland's unified audit file that combines the VAT return with detailed transaction data. Missing the deadline triggers automatic penalties. Set a calendar reminder or ensure your accountant has this on their schedule.
4. Mixing Personal and Business Finances
While Polish law does not strictly require a separate business bank account for JDG, using your personal account for business is a terrible idea. It makes accounting a nightmare, increases the risk of errors during tax audits, and looks unprofessional on invoices. Open a dedicated business account -- many Polish banks offer free business accounts for JDG (mBank, ING, Alior). See our guide to opening a bank account in Poland for details.
5. Not Understanding the Ulga na Start Window
The Ulga na Start (6-month ZUS relief) is a one-time benefit. If you register your JDG and then close it within the first 6 months (e.g., because the project fell through), you have used your Ulga na Start. You cannot claim it again unless 60 months (5 years) have passed since your last JDG closure. Plan your registration timing carefully -- do not register before you have a confirmed contract.
6. Ignoring Advance Tax Payments
On skala podatkowa or podatek liniowy, you must make monthly advance income tax payments by the 20th of the following month. On ryczalt, the same applies. These are not optional -- missing them triggers interest charges. Many new JDG owners are surprised by this requirement because employees never think about advance payments; their employer withholds tax automatically.
Frequently Asked Questions
Conclusion: B2B Is Worth the Effort
Working on a B2B contract through JDG in Poland requires more administrative effort than being a standard employee. You need to register your business, choose a tax form, pay ZUS monthly, issue invoices, and either handle accounting yourself or pay someone to do it. But for most skilled professionals -- particularly in IT, consulting, and creative services -- the financial reward is substantial: 20-40% more take-home pay compared to an equivalent employment contract.
The key decisions that determine your success are choosing the right tax form (ryczalt for most service professionals), timing your registration to maximize the Ulga na Start benefit, opening a dedicated business bank account, and finding a reliable accountant. Get these right, and the monthly administrative overhead is minimal -- a few hours per month at most.
With the higher income that B2B provides, you can afford better housing, save more aggressively, and enjoy a higher quality of life in Poland. Whether you are looking for a modern apartment in Warsaw, a charming flat in Krakow, or an affordable room in one of Poland's best cities for expats, your B2B income gives you more options.
Ready to find your next home in Poland? Browse verified apartments on Domkaspot or find compatible flatmates to make the most of your B2B income.