1. What Baton does
Baton lets the person who builds a website hand it to the person who needs to edit it. A developer adds one script to the site, or connects GitHub, and invites the client. The client clicks words, photos, links and icons on the real page, changes them and presses Publish. Nothing goes live until they do.
Clients own the content. You keep the code, the connection and the settings.
2. Add Baton to a site
Add the site in Baton by pasting its address. Baton gives you one line to put on every page, just before the closing </body>, or in the shared layout for a framework:
<script src="https://batonedit.com/h.js" data-site="your-site" defer></script>If you can add a script tag, it works: WordPress, Shopify, Webflow, Framer, Next.js, Astro and plain HTML.
If your code is on GitHub, you can skip pasting it. Open the site, choose Connect GitHub and pick the repository. Baton then offers Install Baton for me: it opens one pull request that adds the line to your layout, merges it as soon as your checks pass, waits for your site to rebuild (usually 1 to 3 minutes) and checks that it is live. You need permission to add the Baton app to that repository on GitHub. It works for Next.js, Astro and plain HTML sites. For other kinds of project Baton says where to paste the line by hand.
- The script loads your published edits. At most once every six hours per browser, it tells Baton the site is installed, sending only the site address.
- It does not read forms, cookies or visitor details, and it has no analytics. The file is public, so you or an AI assistant can read it first.
- Google usually runs the script, so it sees your edits. Bing, link previews on social apps and many AI tools may only read the original page. The site setup page offers a small Cloudflare Worker that puts your published edits into the page itself, and a Check my site button that shows what a crawler without JavaScript can see.
3. Invite your client
Open the site, choose Add a person and enter their email address. They get an email with an invite link. The link only works for that address, so they sign up with it.
- Owner: the client. You can hand a site over to them and stay on as developer.
- Developer: you. A site has one owner, one developer and any number of editors.
- Editor: someone who changes content but does not own the site.
Handing a site over is free for you, for as many sites as you like. The client starts on Free and only pays if they choose a plan. See plans and limits.
4. Edit and publish
A client opens the editor and clicks any words on their page to type, replaces a picture, changes a link or swaps an icon. Changes stay as a draft, and they can be undone while they are still a draft.
When they are happy they press Publish. Only then does the live page change. The page looks right on every screen, because they are editing the real page.
5. History and going back
Every publish is saved as a version with its date. A client opens History, picks an earlier version and goes back to it, without calling you.
How far back they can look depends on the plan: 7 days on Free, 30 on Starter and 90 on Pro.
Owners and developers also see an Activity list on the site page: who published, invited or rolled back, and when. Free shows the last 7 days, Starter and Pro show everything, and Pro can download it as a spreadsheet (CSV).
6. Share a draft for review
Before you publish, press Share preview in the editor, or press Publish and choose Share a review link. Anyone with the link can see your draft on the real page, read only and without an account, so a colleague or a boss can look before it goes live. They only see pages with changes, and nothing they do can change the site.
A site has one review link at a time. Making a new one ends the old one, and a link stops working after 14 days. Preview links are free on every plan.
7. Save edits into your code
Edits go live through the script at once. Connecting GitHub is optional and makes your code say the same thing afterwards.
- Connect it once in Settings, then pick the one repository for each site.
- Each publish opens a pull request with only the words your client changed. You can read it, run your checks and merge it when you like, or let it merge itself when your checks pass.
- Baton opens only page and content files to find the changed words. It keeps no copy of your code.
- You can disconnect in Baton, or remove the app in your GitHub settings, and access ends at once.
- Images and icons still go live through the script for now.
When an edit is not saved into the code
The edit is still live through the script. Baton says why, and it never guesses:
- The words are not in the code. They may come from a content system or another repository. Baton names what it can see.
- The same words appear in several places. Baton asks which one, or writes them all when you changed them the same way everywhere.
- The words are built from pieces (joined strings, or a template with variables). Baton will not guess where to split them. A short list of lines, such as a heading drawn one line at a time, is the exception: the new words are cut across the same number of lines.
- The code changed since Baton last saved the edit. If someone reverted or rewrote the words, Baton does not write over their change. Change the words again to save them again.
- The new words have formatting or a link and the code keeps them in a plain text string. Bold, colour and size stay with the script; a link or a list cannot live in a string.
8. Plans and limits
Nobody pays by default. Whoever owns a site chooses its plan, and a new owner starts on Free. You pay only if you choose Starter or Pro, by card, for a month or a year. You can cancel any time, and the plan stays on until the end of the period you paid for.
- Free: 1 live site, no extra editors, 7 days of history, 5 writing credits a month, preview links.
- Starter, $4.99 a month ($49.90 a year): 3 live sites, up to 5 client editors on each site, 30 days of history, 50 writing credits a month, a full activity list and saving into GitHub.
- Pro, $9.99 a month ($99.90 a year): unlimited live sites and client editors, 90 days of history, 200 writing credits a month, the activity list with a CSV download and saving into GitHub.
Developers pay nothing to connect or hand over. A site only counts toward a plan once it is live, meaning someone has published on it. Sites you have connected but not published yet are free, so you can set up as many sites as you need and hand them over. Free allows 10 of these waiting sites, Starter 30, and Pro has no limit.
Writing help is the panel that suggests clearer ways to say a heading, paragraph or button. Each suggestion uses one credit, and asking for another one uses another. Nothing changes on the page until you choose to use it. The credits for a month are shared by all the sites a person owns, they never roll over, and they come back on the 1st.
Cancelling and refunds. Cancel any time in Settings, then Subscription. Your plan stays on until the end of the period you paid for. If you ask within 14 days of a payment, we refund it in full. The details are in the Terms.
The full list is on the pricing page.
9. Security
- Every account confirms its email address, and two-step login is available.
- GitHub access is one repository per site, and you can end it any time.
- Invite links only work for the address they were sent to.
More in the privacy policy.
10. Troubleshooting
- An edit is not on the live site. Check that the script is on the page and that the edit was published, not left as a draft.
- My client cannot sign up. The invite link only works for the address it was sent to. Send a new invite to the right address.
- A save into my code was skipped. See the list above. The edit is live through the script either way.
- Something looks wrong in the editor. Use the feedback button in the dashboard. Pick the closest topic and say what happened; we attach the page you were on.
Still stuck? Send us a message and a real person will reply.