Nonprofits operate with limited staff and tighter budgets than for-profit organizations, but they have the same document format requirements. Donation receipts need to be PDF for IRS compliance. Grant reports go to funders as PDF. Program materials need accessible formats for beneficiaries. The annual report is a PPTX that needs to be PDF before it goes to the board. These format conversion needs are real, and they shouldn't require expensive software licenses or technical staff to resolve.
Format friction in nonprofit operations
Nonprofit teams encounter format conversion in fundraising, programming, and compliance:
- Donation receipts and acknowledgments — IRS-compliant donation receipts (substantiation letters for gifts over $250) need to be PDF for official delivery to donors. Templates drafted in DOCX need to be converted to PDF before sending. The PDF is the non-editable official record.
- Grant reporting — grant reports, program outcomes documents, and budget narratives submitted to foundations and government funders need to be PDF. Many grant portals require PDF upload. Reports drafted in Word need reliable PDF conversion that preserves formatting.
- Accessible document formats — program materials, handbooks, and communications for beneficiaries may need to be in multiple formats: PDF for print and web, DOCX for accessibility (screen readers often work better with DOCX), and sometimes plain text for very limited access contexts.
- Newsletter and communications production — email newsletters designed in PPTX or DOCX need PDF or HTML versions for different distribution channels. Print newsletters need different format specifications than digital versions.
- Program photo documentation — program staff document activities with phones. HEIC photos need to be JPG before upload to the donor portal, CMS, or grant report.
Common format pairs for nonprofits
The conversion routes nonprofits use most:
- DOCX → PDF — donation receipts, grant reports, program reports, policies, and board materials for distribution and submission
- PPTX → PDF — annual reports, board presentations, program impact decks, and fundraising presentations
- HEIC → JPG — program activity photos from staff phones for donor communications, grant reports, and website updates
- XLSX → CSV — donor data, volunteer records, and program outcome data for CRM import or grant reporting
- DOCX → RTF — program materials in RTF format for compatibility with low-resource beneficiary environments
- PDF → JPG — generate preview images of annual reports and publications for web display
- PNG → JPG — program photos and graphic assets for email newsletter compression
- XLSX → PDF — budget summaries and financial statements for board or funder delivery
The browser tool: free conversions with no account required
The browser converter at changethisfile.com works without signup for unlimited manual conversions. Image conversions (HEIC → JPG, PNG → JPG) run client-side and never involve a file upload — appropriate for donor photos and program documentation. Document conversions (DOCX → PDF, PPTX → PDF) use server-side LibreOffice with auto-delete.
For nonprofits with limited technical staff, the browser tool is often sufficient for their conversion volume:
- Staff converting grant reports and receipts one at a time before submission deadlines
- Program coordinators converting activity photos after field visits
- Communications team converting newsletter drafts to PDF
API integration for donation and program platforms
The endpoint is POST https://changethisfile.com/v1/convert. Source auto-detected from filename. No SDK needed. Get a free API key — no card required. The free tier (1,000 conversions/month) is sufficient for most small nonprofits.
Convert a donation receipt to PDF
curl -X POST https://changethisfile.com/v1/convert \
-H "Authorization: Bearer ctf_sk_your_key" \
-H "Idempotency-Key: receipt-donor-${DONOR_ID}-${GIFT_DATE}" \
-F "file=@donation_receipt_${DONOR_ID}.docx" \
-F "target=pdf" \
--output donation_receipt_${DONOR_ID}.pdf
Convert a grant report to PDF
curl -X POST https://changethisfile.com/v1/convert \
-H "Authorization: Bearer ctf_sk_your_key" \
-F "file=@annual_program_report_2026.docx" \
-F "target=pdf" \
--output annual_program_report_2026.pdf
Normalize a program photo
curl -X POST https://changethisfile.com/v1/convert \
-H "Authorization: Bearer ctf_sk_your_key" \
-F "file=@community_event_photo.heic" \
-F "target=jpg" \
--output community_event_photo.jpg
Code example: automated donation receipt generation
Donation CRM webhook: when a donation is processed, generate a PDF receipt from a DOCX template and email it to the donor. No SDK needed.
import requests
from pathlib import Path
from string import Template
from datetime import date
CTF_API_KEY = "ctf_sk_your_key_here"
def generate_donation_receipt_pdf(donor: dict, gift: dict) -> bytes:
"""
Generate a PDF donation receipt from a DOCX template.
Returns the PDF bytes for email attachment.
"""
# 1. Fill template and save as DOCX (using python-docx or similar)
# This step is application-specific — example assumes filled DOCX is ready
receipt_docx_path = Path(f"/tmp/receipt_{donor['id']}_{gift['date']}.docx")
# 2. Convert DOCX → PDF via ChangeThisFile API
with open(receipt_docx_path, "rb") as f:
resp = requests.post(
"https://changethisfile.com/v1/convert",
headers={
"Authorization": f"Bearer {CTF_API_KEY}",
"Idempotency-Key": f"receipt-{donor['id']}-{gift['date']}",
},
files={"file": (receipt_docx_path.name, f)}, # source auto-detected
data={"target": "pdf"},
timeout=60,
)
resp.raise_for_status()
# 3. Clean up temp file
receipt_docx_path.unlink(missing_ok=True)
return resp.content # PDF bytes ready to email or store
JavaScript (fetch, no SDK):
async function generateDonationReceiptPdf(docxBuffer, donorId, giftDate) {
const filename = `receipt_${donorId}_${giftDate}.docx`;
const form = new FormData();
form.append('file', new Blob([docxBuffer]), filename); // source auto-detected
form.append('target', 'pdf');
const resp = await fetch('https://changethisfile.com/v1/convert', {
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.CTF_API_KEY}`,
'Idempotency-Key': `receipt-${donorId}-${giftDate}`,
},
body: form,
});
if (!resp.ok) throw new Error(`${resp.status}: ${await resp.text()}`);
return Buffer.from(await resp.arrayBuffer()); // PDF bytes
}
curl for staff use:
curl -sX POST https://changethisfile.com/v1/convert \
-H "Authorization: Bearer $CTF_API_KEY" \
-F "file=@annual_report_2025.pptx" \
-F "target=pdf" \
-o annual_report_2025.pdf
Pricing for nonprofits
| Plan | Conversions/month | Price | Fits |
|---|---|---|---|
| Free | 1,000 | $0 | Small nonprofit — most small organizations fit here |
| Hobby | 10,000 | $29/mo | Mid-size nonprofit with active donor communications and programming |
| Startup | 50,000 | $99/mo | Large nonprofit or one with automated donor or program systems |
| Scale | 500,000 | $499/mo | National organization or nonprofit platform serving multiple organizations |
| Growth | 5,000,000 | $1,999/mo | Enterprise nonprofit platform or very large national organization |
A nonprofit processing 200 donations per month (each needing a receipt PDF) plus 50 program photos and 10 grant documents is around 260 conversions — well within the free tier. Most small nonprofits won't need a paid plan.
FAQ
Is there a nonprofit discount?
The free tier (1,000 conversions/month, no card required) covers the conversion needs of most small nonprofits without requiring any payment. For larger organizations, standard pricing applies — there's no separate nonprofit pricing tier currently.
Does the DOCX → PDF conversion meet IRS requirements for donation receipts?
The conversion produces a standard PDF — the IRS doesn't specify a technical PDF standard for donation receipts, only that the substantiation letter contain specific information. The PDF format itself is sufficient. Ensure your DOCX template includes the required elements (charity name, EIN, gift amount, date, and statement of no goods or services in exchange) before conversion.
Can I use this to create accessible PDFs with tagged content?
Standard DOCX → PDF conversion via LibreOffice doesn't automatically produce fully tagged PDFs with WCAG-compliant structure. For accessibility-critical PDF documents (required by some funders or for compliance), additional PDF accessibility tagging is needed after conversion — this is a step beyond format conversion.
What about converting grant portal-required formats?
Most grant portals accept PDF. DOCX → PDF via the API produces standard PDF that uploads cleanly to grant portals (Fluxx, Submittable, Foundation Connect, etc.). Test your specific portal before a deadline.
Can multiple staff members share one API key?
Yes — the API key can be shared across your organization's systems or tools. Usage is tracked against the key's plan limit, not per individual user. For team use, integrate the API into your organization's shared tools rather than giving individuals keys.
Related guides
Conversion guides relevant to nonprofit operations: