Credits and pricing
What each call costs, when it is charged, and when it is refunded.
Pink Editor is pay as you go. $10 buys 1,000 credits, so one credit is one cent. The editor has no subscription, and new accounts start with 1,000 credits. Hosting your site with Pink is optional; see Hosting.
Writing and publishing articles through your AI is free. So are planning (topics, pages, links, keyword roles, notes) and your own edits. The writing runs on your own AI subscription. You pay for research and data pulls: pulling keyword, SERP or backlink data, researching the web, and reading Search Console data. You also pay when Pink's own AI does the work for you in the app: chat, generating or editing an article, importing articles, expanding keywords and planning from a seed. Each paid call is charged at its listed price.
Prices below are the current list prices. They can change; the Billing page and the confirmation dialogs in Pink Editor always show the price in force.
Who pays
Every charge goes to the site owner's balance, whoever makes the call. Managers and editors you invite spend your credits, and each charge records who made it. Top up, see your history and turn on auto-recharge on the Billing page. With auto-recharge on, Pink tops you up when the balance runs low instead of refusing the call.
A call that costs more than the balance is refused with credits_exhausted before any work starts. A free call is never refused for an empty balance.
MCP tool prices
| Call | Credits | Charged |
|---|---|---|
recall | 1 | Up front |
get_keywords | 1 | After the keyword data comes back; nothing if the fetch fails |
research (any mode) | 10 | Up front |
serp_landscape, depth: "metrics" (default) | 1 | Up front |
serp_landscape, depth: "list" | 1 per keyword fetched, at least 1 per call | After the fetch |
serp_landscape, depth: "analyze" | 10 per keyword researched, 1 per keyword whose stored research is reused, at least 1 per call | Held up front, settled after; research that fails is refunded |
serp_keyword_refresh | 5 | Up front |
serp_backlinks, depth: "overview" (default) | 10 | After success; nothing if the fetch fails |
serp_backlinks, depth: "links" | 20 | After success; nothing if the fetch fails |
add_competitor | 30 | After a successful data pull; nothing if it fails |
add_article | Free to write and publish each page; 10 per question researched during the run | Research per question, during the run. Questions already researched are not researched (or charged) again. |
set_article | Free | — |
add_answer | 10 | Up front |
set_answer | 5 | Up front |
set_memory | 1 | Up front |
gsc_query_stats, gsc_striking_distance, gsc_content_decay, gsc_cannibalization, gsc_hidden_winners, gsc_forecast | 1 each | Up front |
db_select on a Search Console table (cm_gsc_performance, cm_gsc_page_summary, cm_gsc_query_summary, cm_gsc_opportunities) | 1 | Up front |
db_insert, db_update, db_delete on cm_skills | 1 | Up front |
Everything else: list_sites, select_site, add_site, get_foundation, get_selection, get_skill, graph, undo, get_article_brief, get_article, get_answer, get_pipeline_status, set_page, set_links, set_keyword_roles, merge_topics, and db_* on all other tables | 0 | — |
Charges in the app
Looking at your own data in Pink Editor (dashboards, articles, briefs, exports) is free, and so is publishing a draft as written. These actions in the app pull data or run Pink's AI and are charged:
| What | Credits | Charged |
|---|---|---|
| Add a competitor (Keyword landscape or Backlinks page) | 30 | After a successful data pull; nothing if it fails |
Look up another domain's backlinks (API: /api/cm/backlinks?scope=<domain>) | 10 | After success; nothing if the fetch fails |
| Re-fetch keyword data after changing a site's country or language (Site settings) | 1 per re-fetch, plus 1 per keyword re-fetched | After the fetch; the dialog shows the estimate first |
| Add new links to older articles automatically (Site settings, off by default) | Free | — |
| Chat in Pink Editor | Per message, by the AI work it took; at least 1 | After the reply; tools the chat uses are charged at their own prices |
| Generate or regenerate an article | 16 | Up front; refunded if the article does not publish. Questions researched first cost 10 each |
| Answers written while generating an article, or one answer published on its own | 5 per answer | After the answers publish |
| Edit an article with the Pink button (in the app or on your published site) | By the AI work it took; at least 2 (about 5 for a typical article) | After the AI replies |
| Import published articles into the plan | 3 per article | After the articles are analysed |
| Expand a page's keywords | 6 | After the keyword data comes back; nothing if the fetch fails |
| Pull keywords for a seed (API) | 1 | After the keyword data comes back; nothing if the fetch fails |
| Plan pages from a seed (API) | 4 per page | Up front; refunded if the run does not start |
| Write questions for pages that have none (seed, API) | 2 per page | Up front; refunded if the run does not start |
Recurring
| What | Credits |
|---|---|
Each tracked competitor (add_competitor), refreshed weekly | 30 per competitor per week |
| AI visibility tracking (Site settings), run weekly while it is on | 5 per search; one search is one question asked to one AI engine once |
Stop tracking a competitor (delete it from your competitors) or turn AI visibility tracking off, and its weekly charge stops.
Hosting
Where your site lives is its Destination, set in Pink Editor under Settings. Hosting is billed in dollars, not credits.
| Destination | Price |
|---|---|
| Free hosting | $0 per month |
| Pro hosting | $5 per month |
| Self-hosted | $0 per month |
Refunds
A call is refunded in full when it is rejected before any paid work runs:
| Code | When |
|---|---|
bad_input, not_found | A wrong or missing argument, or an id that doesn't exist |
concurrency_limit_exceeded | Too many research calls running at once; retry after retry_after_ms |
daily_refresh_cap_reached | serp_keyword_refresh used today's allowance |
gsc_not_connected, gsc_bq_not_configured | Search Console isn't set up for the call |
no_copy, no_research, no_context | set_answer / add_answer had nothing to work from |
A call that fails after the paid work started stays charged. Tools that charge after success (get_keywords, add_competitor, serp_backlinks, the list and analyze depths of serp_landscape) charge nothing when their data fetch fails. A refund appears in your history as its own line next to the charge.
Tips for spending less
recall(1 credit) searches what Pink already knows about your site. Try it beforeresearch(10).serp_landscapewith the defaultmetricsdepth reads your site's keyword and competitor data for 1 credit per call.get_article_briefis free: inspect a page before you publish it.- Planning (topics, pages, links, keyword roles) and publishing through your AI are free. Plan freely, then research what you need.