An AI assistant can only cite a page that exists at a public URL. A draft in a folder, a doc waiting for review or a Markdown file nobody pasted into the CMS can’t be cited, however well it answers the question. The last mile of GEO is the step from “optimized draft” to “live page”, and it’s where a lot of content stops. On Scale, Citegram now closes that step: connect WordPress or Webflow once, press Publish on a finished piece, and Citegram records the live URL and starts tracking whether assistants cite it.
This guide covers why drafts stall, how to connect WordPress and Webflow (with the exact clicks), when to publish as a draft or live, when a webhook through Zapier, Make or n8n is the better route, and how to read the result once the page is out.
Key takeaways
- A page has to be live and public before any assistant can find it, read it or cite it. Publishing is part of GEO, not an afterthought.
- Most content is lost between the draft and the CMS: copy-paste, reformatting, a slug, a reviewer, and then nobody writes down the URL to check later.
- In Citegram, the Integrations page (in the sidebar) connects WordPress or Webflow, and the Publish button sends a finished piece there as a draft or as a live post.
- Other CMSs can receive pieces through a signed webhook, directly or through Zapier, Make or n8n.
- When a piece goes live, Citegram marks it Published with the real URL and tracks two things: your visibility on the target question before and after, and citations of that exact page.
- Expect a delay. Assistants usually take days to weeks to pick up a new page, so read the trend, not the first day.
Why good drafts never get cited
Writing a page that answers a buyer’s question well is the hard part, and it’s the part most GEO advice covers: answer first, state facts clearly, use tables, date what changes (our guide on how to write content AI assistants cite goes through it). The step after it gets less attention, because it looks like admin.
In practice, the path from a finished draft to a live page has several small jobs, and each one is a place where the piece can sit for weeks:
- Moving the text. Copying a draft into a CMS editor breaks headings, tables and links more often than it should, so someone has to clean it up.
- Filling the fields. Title, slug, the right collection or category, the body in the right field.
- Review. Someone has to read it before it goes live, and that someone is busy.
- Recording the URL. Once the page is out, the link lives in the CMS and in nobody’s tracking sheet, so nobody checks whether it changed anything.
The last point matters most. Assistants that search the web pick their sources at question time, which we explain in how AI assistants choose sources. Whether your new page becomes one of those sources is something you can measure, but only if you know which page to look for and which question it was written for.
Write, publish, check: the loop in one place
Citegram already did the first and last parts of this loop. Content studio drafts pieces (blog articles and other formats) aimed at the questions where assistants leave your brand out, starting from a brief grounded in real answers (see our guide to the AI content brief). On Scale, Citegram also writes 8 background articles a month. And the tracking side records which brands each assistant names and which pages it cites.
The new Integrations page fills the gap in the middle:
| Step | Where it happens | What you get |
|---|---|---|
| Write | Content studio, or the monthly articles on Scale | A draft aimed at a question where you’re missing |
| Publish | The Publish button, through WordPress, Webflow or a webhook | A post in your CMS, as a draft or live |
| Check | Citegram’s tracking of the nine assistants | Before/after visibility on the target question, and citations of the live URL |
Because the same tool wrote the piece, published it and knows the question it targets, the result is tied to the page without a spreadsheet.
How to publish to WordPress
You need WordPress 5.6 or later, served over https. On WordPress.com, application passwords need a Business plan or higher.
- Create an application password in WordPress. Go to Users → Profile, scroll to Application Passwords, give it a name you’ll recognize (for example “Citegram”) and create it. Copy the password WordPress shows you.
- Connect in Citegram. Open Integrations in the sidebar, choose WordPress, and enter your site address, your WordPress username and the application password.
- Choose what Publish does. Pick “a draft to review in WordPress” or “a live post”.
- Publish a piece. Open a finished piece and press Publish. The post is created with the title, the body as HTML, and a slug made from the title.
If you send the same piece again after editing it, Citegram updates the same post instead of creating a second one. It keeps the slug, and in draft mode it never changes the post’s status, so a draft you’re still reviewing stays a draft. When the post is live, Citegram marks the piece Published with the post’s real URL. This works whether your site uses pretty permalinks or plain ones.
How to publish to Webflow
- Generate a site API token in Webflow. Go to Site settings → Apps & Integrations → API access → Generate API token, and give it CMS read and write access and Sites read access.
- Connect in Citegram. Open Integrations, choose Webflow and paste the token. Citegram lists the site’s CMS collections.
- Pick the collection and the body field. Choose the collection your articles live in (for example Blog Posts) and the rich text field that holds the body.
- Choose what Publish does. A staged (draft) item, or a live item.
- Publish a piece. Press Publish on a finished piece. Sending it again updates the same item.
Two things to know. If the collection has a required field Citegram can’t fill, such as an Author reference, the connection is refused at connect time and the message names the field, so you find out before your first publish. Either make that field optional in Webflow or pick another collection. And live mode needs the site to have been published at least once.
When an item is live, Citegram marks the piece Published at https://<your domain>/<collection slug>/<item slug>.
Draft or live: which to choose
Both modes send the same content. The difference is who presses the last button.
| Choose | When | What happens |
|---|---|---|
| Draft (WordPress) or staged item (Webflow) | Someone reviews every page, you add images or internal links in the CMS, or you’re trying the integration for the first time | The post waits in your CMS. You review it and publish it there. |
| Live | You review pieces in Citegram before pressing Publish, and your CMS template handles layout | The page is public right away, and Citegram records the URL and starts tracking. |
A sensible start is draft mode for the first few pieces, to see how they look in your theme or template, then live mode once you trust the output. Whatever you choose, read every piece before it goes out: check the facts about your brand, and add the first-hand detail that makes a page worth citing over the others that answer the same question.
Other CMSs: the webhook, Zapier, Make and n8n
Citegram connects one CMS at a time: WordPress, Webflow or Notion. When no CMS is connected, the webhook is the route for everything else: a CMS we don’t connect to natively, a static site built from a repository, or a workflow that posts to several places.
With a webhook, Citegram sends each piece as a POST request with the title, the slug, the body as Markdown and as HTML, the language and the target query. Requests are signed the Standard Webhooks way (webhook-id, webhook-timestamp and webhook-signature headers, HMAC-SHA256 with a whsec_ secret), so your endpoint can check they came from Citegram. If a send fails, Citegram retries 5 times over about 10 minutes.
You can point the webhook at your own endpoint, or at a Zapier, Make or n8n workflow that creates the post in your CMS. To keep the loop closed, tell Citegram where the page ended up. Your automation can either answer the request right away with {"url": "…"}, or report the live URL later through a callback URL with a token. Either way, the piece is marked Published and tracked like a WordPress or Webflow post.
Notion works too, if your team drafts and reviews there: sign in with Notion, pick a page or a database, and each piece becomes a sub-page or a row. Share the page to the web and Citegram tracks its citations like any other post.
HubSpot CMS, Framer, Ghost, Shopify and Slack are on the roadmap.
Monthly articles on Scale: send automatically or review first
On Scale, each integration has a Send new articles automatically option. It’s off by default.
- Off: each of the 8 monthly background articles waits for you. You read it, edit it if needed, and press Publish.
- On: each article goes out as soon as it’s written, in the mode you chose (draft or live).
Turning it on with draft mode is a middle ground: the articles land in your CMS on their own, and nothing is public until someone publishes it there.
How to read the result
Once a piece is live, two things change in Citegram.
The piece is marked Published, with its real URL. That URL is the page Citegram looks for in the sources assistants cite.
Citegram tracks what the page changes. You see your visibility on the target question before and after publishing, and whether assistants cite that URL. Those are separate signals. An assistant can start naming your brand without citing your page (it may have found you elsewhere), and it can cite your page in an answer that still recommends a competitor. Read both.
Then give it time. Assistants usually take days to weeks to pick up a new page, and answers vary from one run to the next, so one check after publishing tells you little. Look at the trend over several weeks, the way you would for any visibility change; our guide on tracking AI visibility every week explains how to read it. If the page still isn’t cited after a few weeks, compare it with the pages that are: what they state that yours doesn’t, and which questions they answer. That becomes your next brief. For how publishing fits into the wider plan, see our GEO strategy guide.
What happens to your credentials
The WordPress application password and the Webflow token are stored encrypted and used only to publish. You can revoke them at any time: disconnect the integration in Citegram, or revoke the application password in WordPress or the token in Webflow. An application password can be revoked on its own, without changing your WordPress login password.
FAQ
Can AI assistants cite a page that isn’t published?
No. Assistants that search the web cite pages they can reach at a public URL. A draft in a document, a CMS draft or a staged item isn’t public, so it can’t be found or cited until it goes live.
How long does it take for AI to cite a new page?
It varies by assistant and by question, but it usually takes days to weeks for a new page to be picked up. Track the target question and the page’s URL over several weeks rather than checking once.
Should I publish AI-drafted content straight to live?
Only if someone has read it first. A draft is a starting point: check the facts about your brand, remove anything you can’t stand behind and add first-hand detail. Draft mode lets you do that review inside WordPress or Webflow; live mode suits teams that review in Citegram before pressing Publish.
My CMS isn’t WordPress or Webflow. Can I still publish from Citegram?
Yes, through the webhook. Point it at your own endpoint or at a Zapier, Make or n8n workflow that creates the post, and send the live URL back so the piece is marked Published and tracked.
Publish your next page from Citegram
Integrations, and so the Publish button, are part of Scale ($39 a month), with 60 Content studio drafts, 8 background articles a month that can go out automatically, and Autopilot. On Pro ($19 a month, 30 drafts) you write in the Content studio, copy or download the piece, then mark it as published with its URL to track it. The free plan needs no credit card. See Content studio, Integrations and pricing.
