### [How to Translate Your Nonprofit Website for a Global Audience (Easy & Automated)](https://www.wpcharitable.com/how-to-translate-your-nonprofit-website/)

**Published:** September 24, 2026
**Author:** Melinda Bartley

**Content:**

Do you want your nonprofit’s website to load in your supporter’s own language instead of yours?

This will let you reach a much larger audience in different countries.

Below, I’ll walk you through the whole setup using Universally. It takes 10-20 minutes, and most people have their first language live with no hiccups, with no translator to hire and no code to write.

I’ll show you how to create your translation project and add settings that keep your translated pages tidy for search engines. I’ll also be straight with you about the parts of a donation that translation doesn’t reach.

## What’s in this Guide

- [Hiring Translators vs Translating Automatically](#translators-vs-ai)
- [What You Need Before You Start](#what-you-need)
- [How to Translate Your Nonprofit Website (Step by Step)](#step-by-step)
    - [Step 1: Create Your Universally Project](#step-1)
    - [Step 2: Install the Universally Plugin](#step-2)
    - [Step 3: Connect the Plugin to Your Project](#step-3)
    - [Step 4: Add the Languages You Want](#step-4)
    - [Step 5: Put the Language Switcher Where People Will See It](#step-5)
    - [Step 6: Check Your Multilingual SEO Settings](#step-6)
    - [Bonus: 2 Settings Most People Miss](#bonus)
- [What This Means for Your Donation Pages](#donation-pages)
- [Tips for Getting the Most Out of a Multilingual Site](#tips)
- [FAQs on Translating a Nonprofit Website](#faq)

## Hiring Translators vs Translating Automatically

You have two ways to serve your website in another language. You can pay a translator to rewrite every page by hand, or you can use a translation tool that serves a translated version of each page for you.

A human translator reads the most natural, and for a small fixed set of pages that is still a good choice. The trouble is that it doesn’t grow with you. Every new campaign page becomes a new translation job, and every edit to an old page means going back to the translator again.

For a nonprofit running 2 or 3 campaigns a year on a small team, that bill and that waiting time are usually what kills the whole idea.

Automatic translation used to mean accepting clumsy wording in exchange for speed. That gap has closed a lot. Context-aware tools now translate for meaning and tone rather than translating word by word, which is why I’m comfortable pointing a small team at this route.

I use [Universally](https://universally.com/) for this, and we run it on our own site too, which is live in Spanish, French and German. It comes from the same team behind [WPBeginner](https://www.wpbeginner.com/), WPForms and [AIOSEO](https://aioseo.com/), and it covers 110+ languages. It handles the multilingual SEO pieces that people normally get wrong or skip entirely.

![The Universally homepage showing its AI website translation tool for 110+ languages](https://www.wpcharitable.com/wp-content/uploads/2026/09/universally-homepage-960x522.png)One more thing before the steps. Universally doesn’t write translations into your WordPress database. Your translated pages are processed and served from Universally’s own cloud, so adding a fifth language doesn’t leave you with a heavier site than you had before your first.

## What You Need Before You Start

There are only 3 things to have ready.

**A [WordPress website](https://www.wpcharitable.com/how-to-create-a-nonprofit-charity-website/) you can install plugins on.** Any theme, any page builder. You don’t need a developer.

**Pretty permalinks turned on.** You won’t see a setting called pretty permalinks. It’s just called that, but it basically means any permalink structure other than the Plain one.

You can check your permalink structure in your WordPress admin panel, under **Settings » Permalinks**.

![Permalinks settings](https://www.wpcharitable.com/wp-content/uploads/2026/01/permalinks-settings-1.png)Universally needs this because it builds language URLs like /es/ and /fr/ as real paths on your site. All you have to do is choose ***anything other than the Plain permalink setting.*** 

The Universally plugin also warns you inside WordPress if it spots the Plain setting, with a shortcut to fix it.

**A Universally account.** The free plan covers 2,000 translated words in 1 language with no credit card. Paid plans start at $7.50 a month for 10,000 words.

Be realistic about that free allowance. 2,000 words is enough to try this on your homepage and a couple of key pages, not your whole website, so treat it as a test run rather than a permanent plan.

## How to Translate Your Nonprofit Website (Step by Step)

The first half of this happens in the Universally dashboard and the second half happens inside WordPress. Nothing here needs code.

### Step 1: Create Your Universally Project

To get started, head over to [Universally](https://universally.com/) and create your account. Once you’re in, the dashboard opens with an overview of your workspace.

Each website you translate is called a project. Go ahead and click the **+ Add Project** button in the All Projects panel.

![The Universally dashboard with the Add Project button highlighted in the All Projects panel](https://www.wpcharitable.com/wp-content/uploads/2026/09/add-project-in-universally-dashboard-960x448.png)On the next screen, choose **WordPress** under Select Your Technology. Then fill in your domain, a project name you’ll recognise later, and the language your website is currently written in.

The source language tells Universally what it is translating from, and getting it wrong gives you poor translations rather than an error message you’d notice.

![The Universally project setup screen with WordPress selected as the technology and English set as the source language](https://www.wpcharitable.com/wp-content/uploads/2026/09/universally-setup-screen-960x670.png)Once those 4 fields are filled in, click **Next** and you’ll land on the Setup Instructions screen. This is where Universally hands you the plugin and your API key, which is the private code that links your website to this project.

![The Universally Setup Instructions screen with the Install Plugin button, the API key field and the Add Languages button](https://www.wpcharitable.com/wp-content/uploads/2026/09/install-universally-plugin-960x612.png)Copy that API key now and keep it somewhere handy. You probably won’t need it, but it saves a trip back here if the automatic connection in Step 3 doesn’t go through.

### Step 2: Install the Universally Plugin

You can install the plugin straight from your own dashboard. In WordPress, go to **Plugins » Add Plugin**, search for *universally*, then click **Install Now** followed by **Activate**.

![Searching for the Universally AI Translation plugin on the WordPress Add Plugins screen with Install Now highlighted](https://www.wpcharitable.com/wp-content/uploads/2026/09/install-universally-in-wordpress-960x504.png)If you’d rather use the copy from your own account, click **download the plugin** back on the Setup Instructions screen and upload the .zip file through **Plugins » Add Plugin » Upload Plugin**. Either route gives you the same plugin. This takes less than a minute.

### Step 3: Connect the Plugin to Your Project

Activating the plugin opens a short setup wizard on its own. Click **Let’s Get Started** to begin.

![The Welcome to Universally setup wizard inside WordPress with the Let's Get Started button](https://www.wpcharitable.com/wp-content/uploads/2026/09/lets-get-started-in-the-universally-plugin-960x467.png)Because you already created the project in Step 1, the wizard recognises your domain and shows you the workspace it belongs to. Click the **Connect** button to finish.

![The Universally setup wizard confirming the site is already connected to a workspace, with the Connect button ready](https://www.wpcharitable.com/wp-content/uploads/2026/09/connect-to-site-universally-960x299.png)That signs you in and links the site without you touching the API key at all. If it doesn’t complete for any reason, that’s where the key you copied earlier comes in. Use the **Copy** button beside the key in your Universally dashboard and paste it into the plugin settings.

![The Copy button beside the API key on the Universally Setup Instructions screen](https://www.wpcharitable.com/wp-content/uploads/2026/09/copy-api-key-in-universally-960x612.png)Either way, check it landed. Under **Universally » General** in your WordPress menu, the API panel should read *Your site is connected to Universally* with an API status of Operational.

![The Universally General settings screen in WordPress confirming the site is connected, with the Languages panel below it](https://www.wpcharitable.com/wp-content/uploads/2026/09/api-connected-960x674.png)### Step 4: Add the Languages You Want

For this step, stay on that same **Universally » General** screen and look at the Languages panel underneath. Your own language sits at the top marked as **Source**, and below it is a list of suggested languages with an **Add** button beside each one.

The suggestions are useful if you’re undecided, because each one shows roughly how many speakers it reaches. For anything not on that shortlist, click **Add Languages** and pick from the full set of 110+.

When you add a language you also choose 2 things about it.

- **Region.** This lets you separate versions of a language spoken in several countries, so French for France can differ from French for Canada, and Portuguese for Brazil from Portuguese for Portugal.
- **URL format.** This sets how your translated pages appear in the address bar. Universally uses the subdirectory format by default, which puts your Spanish pages at `yoursite.com/es/` and your German pages at `yoursite.com/de/`. That’s the format Google recommends, so leave it alone unless you have a specific reason not to.

You can repeat that for each language you want. Once they’re saved, the Languages panel lists every one with its own live URL and an Active status.

![The Universally Languages panel showing a site live in 5 languages with a separate subdirectory URL for each](https://www.wpcharitable.com/wp-content/uploads/2026/09/languages-added-in-universally-960x442.png)Your translations are live at this point. Add the language prefix to any of your own addresses, so `/es/` for Spanish or `/jp/` for Japanese, and the page loads translated.

It isn’t only your body text either. Your menu items, button labels, banner text and image alt tags get picked up too, because Universally works on the whole page rather than on a list of fields you have to nominate one by one.

![A nonprofit homepage with the Universally language switcher open in the corner offering Spanish, Arabic, Japanese and Chinese](https://www.wpcharitable.com/wp-content/uploads/2026/09/translation-sample-960x592.png)Universally also lets you keep specific pages out of translation, which is handy for legal pages, internal documents or anything still in staging.

### Step 5: Put the Language Switcher Where People Will See It

A visitor shouldn’t have to know about URL prefixes to read your website. The switcher is what lets them change language themselves, and it appears as soon as you add your first language.

To adjust it, go to **Universally » Language Switcher**. Leave Implementation on **Auto** and the switcher is placed on the page for you. From there you can set its **Position**, decide whether to show language names and country flags, and pick a flag style.

![The Universally Language Switcher settings with Auto implementation selected and the position set to Bottom Right](https://www.wpcharitable.com/wp-content/uploads/2026/09/auto-language-switcher-960x643.png)Bottom Right is a safe default, though a switcher in your header usually gets found faster. If you want it there, switch Implementation to **Custom** and you’ll be given the `` shortcode to drop wherever you like, plus a small PHP snippet if your theme needs one.

![The Universally Custom switcher option showing the universally_switcher shortcode and the matching PHP snippet](https://www.wpcharitable.com/wp-content/uploads/2026/09/custom-language-switcher-960x716.png)The **Styling** tab handles the look. You can set the background, text and border colours so the switcher reads as part of your website rather than something sitting on top of it. There’s a transparent background option too, which is the one to reach for when you’re placing it inside a coloured header.

![The Universally Styling tab with background, text and border colour controls for the language switcher](https://www.wpcharitable.com/wp-content/uploads/2026/09/universally-styling-960x643.png)### Step 6: Check Your Multilingual SEO Settings

This is the step people skip, and it’s the one that decides whether your translated pages ever [show up in search results](https://www.wpcharitable.com/ultimate-guide-to-seo-for-nonprofits/).

Universally handles the mechanics for you. It generates hreflang tags, which are the small pieces of code that tell Google “this page is the Spanish version of that page”. It also translates your meta titles and descriptions and builds a sitemap for each language, with no settings screen to wrestle with.

There is 1 choice left to you, in the **SEO** panel under **Hreflang Format**.

- **Region codes** announce your pages as `fr-FR` or `pt-BR`, which targets 1 country. Pick this if you keep a separate translation per country.
- **Language only** announces them as `fr` or `pt`, which serves your single French translation to everyone who speaks French. Pick this if you have 1 translation per language, which is the common case for a nonprofit.

![The Universally SEO panel with the Hreflang Format dropdown open on region codes and language only](https://www.wpcharitable.com/wp-content/uploads/2026/09/seo-settings-in-universally-960x325.png)The practical difference is who you reach. Tagging a translation as `fr-FR` leaves out French speakers in Belgium, Canada and elsewhere, so unless you genuinely wrote that version for France, language only is the friendlier setting.

### Bonus: Two Settings Most People Miss

Both of these live under **Universally » Preferences** and take a second each, but they change what your visitors actually experience.

The first is **Prevent browser auto-translation**. Chrome and Edge will happily offer to translate your already-translated page, layering their own rougher version over yours. Turning this on adds the code that asks them to leave your translations alone.

![The Prevent browser auto-translation setting on the Universally Preferences tab in WordPress](https://www.wpcharitable.com/wp-content/uploads/2026/09/prevent-auto-browser-translation-960x420.png)The second is **Remember visitor’s language**, which is on by default. When someone reads a translated page, a cookie remembers that choice for 30 days and sends them back to the same language next time.

![The Remember visitor's language setting under Visitor Language on the Universally Preferences tab](https://www.wpcharitable.com/wp-content/uploads/2026/09/universally-preferences-960x350.png)I’d leave it on if your switcher is visible, because a returning supporter will thank you for it. If you’ve hidden the switcher, though, turn it off, since a visitor with no way to change language would otherwise be stuck on a translated version of your site.

## What This Means for Your Donation Pages

Here’s the part that matters most for a nonprofit, because a translated About page is nice and a translated [donation page](https://www.wpcharitable.com/how-to-build-a-donation-page-that-converts/) is income.

Universally works on the page your visitor loads, not on a list of post fields. So the text a supporter can see on your [campaign pages](https://www.wpcharitable.com/features/visual-drag-and-drop-campaign-builder/) and your [donation form](https://www.wpcharitable.com/how-to-create-a-donation-form/) is picked up the same way as the rest of your website, including your field labels and your donate button.

Do go and load your own campaign page in a new language once you’ve added it, though. Themes and page builders differ, and your donation form is the one page on your site you want to see with your own eyes before you send supporters to it.

Then there are two parts of giving that sit outside the page, and no translation tool reaches them.

- **Your emails and [PDF receipts](https://www.wpcharitable.com/features/pdf-donor-receipts/).** These are sent by your website rather than rendered in the visitor’s browser, so they stay in your original language. You can edit their wording under **Charitable » Settings » Emails** if you want to address that for your main second language.
- **The money itself.** Reading a page in Spanish doesn’t change the currency your donor is asked to give in, and being quoted an unfamiliar currency is a common reason people [abandon a form](https://www.wpcharitable.com/how-to-stop-donors-from-abandoning-the-donation-form/).

That second one has a proper fix. [Charitable’s Multi-Currency feature](https://www.wpcharitable.com/introducing-charitable-multi-currency-accept-donations-in-any-currency-from-anywhere/) puts a currency dropdown on your donation form and converts your suggested amounts using live exchange rates, so a donor in Mexico can give in pesos and a donor in Japan in yen.

It’s available in the Charitable Pro plugin, Basic plan and higher, and every paid plan carries a 14-day money-back guarantee. Pair it with your translated pages and an international supporter reads your appeal in their language and gives in their currency.

If you’re not fundraising on WordPress yet, you can [start with Charitable Lite](https://wordpress.org/plugins/charitable/ "start with Charitable Lite") and build your first campaign for free. It’s the same plugin 10,000+ nonprofits already use to raise money on their own websites.

## Tips for Getting the Most Out of a Multilingual Site

#### Let your traffic pick the languages

You don’t have to guess. In [Google Analytics](https://www.wpcharitable.com/features/google-analytics/), go to **Reports » User » User attributes » Demographic details** and look at the countries already sending you visitors. Steady traffic from Mexico or Japan tells you where to start far better than a hunch does.

#### Start with 1 or 2 languages, not 10

Every language you add uses words from your plan, and a second language you’ve actually reviewed beats 6 you’ve never looked at. Add more once you can see the first one bringing people in.

#### Check your buttons and headings after translating

A translation can be perfectly accurate and still break your layout, because German and Finnish words run long. A 3-word button label can wrap onto 2 lines. Universally’s Visual Editor lets you review and edit translations on the live page, which is where you’ll spot this.

#### Lock down your own names

Your organisation’s name, your campaign names and your programme names usually shouldn’t be translated at all. Universally’s glossary lets you fix those terms so they stay exactly as you wrote them in every language.

#### Translate your best pages first

Your homepage, your main campaign page and your 2 or 3 most-read blog posts will carry almost all of the benefit. Leave the archive for later, or leave it out entirely.

## FAQs on Translating a Nonprofit Website

#### Do I need to translate every page on my website?

No. Start with your highest-traffic pages and your donation pages, then expand once you can see it working. Universally also lets you exclude specific pages, so legal and internal pages don’t have to consume your word allowance.

#### Will translating my website hurt my SEO?

Not when it’s set up correctly. Each language needs its own URL and its own hreflang tag so search engines treat it as a language variant rather than duplicate content. Universally generates both for you, which is what keeps this out of trouble.

#### Can I fix a translation that reads wrong?

Yes. You can edit any translated text by hand from your Universally dashboard, and the Visual Editor lets you do it on the live page so you can see how it sits in your layout. A glossary rule will also lock a term so it translates the same way every time.

#### Will this slow my website down?

Translations are processed and served from Universally’s cloud rather than being written into your WordPress database. That’s the reason adding a fifth language doesn’t leave your site heavier than it was with 1.

#### Do my donation receipts get translated too?

No. Receipt emails and PDF receipts are sent by your website rather than loaded in a browser, so a page translation tool never sees them. You can change their wording yourself under **Charitable » Settings » Emails**.

#### What happens when I edit a page after it’s been translated?

The change is picked up and translated again on its own the next time that page is opened in each language. There’s no re-translating to do by hand, which is the main reason this approach keeps up with an active campaign.

#### Do I need a paid plan to try this?

No. Universally’s free plan covers 2,000 translated words in 1 language with no credit card. That’s a test run on a few pages rather than a whole website, so plan on upgrading if it works for you.

#### Can my donors give in their own currency as well?

Yes, though that’s a separate setting from translation. Charitable’s Multi-Currency feature adds a currency dropdown to your donation form and converts your suggested amounts at live rates, and it’s included in the Charitable Pro plugin from the Basic plan up.

Supporters in other countries are already finding your website. Giving them your pages in their own language is one of the smaller changes you can make this month, and it’s one they’ll notice immediately.

## Charitable Has 1.2+ Million Downloads!

**Trusted by millions to power successful fundraising campaigns. Try Charitable risk-free today.**

[Get Charitable Now →](https://wpcharitable.com/pricing/?utm_source=blog&utm_medium=button&utm_campaign=million-downloads)

**✅ 14-day money-back**

 **✅ Transparent pricing**

**✅ Code-free setup**

## Stay Connected for More Nonprofit Resources

For more tutorials and videos tailored to nonprofits, subscribe to our YouTube channel. We regularly publish expert tips, step-by-step guides on online donations, fundraising strategies, and practical resources to help your organization succeed.

🗞️ **Get weekly tips and exclusive guides in your inbox**
[Join our newsletter → ](https://www.wpcharitable.com/newsletter/?utm_source=website&utm_medium=pattern&utm_campaign=stay-connected&utm_content=newsletter)

🎥 **Watch step-by-step tutorials and success stories**
[Subscribe to our YouTube channel →](https://www.youtube.com/@wpCharitable?utm_source=website&utm_medium=pattern&utm_campaign=stay-connected&utm_content=youtube)

👩🏽‍💻 **Connect with our community and get daily nonprofit insights**
[Follow us on LinkedIn →](https://www.linkedin.com/company/104739526/?utm_source=website&utm_medium=pattern&utm_campaign=stay-connected&utm_content=linkedin)

🥳 **Fun reels and non-profit insights**
[Follow us on Instagram →](https://www.instagram.com/wpcharitable/?utm_source=website&utm_medium=pattern&utm_campaign=stay-connected&utm_content=instagram)

👀 **Insightful & fun videos to help you grow your cause**
[Follow us on TikTok→ ](https://www.tiktok.com/@wpcharitable/?utm_source=website&utm_medium=pattern&utm_campaign=stay-connected&utm_content=tiktok-charitable)

🌎 **Subscribe and follow for general fundraiser tips**
[Get Fundraiser Tips on TikTok →](https://www.tiktok.com/@fundraisertips/?utm_source=website&utm_medium=pattern&utm_campaign=stay-connected&utm_content=fundraiser-tips)

## Powerful Fundraising Resources

🤖 **Use Charitable with Your AI Assistant**

[See Charitable + AI →](https://www.wpcharitable.com/ai/?utm_source=website&utm_medium=pattern&utm_campaign=stay-connected&utm_content=ai "See Charitable + AI →")

⬇️ **Download proven strategies, campaign ideas, and expert tools**
[Get the Fundraising Kit ](https://www.wpcharitable.com/fundraising-kit/?utm_source=website&utm_medium=pattern&utm_campaign=stay-connected&utm_content=fundraising-kit)→

💸 **Get Free Fundraising Resources** 
[Head to the Charitable Fundraising Hub](https://www.wpcharitable.com/resources/fundraising-hub/?utm_source=website&utm_medium=pattern&utm_campaign=stay-connected&utm_content=fundraising-hub) [→](https://www.youtube.com/@wpCharitable)

**🤔 Got questions about Charitable?**
[Charitable FAQs](https://www.wpcharitable.com/charitable-faqs/?utm_source=website&utm_medium=pattern&utm_campaign=stay-connected&utm_content=charitable-faqs "Charitable FAQs") [→](https://www.youtube.com/@wpCharitable)

🏎️ **Take Charitable for a spin**
[Create your Charitable Demo ](https://demo.new/charitable/ "Create your Charitable Demo ")[→](https://www.youtube.com/@wpCharitable)

**Understand non-profit terms and jargon**
[Non-Profit Glossary ](https://www.wpcharitable.com/the-ultimate-nonprofit-glossary/?utm_source=website&utm_medium=pattern&utm_campaign=stay-connected&utm_content=non-profit-glossary)[→](https://www.youtube.com/@wpCharitable)

% **Looking for non-profit deals and discounts?**
[Best Non-Profit Deals and Discounts →](https://www.wpcharitable.com/best-non-profit-deals-and-discounts/?utm_source=website&utm_medium=pattern&utm_campaign=stay-connected&utm_content=non-profit-deals-and-discounts)

**Categories:** Tutorials

**Tags:** translation, universally

---

