The OxyPages Guide: Set Up Every Feature Step By Step

This OxyPages guide sets up every feature in the right order: publish, a WhatsApp link, a 404 page, testing, then your own domain. Free plan steps included.
The OxyPages Team · · 14 min read
You published the site. That part went fine.
Then the questions start. Can you put a WhatsApp button in the corner. What happens when somebody clicks an old link that no longer exists. How do you undo a publish that went wrong. When is it worth putting the site on your own domain.
All of those have answers. The answers just live in different places, so you end up with nine tabs open and no idea which thing to do first.
This OxyPages guide is the map. Every feature in the order you should set it up, one short section each, then a pointer to the guide that goes deep on that one thing.
It also says out loud what the platform will never do, because finding that out on day three is worse than finding it out in the next paragraph. OxyPages serves static files. It does not run PHP, it does not run WordPress, and there is no database anywhere in it. Nothing further down this page walks that back.
If you have not published anything yet and you are holding a file an AI wrote for you, get that file online first, then come back and work down this list.
TL;DR: Set things up in this order: publish the site, add your contact shortcuts, add a 404 page, then republish and test on the real address. All four steps work on the Free plan. Keep the master copy of your site on your own computer, because uploading a folder or a ZIP replaces the whole site. What costs money is business use, a custom domain (from Lite at $5 a month), password protection and restoring an old version. And this is static hosting, so PHP, WordPress and databases are out, whatever else you have read.
What Is OxyPages, And What Will It Never Do?
OxyPages is static hosting. You paste HTML, upload your files or drop in a ZIP, and the site is live in seconds on a free myoxypages.com subdomain with HTTPS already switched on.
It is not a drag-and-drop builder like Wix or Squarespace. You bring the files. If you do not have files yet, ask an AI assistant such as Claude or ChatGPT to write them from a description, then bring those here.
What it will never do is run code on a server. That one sentence decides whether the rest of this page is useful to you, so here it is as a table.
| What you want on the site | Works? | Why |
|---|---|---|
| HTML, CSS, JavaScript, images, fonts, PDFs | Yes | They are handed to the visitor exactly as uploaded |
| JavaScript that calls an external API | Yes | It runs in the visitor's browser, not on our server |
| A site exported from Webflow, Figma or an AI assistant | Yes | It is already a folder of finished files |
| Output from Hugo, Jekyll, Astro or Eleventy | Yes | You build on your machine and upload the result |
A built React or Vite app (the dist folder) | Yes | Served with single-page routing, so app URLs work on refresh |
| A contact form that receives messages | No built-in forms | Point the form at a form service such as Formspree or Web3Forms |
| PHP, Python or Node running server-side | No | Nothing on your site executes on the server |
| WordPress, Laravel, or anything backed by a database | No | Those need a server that thinks before it answers |
| Logins, member areas, pages that differ per visitor | No | The page is built before the visit, not during it |
Upload a .php file and it's simply skipped. The rest of the site publishes and you get a warning naming the file, but the PHP never reaches the server, let alone runs.
If two or three of those No rows describe the site you are building, stop here. Buy a shared cPanel plan or a managed WordPress host and budget for the renewal price rather than the promo price. That is the right answer for that site and I am not going to try to talk you out of it.
The rest of this OxyPages guide assumes your site is genuinely static: pages, styles, scripts and images.
What Order Should You Set Things Up In?
Publish first, then the extras that live in your own files, then test, then the paid settings once the site has earned them. The order matters because each step is easier to check once the one before it is done.
| Step | What you do | Where it happens | Free plan? |
|---|---|---|---|
| 1 | Publish the site, even if it is rough | Publish wizard | Yes |
| 2 | Add contact shortcuts, like a WhatsApp link | Your own file | Yes |
| 3 | Add a 404 page | Your own file | Yes |
| 4 | Republish, then test on the live address | Your browser | Yes |
| Later | Custom domain, password protection, restore a version | Domains, Settings, Version History | Paid |
Three dependencies are worth spelling out.
Publish before anything else, because a live address is what every later step is checked against, and a rough page you can open on your phone teaches you more than a perfect one on your laptop. The 404 page after the design is settled, because it should look like the rest of the site. And testing on the published address rather than the editor preview, because only the live site shows you what a visitor actually gets: the real 404 behaviour, the real certificate and the real load time on a phone.
Every numbered step in this OxyPages guide is included on the Free plan. The last row needs a paid plan, and you can leave all of it until the site has earned it.
Step 1: Publish Before You Perfect
In your dashboard, choose New Project, then Upload Files. You get one drop area: drag in a folder or a ZIP file, or pick individual files, choose which file is the homepage, and deploy.
There are four other ways in:
- No account yet. The drop zone on our homepage takes pasted HTML, a file, a folder, a ZIP, a single PDF or image, or a built app's
distfolder, up to 25 MB. It's live in seconds as an Unclaimed Link for 30 minutes, and signing up free keeps it. - From GitHub. Connect a repository and the site is built from it. That works on every plan, Free included.
- From Claude or ChatGPT. Add the connector once and it publishes a page straight from the chat.
- From a terminal.
npx oxypagespublishes the folder you're in.
Visitors land on index.html, so it needs to sit at the top level of what you upload. A ZIP with one folder wrapping everything is fine, because that single folder is unwrapped for you. A ZIP where index.html is missing, or buried two folders deep, is the one that goes wrong.
Once the site is live, its Upload page gives you four ways to update it: Paste Your HTML, Upload Files, Upload Folder and Upload ZIP File.
Here is the behaviour that catches people later, so learn it now.
Upload Files, Upload Folder and Upload ZIP File replace the entire site. Whatever you upload is what the site becomes. Pasting HTML and publishing from the Code Editor work on top of what is already live, and keep your other files.
So if you upload a folder containing one corrected page, you now have a one-page website. I have watched that happen to somebody who only meant to fix a typo.
Keep The Master Copy On Your Computer
The simplest way to never lose a page is to treat the folder on your computer as the real site and the live site as a copy of it.
Fix things in that folder, then upload the whole folder again. If you make a quick change in the Code Editor instead, copy the same change back into your local file straight away. Otherwise your next folder upload quietly undoes it, because the folder never knew about the fix.
A folder name with the date in it, like site-2026-11-13, costs nothing and gives you your own history on top of ours.
Versions You Get For Free
Publishing needs a verified email address, and every publish creates a new version in Version History. Free, Lite and Starter keep the last 7 versions and Growth keeps 14. Viewing that history is free on every plan, and each version has a View Source link that shows its files read-only. Restoring from it is a paid feature, from Lite up.
That is another reason the local folder matters on Free. Version History tells you what changed. Your own copy is what lets you put it back.
Step 2: Add The Contact Shortcuts People Actually Use
A WhatsApp button is not an OxyPages feature and it does not need one. It is a link.
WhatsApp's click to chat format is https://wa.me/ followed by the phone number in full international format with no plus sign, no spaces and no dashes. Add ?text= with URL-encoded text and the visitor's message is pre-filled before they even type.
<a href="https://wa.me/6581234567?text=Hi%2C%20I%20saw%20your%20website">WhatsApp us</a>
That works on any static host on earth, because there is nothing running behind it. Six lines of CSS turn it into the floating pill in the corner, and the WhatsApp floating button guide covers that properly: the icon, where it sits on a phone versus a laptop, and how to keep it from covering your own content.
Two neighbours worth knowing while you are in the file. mailto: and tel: links need no setup either, and on a phone a tel: link is the difference between a call and a copied number.
<a href="tel:+6581234567">+65 8123 4567</a>
<a href="mailto:hello@example.com?subject=Quote%20request">hello@example.com</a>
A few small habits make these links work for everyone:
- Write the number in the
tel:link in international format, with the plus sign and country code. A local number works for local callers and fails for everyone else. - Show the number or address as the link text, not just "Call us". On a laptop a
tel:link may open a calling app nobody uses, and a visitor who can read the number can still dial it. - Use
?subject=on email links. It fills the subject line, so you can spot enquiries from the website in a busy inbox. - Put the shortcuts where people look. The top of the page for a phone visitor in a hurry, and the footer for everyone who scrolled to the end.
That is the whole contact setup for most small sites, and none of it needs anything running behind it.
Step 3: Add A Custom 404 Page
Upload a file named 404.html at the top level of your site and OxyPages serves it whenever somebody requests a page that does not exist. It works on every plan, Free included, and there is no setting to switch on.
Without one, a missing URL shows the standard OxyPages "Page Not Found" page. That is not broken, it is just not yours, and it is the one page you can guarantee a lost visitor will see.
Paid plans have a second option, a "404 Redirect To Home" setting that sends missing URLs to your homepage instead. The precedence is simple: an uploaded 404.html always wins, on every plan, and the setting only applies when there is no 404.html file.
One technical detail that trips people up. A 404 page can be triggered from any URL depth, so reference its assets with absolute paths, /style.css rather than style.css, or the styling will vanish on exactly the URLs where it matters. The guide to building a custom 404 page covers what to actually put on it.
The short version of what goes on it: one line admitting the page isn't there, a link to the homepage, and links to the two or three pages people visit most. Your Statistics page lists your top pages, so you don't have to guess which ones those are.
One setting to watch: if you switch on Single-Page App Mode for a built React or Vite app, missing URLs without a file extension get your index.html instead of the 404 page. That's what an app wants and what a plain site doesn't. If your app's routes break on refresh, why a built app 404s on refresh walks through the cause.
Step 4: Republish, Then Test Like A Visitor
Test on the live, published website, not the editor preview. Publish first, then open your real address. This is the last step for a reason: the previous ones can only be checked properly once the site is live.
Then work through this, in a private window:
- Open the site on an actual phone, on mobile data rather than your Wi-Fi
- Click every link in the menu and the footer, and check every image loaded
- Open a URL you know does not exist and confirm your 404 page appears, styling intact
- Tap the WhatsApp, phone and email links on the phone, not a desktop browser
- Check Version History shows the publish you just made
- Hard-refresh with Ctrl+F5 on Windows if you are seeing an old version. On a Mac it is Cmd+Shift+R in Chrome, Edge or Firefox, and Option+Cmd+R in Safari
An hour later, open the Statistics page. It updates hourly and counts real page loads on the server, with no cookies and no tracking script, so your own test visits should be there. Bots and crawlers are left out, which is why the numbers will never match Google Analytics exactly.
Most problems at this stage are one of three things: a file name with a capital letter the page doesn't use, an image path that still points at a folder on your laptop, or a cached old copy. The hard refresh rules out the third in a second.
Here Is All Of It In One Page
To make this OxyPages guide concrete, here is a small business site with every page-side piece from step 2 in it. A two-person cleaning company, one page, no build step, nothing to install.
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Marigold Cleaning - Home And Office</title>
<style>
body { font-family: system-ui, sans-serif; max-width: 38rem; margin: 0 auto;
padding: 2rem 1rem 6rem; line-height: 1.6; color: #1a1a1a; }
.contact a { font-weight: 600; color: #1a1a1a; }
.chat { position: fixed; right: 1rem; bottom: 1rem; background: #25d366;
color: #fff; padding: .8rem 1.2rem; border-radius: 2rem;
text-decoration: none; font-weight: 600; }
</style>
</head>
<body>
<h2>Marigold Cleaning</h2>
<p>Home and office cleaning, weekly or one-off. Tell us what you need.</p>
<p class="contact">
Call <a href="tel:+6581234567">+65 8123 4567</a>
or email <a href="mailto:hello@example.com?subject=Quote%20request">hello@example.com</a>.
We reply within one working day.
</p>
<a class="chat" href="https://wa.me/6581234567?text=Hi%2C%20I%27d%20like%20a%20quote">
WhatsApp us
</a>
</body>
</html>
Save that as index.html, publish it, and the site is done. Change the phone number, the email address and the wording, and it is your business rather than mine.
One honest note: a business site like this one belongs on a paid plan, because Free is for personal, non-commercial use. You can build and test it on a free account first, then upgrade before you share it.
Notice what is not in the file. No <script> tag at all, and nothing that needs a server. Every way to reach the business is a link.
Copy the same page to 404.html, cut it down to an apology and a link home, change the asset paths to absolute, and step 3 is done too.
When The Site Earns It: Domain, Password And Restore
Everything above runs on Free. These three are the paid extras, and the honest advice is to leave them until you have a reason.
Your own domain. Custom domains start on Lite, at $5 a month or $48 a year. On your website's Domains page, choose Add Custom Domain, type the domain, and create the one DNS record it shows you at your DNS provider: a CNAME pointing to cname.myoxypages.com, with the proxy off. OxyPages spots the record and issues the HTTPS certificate itself. Each website can have up to 3 custom domains on Lite, 5 on Starter and 10 on Growth. The domain stays at the registrar where you bought it.
The catch is the bare domain, example.com without the www. It can only use a CNAME at DNS providers that support CNAME flattening or ALIAS records, such as Cloudflare, Porkbun, Namecheap and DNSimple. Cloudflare's explanation of CNAME flattening If yours doesn't, connect www.example.com and use your registrar's domain forwarding for the bare version. The full walkthrough is connecting a domain to your website.
Password protection. On a paid plan, one switch on the Settings page and a password of at least 6 characters puts the whole site behind a password. It's one password for everybody, not visitor accounts. If the account later moves to Free, the password stops being enforced and the site becomes public, so archive anything private before you downgrade.
Restoring a version. On any paid plan, each earlier version in Version History has a Restore button, and the restored version goes live straight away on your subdomain and any connected domains. Nothing is deleted when you restore, so you can step back and forth until the right one is live.
Where This OxyPages Guide Goes Next
Pick the one thing that is blocking you and go deep on that, rather than reading everything.
Two guides sit under this one: adding a WhatsApp floating button, and building a custom 404 page. Each owns one job and does not repeat this page.
If you are still deciding whether to start at all, the honest version is this. The Free plan gives you one website for personal, non-commercial use, 25 MB of storage, 5,000 page views a month, cookieless visitor statistics and no card. What it does not give you is business use, a custom domain, password protection or the ability to restore an old version. If that covers you, start a free account, no card needed. Compare the plans when one of those four things starts to matter, and not before. Paid plans start at $5 a month (Lite: 500 MB, 20,000 page views, two websites).
And if your site needs a login, a database or PHP, everything above was the wrong shopping list. Go and buy a server. That is not a lesser outcome, it is the correct tool for that site.
For everybody else, the whole setup is an afternoon at most, and most of that afternoon is you deciding what the 404 page should say.
Let AI Do It For You
Paste this into any coding assistant that has your OxyPages site files, and it will do the page-side work from steps 2 and 3 in one pass.
My website is hosted on OxyPages, which serves static files only. Do not add
any server-side code, PHP, database or backend service. Work only in HTML,
CSS and JavaScript that runs in the browser.
Please do all of the following:
1. Add a floating WhatsApp link fixed to the bottom right corner, using the
URL https://wa.me/<my number in full international format, no plus sign,
no spaces> with a short URL-encoded ?text= message. Keep it above the page
content, make sure it does not cover anything important on a narrow phone
screen, and give it an accessible label.
2. Add a contact line near the top of my main page and in the footer of
every page, with a tel: link in international format and a mailto: link
with a ?subject= of "Website enquiry". Show the number and email address
as the link text.
3. Create a 404.html file at the top level of the site. Match the design of
the rest of my site, apologise briefly, and link back to the homepage.
Reference every stylesheet, script and image in it with absolute paths
starting with a slash, so it renders correctly from any URL.
Show me the changed files before publishing, and give me the complete folder
so I can upload all of it in one go.
The last line matters. A folder or ZIP upload replaces the whole site, so you want every file back from the assistant, not just the two it changed.
FAQ
Do I Need To Know How To Code To Use OxyPages?
No, but you do need files. OxyPages hosts what you bring rather than building it in a visual editor, so the usual routes in are an export from another tool, a folder from a designer, or a page an AI wrote for you. If you have nothing at all, ask an AI assistant such as Claude or ChatGPT to write the pages from a plain description, then upload what it gives you.
How Do I Put My Site On My Own Domain?
Upgrade to a paid plan, from Lite at $5 a month, then add the domain on your website's Domains page and create the CNAME record it shows, pointing to cname.myoxypages.com. The HTTPS certificate is issued automatically once the record is found. A bare domain without www needs a DNS provider that supports CNAME flattening, such as Cloudflare.
Can I Run WordPress, PHP Or A Database On OxyPages?
No, and this isn't a plan limitation you can pay to remove. OxyPages serves static files, so nothing on your site executes on the server. A .php file in an upload is skipped with a warning, and it never runs. If your site needs WordPress, a database or logged-in users, a shared cPanel host or a managed WordPress plan is the right purchase.
What Does The Free Plan Actually Cover?
One website for personal, non-commercial use, with 25 MB of storage, 5,000 page views a month, automatic HTTPS, cookieless statistics, a custom 404 page and your last 7 published versions kept for viewing. No card, no time limit and no badge on the site. Business use, custom domains, password protection and restoring an old version need a paid plan, so every step in this OxyPages guide runs on Free.