iText is dual-licensed. You can use it free under the AGPLv3, which iText says requires you to disclose the full source code of your own application, web and network deployments included, or you can buy a commercial license that releases you from those terms. iText doesn’t publish a price for its commercial license. Its How to buy page offers two commercial plans, both by quote: an annual subscription priced by the number of PDF files you process, and an OEM license with custom pricing. Figures on third-party sites are estimates, not iText’s terms. The current release is iText Core 9.8.0 (NuGet package itext, published 30 September 2026). If neither license fits, permissively licensed libraries cover most of the same jobs. This page goes through both licenses, iTextSharp and the old 4.1.6 version, and what to use instead.
Every statement about iText below is quoted or summarized from iText’s own pages and NuGet listings, read on 26 October 2026, and each is linked. Read the GNU AGPL version 3 and iText’s license agreements yourself, and take the legal question of what your project needs to a lawyer.
How much does an iText license cost?
iText publishes the structure of its pricing but not the numbers. Its How to buy page lists three plans, all available for .NET and Java:
| Plan, as iText names it | Conditions, per iText | Pricing, per iText | Support |
|---|---|---|---|
| Open Source AGPLv3 license | Unlimited number of PDFs. “Disclosure of full source code of application needed, (including your own application).” | No cost | Not applicable |
| Subscription License Volume (details) | “Based on the quantity of PDF files processed.” | Annual subscription, by quote | Included |
| OEM Distribution License (details) | For iText inside products or services you distribute to, or that are accessed by, external clients | Custom, by quote | Custom |
What iText’s pages say about how a quote is built:
- Volume. The volume-based license is “iText’s standard commercial license”. Its price “is based on the specific volume of PDFs that your company processes (i.e. generates and/or manipulates) annually”, and iText notes “steep discounts available for companies that produce high volumes”.
- What counts as one file. “Files are counted based on one open, close, or edit to a PDF file.” iText’s examples: opening a PDF and extracting the text of page 2, creating one invoice, or opening a bank statement and signing it each count as one (knowledge base).
- What counts as one application. iText says it depends: a customer portal that fronts three business applications “could be considered 3 applications”, and your account executive clarifies specific cases (knowledge base).
- Core and add-ons. iText Core, about 500 functions including creation, merging, tagging and digital signatures, is licensed as one SDK. Add-ons such as pdfHTML and pdfOCR cover narrower needs and require Core (licensing per feature, add-ons and Core).
- What the commercial license adds. Release from the AGPL’s copyleft requirements and from the requirement to keep iText’s producer line, indemnification for IP or patent infringement, and professional support and maintenance, including new releases (volume-based license).
- Trial. iText offers a 30-day free trial (get started).
So the only way to learn what iText costs for your project is to request a quote with your expected PDF volume and how you deploy.
Is iText free? What the AGPL requires
iText’s knowledge base answers it directly: “You can use the SDK at no cost if you open source the application you are integrating the iText SDK into (per the terms of the AGPL license), or you can license iText commercially if you don’t want to open source your entire application” (Is iText free?). Its AGPLv3 license page says the license “applies to iText 5 and all subsequent versions” and lists these as the most important restrictions:
- Disclose your source: “You may not deploy it on a network without disclosing the full source code of your own applications under the AGPL license. You must distribute all source code, including your own product and web-based applications.”
- AGPL environments only: “It’s a legal violation to use iText Core/Community and our open source add-ons in a non-AGPL environment.”
- Your changes to iText: “You must disclose any modifications made to iText.”
- Producer line: you must “prominently mention iText and include the iText copyright and AGPL license in output file metadata, and also retain the producer line in every PDF that is created or manipulated using iText.”
The producer line is visible in every file. A PDF written with iText 9.8.0 under the AGPL, here the result of a merge, shows it in its document properties:
$ pdfinfo merged-itext.pdf | grep Producer Producer: iText® Core 9.8.0 (AGPL version) ©2000-2026 Apryse Group NV
A file that iText modified keeps its original producer with “; modified using iText® Core 9.8.0 (AGPL version) ©2000-2026 Apryse Group NV” appended.
If you have already shipped iText in a closed-source product without a commercial license, iText’s position is that “legally, your usage falls under the terms of the AGPL license”. It adds that it can work with you to come into compliance and may be able to issue a back-dated commercial license (knowledge base).
iText 7, 8 and 9 licenses and the NuGet packages
The license is the same across versions: iText 5 and everything after it are AGPL or commercial. What changed is the package name. On NuGet, itext7 9.8.0 is marked deprecated with the message “We have renamed the package itext7.* to itext.*”, and points to itext. Both list the AGPL as their license. The add-ons differ:
| Package (latest on NuGet) | What it does | License link on its NuGet listing |
|---|---|---|
| itext 9.8.0 | iText Core: create, edit, merge, forms, signing, PDF/A, PDF/UA | GNU AGPL |
| itext.pdfhtml 6.3.4 | HTML and CSS to PDF | GNU AGPL |
| itext.pdfocr.tesseract4 5.0.2 | OCR | GNU AGPL |
| itext.pdfsweep 5.0.8 | Redaction | iText’s legal terms page |
| itext.pdfcalligraph 5.1.1 | Writing systems such as Arabic, Hebrew, Hindi and Thai (product page) | iText’s legal terms page |
| itext.pdfoptimizer 4.1.5 | File size reduction | iText’s legal terms page |
| itext.pdfxfa 5.0.8 | XFA forms | iText’s legal terms page |
The last four link to itextpdf.com/how-buy/legal rather than to the AGPL, so check their terms with iText before you plan around them.
iTextSharp license: iTextSharp 5 and 4.1.6
iTextSharp is the .NET version of iText 5. iText calls it a legacy product: “iTextSharp is EOL and has transitioned to maintenance mode, meaning it only receives security related releases and fixes”, and it is “available under the same dual licensing (AGPL and commercial) conditions” as iText Core (iTextSharp). The last NuGet release, iTextSharp 5.5.13.6 (22 July 2026), lists the AGPL and opens its description with “PLEASE NOTE: iTextSharp is EOL, and has been replaced by iText.” So iTextSharp 5 is free on the same terms as iText 9: under the AGPL.
Searches for “iTextSharp LGPL” are about older versions. iText says “iText 2 was available under MPL/GPL, while iText 5 and subsequent versions switched to an AGPL and commercial dual-licensing structure” (iText 2). On whether iText 2.1.7 or iTextSharp 4.1.6 can be used commercially, iText writes that it “strongly advise[s] against using any version of iText earlier than the latest patch release of iText 5.5.13”, because the last iText 2.x and iTextSharp 4.x releases date from 2009 and “there could be many undisclosed vulnerabilities”, and because of “potential intellectual property issues with proprietary code used in iText 2.x and earlier versions” (knowledge base). Whether that affects your use of an old fork is a legal question for your own counsel.
Permissively licensed alternatives to iText
If the AGPL doesn’t fit your product and you don’t want a volume-priced subscription, the alternative is a library whose license places no conditions on closed-source use. OnePDF is one: a PDF library for .NET 10, MIT OR Apache-2.0, written in C# with no native binaries. It adds no producer line of its own, and in our runs it wrote no Producer entry at all, so a file’s metadata is whatever you set with SetInfo. This is how the common iText jobs map:
| Job | iText 9.8.0 | OnePDF 1.11.0 |
|---|---|---|
| Merge and split | PdfMerger, PdfSplitter | PdfDocument.Merge, PdfDocument.Split (merge PDFs) |
| Extract text | PdfTextExtractor | page.ExtractText(), in reading order (extract text) |
| Fill and flatten forms | PdfAcroForm: GetField(name).SetValue, FlattenFields | doc.Form.SetValue, doc.Flatten() (fill, flatten) |
| Sign | PdfSigner | doc.Sign: PAdES B-B and B-T, plus verification (sign and verify) |
| PDF/A and PDF/UA | PdfADocument, PdfUADocument | PdfSaveOptions.PdfA, PdfSaveOptions.PdfUA (PDF/A, PDF/UA) |
| Generate documents | Document, Table in iText Core | LayoutDocument.Compose in OnePdf.Layout (create a PDF) |
| Redact | pdfSweep add-on | doc.Redact in the core package (redact) |
| Arabic, Hindi and other complex scripts | pdfCalligraph add-on | OnePdf.Layout shapes them. The core content builder places characters unshaped (Arabic and Hindi text) |
| HTML to PDF | pdfHTML add-on | Not available: no HTML engine |
| OCR | pdfOCR add-on | Not available |
| XFA forms | pdfXFA add-on | Not available: AcroForm fields only |
iText’s knowledge base discusses a common reporting job: fill a form once per record, flatten each copy, and merge the copies into one file (merging forms). Here it is in OnePDF, on OPM’s SF 2823, a public fillable form:
using OnePdf; // Fill one copy of a form per person, flatten each, and merge them into one file. string[] people = ["Lovelace, Ada", "Hopper, Grace", "Johnson, Katherine"]; var copies = new List<PdfDocument>(); try { foreach (string person in people) { var copy = PdfDocument.Open("sf2823.pdf", new PdfOpenOptions { AllowEditing = true }); copies.Add(copy); copy.Form!.SetValue("Name", person); copy.Form!.SetValue("Type of Insured", "Employee"); copy.Flatten(); } using PdfDocument packet = PdfDocument.Merge(copies); packet.SetInfo("Title", "Beneficiary designations"); packet.Save("designations.pdf"); Console.WriteLine($"{packet.PageCount} pages, form: {(packet.Form is null ? "none" : "kept")}"); } finally { foreach (PdfDocument copy in copies) copy.Dispose(); }
9 pages, form: noneEach three-page copy carries its own name, baked into the page, and the merged file has no form left to edit. Install with dotnet add package RecursiveAI.OnePdf.
On the project’s published layout benchmark, iText 9.8.0 ran as an information row next to OnePdf.Layout: 5.19 ms for a one-page invoice (OnePDF 1.01 ms), 154 ms for a 50-page report (37.1 ms), 2,771 ms for a 10,000-row table (362 ms) and 765 ms for a 500-page book (317 ms). These are BenchmarkDotNet means on an AMD Ryzen 9 7950X3D under Linux with .NET 10.0.13.
What OnePDF doesn’t replace
- HTML to PDF, OCR and XFA: none of these exist in OnePDF. If you depend on pdfHTML, pdfOCR or pdfXFA, keep iText for that part or look at other tools.
- Older frameworks: OnePDF targets
net10.0only. The itext 9.8.0 package targets .NET Framework 4.6.1 and .NET Standard 2.0. - Long-term validation: OnePDF signs at PAdES B-B and B-T, without the B-LT or B-LTA validation data.
- Converting arbitrary files to PDF/A: OnePDF writes PDF/A for documents it creates or edits, and refuses a file it can’t make conform rather than rewriting it.
Other permissive options are PdfPig (Apache-2.0) for reading text, and PDFsharp and MigraDoc up to 6.2.4 (MIT). PDFsharp 6.5.0 moved to AGPL or commercial as well: see PDFsharp license changes. QuestPDF is free under its community license only for eligible users. All of them are compared in choosing a C# PDF library.
Common questions
How much does an iText license cost?
iText doesn’t publish prices. Commercial licenses are by quote: an annual subscription priced by the number of PDF files you process, or a custom-priced OEM license for software you distribute. The AGPL version costs nothing but comes with source-disclosure obligations.
Is iText free for commercial use?
Only on the AGPL’s terms. iText says you may use it at no cost if you open source the application you integrate it into, network deployments included. Otherwise you need a commercial license.
Is iText 5 free for commercial use?
iText 5 is under the same dual license as later versions: AGPL or commercial. iText states that the AGPL “applies to iText 5 and all subsequent versions”.
Can I use iTextSharp for free?
Under the AGPL, yes. iTextSharp 5.5.13.6 on NuGet lists the AGPL, and iText describes iTextSharp as end-of-life with security fixes only. For new projects iText recommends iText Core 9.
Is there a free alternative to iText for C#?
Yes. OnePDF (MIT OR Apache-2.0) covers merging, text extraction, forms, signing, PDF/A, PDF/UA, redaction and document generation on .NET 10. PdfPig (Apache-2.0) reads text. To get started, run dotnet add package RecursiveAI.OnePdf and follow getting started, or browse the cookbook.