Your Google listing tended, your blog written, and your month measured in calls instead of pageviews. Every piece is yours to switch on, and nothing reaches your website without your approval.
Free while we finish setting up billing. No card, and cancel any time from your own account page.
Blog posts arrive as a pull request that adds one file: the post. Your own pipeline deploys it, and then we fetch the live page and look for the post’s own words before calling it shipped.
github.com/your-site/pull/12
The homeowner’s winterizing checklist
ProposedApproved by youMergedLiveverified
mergepress/post-winterizing-checklist+412 −0
Passed the writing gate0 failures
Committed by mergepress[bot]Verified
Waiting on one thing: you.Approved. Merging the branch.Merged. Your site is deploying.Live. Next stop, Google’s index.Approve & merge
Built for
Developers and agencies with static-site clients: Astro, Hugo, 11ty, Jekyll, Next.js. Solo owners welcome.
Your clients need zero git
They approve from email: a preview and a one-tap link. The repo stays your side of the counter.
On WordPress or Wix?
A site with no repository is $49/mo and we look after its Google listing — a listing needs no site access at all. Blog writing needs a git repo; point us at one later and the same site becomes $99, with nothing to migrate.
The blog, the Google listing, and the report, on one track. Your client touches it twice.
Day 1
Three topics land in your inbox
Chosen by a person on our side rather than a keyword tool. One tap picks the one you want.
Pick a topic for October
Day 3
The post arrives as a pull request
Written, gated, previewed. Approve from email or review it like code. Your own pipeline deploys, then we check the live page for the post’s own words.
Approve & mergeProposed
Day 5
Your Google listing takes its turn
The post you approved becomes a Google post. New reviews get drafted replies, and anything below your rating line waits for you. If Google edits your hours or category, you get a diff.
Reply drafted, waiting on youAwaiting you
Day 30
The report, with verdicts
Calls and direction requests first, then what shipped, then win, flat, or loss on every fix.
refresh: +38% clicksWin
Day 30 shows a sample verdict. We don’t publish numbers we haven’t measured.
Three products. One approval loop.
Everything moves the same way: proposed, approved, shipped through your own deploy, verified.
Content and Insights are open today, each after one setup step. Local waits on Google. The rest lives on the roadmap.
early access
We write your blog. You approve every word.
Posts in your voice, about things your customers actually search for.
Free while we finish setting up billing. No card, and cancel any time from your own account page.
What lands in your inbox and your repo.
Product illustrations, recreated from MergePress output formats. Sample data, marked as such.
Blog-post PR
early access
The homeowner’s winterizing checklist
Proposed
mergepress/post-winterizing-checklist+412 −0
Passed the writing gate0 failures
Committed by mergepress[bot]Verified
Waiting on one thing: you.Approve & merge
illustration with sample data
Google post
built, awaiting Google
Google Business Profile post
Book your furnace tune-up before the first freeze. Same-week slots are open now.
of the 1,500-character limit
validated against Google’s limits
illustration with sample data
Monthly report
early access
the front page of your report
Calls: not connected yet
month 2 of 6, on track
refresh verdict: prints win, flat, or loss
illustration with sample data
Review reply
built, awaiting Google
reply draft, your rules applied
Thanks, Dana. Glad the crew got your heat back the same day.
policy gate: passed
Approve
illustration with sample data
Profile-drift PR
built, awaiting Google
Google changed your hours
1−Mon–Fri 9–5
2+Mon–Fri 9–6
merge to accept, or close to push your version back
illustration with sample data
What signing up actually gets you.
Everything the rail does, named once. You only ever open two of them: your inbox and your repo.
Blog posts, as pull requests
The GitHub App on the one repo you choose, three permissions and nothing else. Each post is one file in one PR. Uninstalling closes the only door we have.
Your Google Business Profile, tended
Weekly posts and drafted replies to new reviews, sent inside the quiet hours you set. Needs no website access at all.
Drift protection on the profile
If Google or anyone else edits your hours, category, or description, you get a diff showing exactly what changed and what it was before.
Profile health, and one thing to do next
The profile scored against what actually moves local ranking, ending in a single next action rather than a list of forty.
A monthly report in plain English
Calls and direction requests first, then the work, then win, flat, or loss on every fix. Nothing we haven’t measured is printed as a zero.
Getting found, not just published
Sitemap and IndexNow submission on every change, then we check back that the page is actually in the index.
Approvals in your inbox
Topic choices, previews, and one-tap approvals by email, plus a private page showing what shipped and what’s waiting on you. Every automation is a separate opt-in you can revoke.
For agencies: your name in front, not ours
Client workspaces under one login. Your logo on the approval emails they get; your name on their report and their client page.
Our permission screen is the pitch.
The typical AI content tool asks for your CMS admin login. We ask for three GitHub permissions. The interesting part is what they don’t include.
Install MergePress
3 permissions
ContentsRead & write
Read your site to learn its structure and voice; create branches and commits for proposed posts.
Pull requestsRead & write
Open the PR, read your review, merge only after you approve.
That’s the whole list. No workflows. No secrets. No deploy keys.
Our GitHub App install screen, recreated. The permission set is frozen in our public security doc.
PR-gated
Every change is a pull request you can read line-by-line. Your approval is the only key that merges it, and it’s recorded: who, when, through which channel.
Git-native
Your site already ships from a repo. MergePress speaks that language instead of asking for CMS passwords, and everything we write is yours, in your git history, forever.
You keep the keys
No deploy credentials, no CI access, no secrets. Enforced by GitHub’s servers, not by our promises. Uninstall and our GitHub access is gone instantly.
The ones people ask before letting anything near a site they’re responsible for.
Do you ever auto-publish?
Never. A merge needs a recorded approval: your one-tap email link, your PR review, or you merging it yourself. Silence means nothing ships.
Can you break my website?
No. Not because we’re careful, but because we’re constrained. Nothing reaches your site until you merge it, and GitHub blocks CI access server-side. The worst case is a PR you close.
Is there a contract?
No. Month to month, no minimum, no notice period. Founding rates lock in for as long as you stay. There is no cancel button in the app yet — today you tell us and we stop, and nothing is charged in the meantime because billing isn’t on. Leaving is one uninstall, not a migration.
What happens when I cancel?
You keep everything. It was always in your repo, so there’s no export because there was never an import. Uninstall the App and our access is gone instantly. Two footnotes: you remove our Google manager access yourself if you used Local (we remind you), and we keep the log of your approvals. That log is your own audit trail.
Are there hidden fees?
No. The listed price is the whole price for that site: no per-word charges, no meters, no setup fee, and your first Google Business Profile is in it. What is billed on top is countable and printed here — another site, or a second profile on the same one. A product that isn’t live yet is never billed at all.
Do I need to know git?
No. Owners approve from email with a preview and a one-tap link. Developers can review every diff like any other code.
What if I never get around to approving?
One reminder, then the cycle quietly expires and the slot rolls forward. Nothing is lost, and every expiry is recorded on our side where we can see it. We never treat silence as a yes.
Isn’t this just AI slop?
The opposite bet. Volume tools dump 30 unreviewed articles a month, the exact pattern Google now targets. We ship a few posts a human explicitly approved, with the audit trail to prove it.
Which products can I use today?
Content and Insights. Both need one setup step before anything can run: Content needs the GitHub App installed on a repo, and Insights needs our Google service account added to your Search Console property — until it is, the report prints “not connected yet” rather than a number. Local is fully built and waiting on Google’s Business Profile API approval; create your account and we onboard you the day it clears. Everything further out lives on the roadmap page, not the price list.
What do the products need access to?
Content: three GitHub permissions on the repos you choose. Insights: our Google service account added as a user on your Search Console property — the scope Google grants there also permits sitemap submission, which is the only write we make with it. Local: the same Google identity added as a manager on your profile. You remove either one whenever you like. None of them ever hold CMS logins or deploy keys.
Which platforms do you support?
Blog writing: git-backed sites (Astro, Hugo, 11ty, Jekyll, Next) on Cloudflare Pages, Vercel, or GitHub Pages. Local: any platform at all, Wix and WordPress included.
How do I know any of this is working?
We re-measure every change in your own Search Console data, 28 days before against 28 days after, and print the verdict either way. When a change loses, your report says loss.
Founding rates, while we earn the case studies.
Founding rate
Site with a repo
$99per site / month
A site you deploy from a git repository — Astro, Hugo, 11ty, Jekyll or Next.js.
The blog, written and shipped as PRs
Approval from email or PR review
The monthly report, decay detection, honest verdicts