LIFETIME DEAL · Pay once, own it forever — no subscription, no renewal. See pricing

Changelog

We ship fast. Major releases roll out every 1–2 weeks; bug fixes land within hours. Here's the public version history. Newest releases at the top.

v2.3.7 June 8, 2026

Custom prompts stay perfectly on-topic

  • No more topic drift. If your custom prompt includes a sample or example article about a different subject, the AI now treats it as a style guide only — your article always stays on your exact keyword, never the sample's topic.
v2.3.6 June 8, 2026

Generate multiple sites in parallel — much faster

  • Parallel batches are back. Submit keyword batches for several sites and up to 5 now run at the same time instead of one-after-another — a big speed-up when you work across multiple sites.
v2.3.5 June 8, 2026

Internal linking everywhere + reliable lifetime stats

  • Internal links on every content type. The "Internal links" box — paste your own post URLs and the AI weaves the relevant ones in — is now on the Informative, Amazon, and Digital/SaaS pages (not just Informative).
  • Accurate lifetime totals. Your article and word counts now accumulate on the server, so they stay correct even after reinstalling or moving to a new PC.
v2.3.4 June 8, 2026

Security & reliability hardening

  • Stronger license protection. Article generation and usage tracking are now verified server-side, keeping your account and stats secure and accurate.
v2.3.3 June 8, 2026

Generate every image with AI

  • All images via AI. A new toggle in the Images section generates every image in your articles with your own image API — Google Nano Banana, HuggingFace or OpenAI — so you never depend on stock photos. There's also a one-click Test image API button so you can confirm your key works before running a batch.
v2.3.2 June 8, 2026

Your setup never gets lost + internal linking

  • Your work sticks around. Keywords, your custom prompt and internal links are now saved as you type — leave the app to copy a keyword list and come back to find everything exactly where you left it.
  • Internal links box. Paste your own site's post URLs and the AI weaves the most relevant ones in as natural internal links — perfect for sites it can't crawl automatically.
v2.3.1 June 7, 2026

Every article gets a featured image

  • No more missing featured images. Every published article now gets a proper featured image — taken from the article, generated by AI, or a clean branded cover showing your site's name. Article images are also fully responsive on every device now, with an image-size control of your own.
v2.3.0 June 7, 2026

AI images, Blogger publishing & WhatsApp support

  • AI image generation. A dedicated Images section lets you create AI images (Nano Banana, HuggingFace, OpenAI) and drop one after every H2 — or a fixed number per article.
  • Publish straight to Blogger. Connect your Blogger blog with one-click Google sign-in and auto-publish, just like WordPress and Ghost.
  • WhatsApp support added for content-generation help.
v2.2.13 June 6, 2026

Custom prompts stay perfectly on-topic

  • On-topic, every time. Fixed a rare case where a custom prompt could drift away from your keyword — your content now follows the exact keyword you enter, always.
v2.2.12 June 6, 2026

Claude Opus 4.8 + sharper writing

  • Claude Opus 4.8 is now available in the model picker.
  • Better readability — shorter, punchier sentences — and content length now follows your chosen size much more closely.
v2.2.9 June 5, 2026

Two-factor authentication

  • Secure your account with 2FA. Optional Google Authenticator two-factor authentication is now available in Settings — on both the website and the desktop app.
v2.2.8 June 4, 2026

Period-wise Analytics

  • Filter your Analytics by period. Your dashboard Analytics page now has a date filter — see your articles, words and content mix for Lifetime, Last 30 days, This year or Last year. The desktop app syncs these period snapshots automatically.
v2.2.7 June 4, 2026

Clearer plan names

  • Plans renamed. Our three lifetime plans are now Starter, Growth and Max (previously Solo / Studio / Agency) — across the app, website and your dashboard. Same plans, same prices, same features; just clearer, friendlier names.
v2.2.6 June 4, 2026

Comparison tables now look great on mobile

  • Mobile-friendly comparison tables. Product comparison charts now adapt to phone screens — each product stacks into a clean, full-width card under 600px, so the rating and buy button are never cut off. On every device the table also keeps a smooth horizontal-scroll fallback.
v2.2.5 June 4, 2026

No more duplicate posts & smarter outbound links

  • Fixed: duplicate publishing. On slow or flaky WordPress hosts a single keyword could occasionally create up to four copies (four drafts, or the same post published four times). Publishing is now idempotent — one keyword always lands exactly one post, even if the connection times out and the request retries.
  • External links are now nofollow by default. Every outbound link Writerify adds to your articles automatically carries rel="nofollow", so you keep your link equity while still citing authoritative sources. Your own internal links are unaffected.
v2.2.4 June 2, 2026

Polished country picker & beautiful branded emails

  • Cleaner country selector. The sign-up phone field now shows a crisp flag, a 3-letter country code and the dial code (e.g. BGD +880) instead of an oversized full name — and real flag images render correctly on every operating system and browser.
  • Branded Writerify emails. Verification codes, password resets, sign-in links and email-change confirmations now arrive in a clean, on-brand Writerify design instead of the plain default.
v2.2.3 June 1, 2026

Sign-up code fix + no more duplicate product titles

  • Fixed: email verification code. The sign-up code box now accepts the full code length (some accounts issue 8-digit codes), so "Token has expired or is invalid" no longer blocks new sign-ups.
  • Fixed: duplicate product title. Best-list articles were showing each product title twice (a stray heading above the product card). Each product now shows its title only once.
v2.2.2 June 1, 2026

Internal + external linking now works in every article type

  • Fixed: interlinking + external links across ALL article types. Internal links (to your other posts, pulled from your sitemap) and authoritative external links now generate in Amazon best-list / single / VS and Digital / SaaS articles too — previously only Informative articles received them. Add your sitemap URL in Sites for internal links; external authority links are added automatically.
  • Length now closely follows your setting. The word-count cap is now the dominant rule, and each product section is budgeted to your actual product count, so a Long (3001-4500) article no longer balloons past 7,000 words.
  • More reliable auto-publishing. Publishing now retries transient WordPress errors (429 rate-limit, timeouts, 5xx) with backoff, so a batch no longer silently loses articles to a momentary host hiccup (the 18-generated-but-only-7-published issue).
v2.2.1 June 1, 2026

Mobile-friendly comparison tables

  • Fixed: product comparison tables on mobile. Best-list, VS, spec and verdict tables now scroll sideways on small screens instead of squashing the product name into a vertical sliver, so they stay readable on every phone. Inline and on-page, so it holds even on locked-down WordPress hosts.
v2.2.0 June 1, 2026

New lifetime pricing, an Upcoming roadmap & a fresh version line

  • New lifetime pricing. Three simple, one-time plans — Solo $69 (1 site), Studio $199 (10 sites) and Agency $299 (unlimited). Pay once, own it forever — no subscriptions, no renewals. Each plan's feature list now leads with the pain it removes (auto-WebP images with no paid plugins, automatic internal interlinking, sitemap duplicate guard, bulk generate + schedule + publish).
  • New: Upcoming page. Sidebar → Upcoming previews what's shipping next — the sitemap bulk-keyword engine, one-click whole-site rewrite & quality boost, and a multi-template library for every content type. Every one lands free on your lifetime licence.
  • Sharper version numbers. Releases now run 2.2.0 → 2.2.1 … and roll the minor each cycle, so it's clearer how far your copy is behind the latest.
v2.1.79 June 1, 2026

Check for updates, on demand

  • New: manual update check. Click the version badge in the sidebar any time — Writerify scans for a newer release and tells you right there: "Update available" (one click to download) or "You're on the latest version." No more wondering.
v2.1.78 June 1, 2026

Internal interlinking, pause/resume tasks + more support channels

  • New: automatic internal linking. Set your site's sitemap URL (Sites → edit) and Informative articles now weave in natural links to your own existing posts — real URLs only (no broken links), with varied anchor text — for stronger SEO and on-site engagement.
  • New: pause & resume a running task. Internet dropped mid-batch? Hit pause, reconnect, then resume — the current article finishes and the rest waits, so you never lose a batch. (Cancel ✕ is still there too.)
  • More ways to reach us. The in-app Support page now links our Facebook Page and a direct "Connect with the Engineer" line.
v2.1.75 May 31, 2026

Sitemap duplicate-check, full in-app Features tour, cancel tasks & more

  • New: sitemap-based duplicate detection. Add your site's sitemap URL (Sites → edit) and the pre-flight check compares against your live site by default — falls back to your local library when no sitemap is set.
  • New: in-app Features tour. Sidebar → Features now lays out the full toolkit — what each feature does and the pain it removes — so you can see the whole value without leaving the app.
  • New: cancel a running task. Started a batch with the wrong settings? Hit the ✕ on any running task to stop it instantly.
  • Simpler sign-up. Verify your email with a quick code, pick your country code, and add your WhatsApp/Telegram number — same account works on the website and the desktop app.
  • New: Support section. Find our WhatsApp, Telegram and Facebook group right inside the app (sidebar → Support) for one-by-one help.
  • Cleaner titles by default. "Best · VS · Single" now defaults to clean keyword titles (no forced prefix) — add a prefix only if you want one.
  • Readability fix. The duplicate-keyword notice now reads clearly in light mode.
  • Hardened licensing & trial. Stronger protection against trial abuse and tampering, plus an unbreakable server-checked license.
v2.1.67 May 26, 2026

Smarter licensing & account linking

  • Activate once, everything syncs. When you activate a license in the desktop app, your account is now linked automatically — your plan flips and your details show up in your dashboard, no manual step.
  • Cleaner dashboard. The "Upgrade" option now only appears if you're on a lower plan; Max users (already at the top) no longer see it.
v2.1.66 May 26, 2026

New: in-app update notifications

  • Never miss an update. Writerify now checks for new versions on launch and shows an "Update available" button in the sidebar — one click takes you to the latest download. Install this version once, and you'll be notified automatically from now on.
v2.1.64 May 26, 2026

New: usage analytics on the web

  • Your Analytics, anywhere. The website dashboard now has an Analytics tab that mirrors your desktop stats — total articles, words, informative vs Amazon, success rate, and AI-provider mix — synced automatically from the app. Only the counts are stored; your articles never leave your computer.
v2.1.63 May 26, 2026

New: Writerify for macOS (Apple Silicon & Intel)

  • Mac is here. Writerify now ships a macOS build alongside Windows, with the same account, 7-day trial, and lifetime licenses across both.
  • First launch on a Mac. The app isn't notarized yet, so macOS asks once: right-click the app → Open → Open, or System Settings → Privacy & Security → Open Anyway (or run xattr -cr /Applications/Writerify.app in Terminal). After that it opens normally.
v2.1.62 May 26, 2026

Fixed: signing in to the desktop app

  • Desktop login now works with your website account. A connection-security setting was blocking the desktop app from reaching the login server; it now signs in with the same email + password as the website. Errors also show a clear message instead of a blank box.
v2.1.61 May 26, 2026

New: account dashboard, affiliate program & fair-use trials

  • Affiliate program. Every account now has a referral link and earns 30% lifetime commission on each license a referral buys. Your dashboard tracks signups, paid conversions, and estimated earnings in real time.
  • Redesigned dashboard + sign-in. A cleaner overview (plan, trial countdown, referrals, earnings), Settings to update your name, email, password and profile photo, and a polished sign-in screen.
  • One free trial per device. The 7-day trial is now tied to your computer, so opening new accounts (or switching networks) continues the same trial — keeping it fair for everyone.
v2.1.60 May 26, 2026

Licenses now validate online

  • Always in sync. Your license now checks in periodically so access stays correct across reinstalls and machine changes. It keeps working offline for up to 7 days, and refunded licenses are released automatically.
v2.1.59 May 26, 2026

New: account login on the desktop app (one account, web + desktop)

  • Sign in / sign up now opens when you launch Writerify. Create an account once (name, email, mobile, password) and the same login works on both the website and the desktop app. The website dashboard shows your plan, free-trial countdown, and license key; a log-out button sits in the app's top bar.
  • Non-disruptive to your access. The login is just the entry gate — your existing free trial and license activation still work exactly as before underneath it.
v2.1.58 May 25, 2026

Critical: no more raw CSS code printed at the top of published posts

  • Articles no longer publish with a wall of CSS as the intro. On WordPress sites whose connected user can't post raw HTML (very common — managed hosts, multisite, Editor/Author application passwords, security plugins), WordPress was stripping our styling <style> tag but keeping its text, so the article opened with raw .writerify-product-block{…} code. We no longer ship a page-level style block at all — every product card, table, button and image already carries its own inline styling, so posts look right on every site and role, and that code can never leak again. JSON-LD schema is now added only on sites that accept it (so it can't leak either).
  • The side publish pop-ups are gone. The stack of "Published: …" / "Publish failed: 403…" toasts that piled up on the right during big batches has been removed. Each article's publish outcome now lives where it belongs — in the Library task details.
  • Per-keyword links in task details. Open a batch's task details and every finished keyword shows a clickable green "Live" or amber "Draft" link straight to its post — and any publish failure is shown inline with its reason, so you can see exactly what happened to each article.
v2.1.57 May 23, 2026

Fixed: the same article publishing twice + Library links + featured images

  • No more duplicate posts. If an article auto-published when generation finished and you then published it again from the Library (because you weren't sure it had gone out), WordPress created a second copy at a "…-2" URL. Publishing is now idempotent: once an article has been published to a site, re-publishing it updates the same post instead of creating a new one. A safety lock also blocks a second publish of the same file while the first is still in progress, so the auto + manual race can't slip through. (One-time cleanup: delete any existing "…-2" duplicate on your site — new ones won't appear.)
  • Library now shows the real post URL under each article. Beneath every published article you'll see its actual link — green "Live: yoursite.com/…" or amber "Draft: yoursite.com/…" — clickable to open the post (or draft preview) in one click.
  • Informative articles get a featured image automatically. Like Best · VS · Single articles already did, Informative (and Digital) posts now set the first article image as the WordPress featured image / thumbnail, so your posts no longer publish with an empty featured-image slot.
v2.1.56 May 23, 2026

Fixed: long Best · VS · Single articles failing with a false "Claude timed out"

  • Big affiliate articles no longer get killed mid-write. Best · VS · Single articles are written in one large pass, and a long one (lots of products, a big research prompt) can legitimately take more than the old fixed 8-minute limit — so a perfectly healthy article got cut off and failed with "Claude CLI timed out … appears to have hung", even while another article was generating fine in the same window. Generation now streams the article as it's written and only stops a run if it goes truly silent (no output for several minutes), instead of on a blunt total-time cap. A 15–20 minute article finishes; a genuinely stuck session is still caught quickly.
  • You can now see it actually writing. The Activity log shows live progress (characters written so far) during long generations, so a slow-but-working article no longer looks frozen — directly fixing the "20 minutes and nothing happened" confusion.
v2.1.55 May 23, 2026

Fixed: Amazon article generated but never published (after navigating away)

  • Best · VS · Single articles now auto-publish reliably, even on long generations. When an Amazon article took several minutes to write and you switched pages while it ran, it would finish and land in the Library but never publish — neither live nor as a draft — because the publish target (site + category + status) was held in page memory that resets when the page remounts. The target is now stored in the app's global state, so it's remembered for the whole session no matter where you navigate. A finished article publishes to exactly the site/status you chose, every time.
  • Library Live / Draft links now appear for these too. Because the auto-publish now actually fires, each published Amazon article gets its clickable "Live" (or "Draft") pill in the Library, opening the real post URL in one click.
v2.1.54 May 23, 2026

Critical: generation can no longer hang forever (Claude CLI timeout)

  • Articles that "stuck on Writing… for 20 minutes" are fixed. The Claude Code CLI call had no timeout — if a request stalled (a wedged Claude session, a network hiccup, or the CLI silently retrying an internal rate-limit), the process never returned and the article spun forever with zero feedback. There's now a hard 8-minute ceiling: if the CLI produces no response in that window, Writerify kills the call and fails the job with a clear, actionable message ("Claude CLI timed out — re-login, reduce length, lower parallel workers, or switch provider") so the batch moves on instead of freezing. A heartbeat line is also logged every 60 seconds during long generations so you can see it's still working, not frozen.
v2.1.53 May 23, 2026

Uniform, centered product images in Best · VS · Single articles

  • Every product image now renders at the same size, centered, with its button. Best-list product photos used to appear at wildly different sizes (a tall portrait shot rendered huge, a wide landscape one short) and left-aligned, because the image had no fixed dimensions and the centering lived in a CSS block that WordPress strips for non-admin users. Each product image now sits in a fixed 320 × 300 box, scaled to fit (object-fit: contain), centered with the "Check on Amazon" button directly beneath it — all via inline styles, so it looks identical on every WordPress role and theme and stays fully responsive on mobile.
v2.1.52 May 23, 2026

Image-credit on/off toggle · Free Method enable + provider-dropdown integration

  • Image credit is now optional. Settings → Images has a new "Show image credit line below images" toggle. On (default) keeps the small "Image source: …" attribution under each image; off publishes images with no caption. Applies to Informative, Best · VS · Single, and Digital / SaaS. When off, any attribution the model tried to add is stripped too.
  • Free Method pools now have an Enable toggle — same as the paid providers. Multiple Gemini Free API and Multiple LongCat Free API each get an "Enable" checkbox; connecting keys auto-enables the pool, and you can switch it off without deleting your keys.
  • "Multiple Free Gemini" / "Multiple Free LongCat" now appear in the AI-provider dropdown on every create page (once the pool has validated keys). Pick the free pool to rotate through your free-tier keys, or pick the paid Gemini / LongCat entry to use a single billed key with its full model list — your choice, made explicit. No more guessing whether the pool or the single key is being used.
v2.1.51 May 23, 2026

WordPress images fixed · universal prompt applied to generation · 4 more fixes

  • WordPress images now actually show (informative articles). Body images were saved as local files (images/photo.webp) and referenced by relative path, but the publish step only uploaded remote https:// images — so local ones were left as relative paths that resolved to a non-existent URL on the live site (every image broke). Publishing now reads those local files from disk and uploads them into the WordPress media library, then rewrites the markdown to the WP-hosted URL. Works on any theme.
  • Mushroom/foraging content no longer leaks into Informative articles. The Universal default prompt shipped in v2.1.49, but the GENERATOR was still reading prompts through a path that skipped the auto-upgrade — so users with older saved prompts kept getting mycology-themed output. The migration now runs at generation time too, so every install writes universal, niche-agnostic content. (Also genericised two hard-coded mushroom examples in the formatting rules.)
  • "Code box" paragraphs fixed. In some Amazon articles the product description right after a "1. Product Name" heading rendered inside a monospace, horizontally-scrolling code block. Cause: the model occasionally indents prose 4+ spaces, which Markdown treats as an indented code block. We now dedent accidental indentation across all article types.
  • Review table no longer breaks when ratings are turned off. Unchecking "include ratings" dropped the rating header but still emitted an empty rating cell in each row, so the table columns misaligned and the Buy button floated. The whole rating column is now removed cleanly — header and rows always match.
  • First-generation auto-publish race fixed. The very first batch sometimes finished generating before its publish target was captured, so the article landed in the Library without going live. Capture + publish now happen in one place that re-checks whenever either jobs or the batch queue update — first-run articles publish reliably.
  • Library now shows a clickable Live / Draft link per post. After publishing, each Library row gets a pill — emerald "Live" (opens the published post) or amber "Draft" (opens the draft preview) — so you can jump straight to any post to see how it looks. The URL + status are saved into the article so they persist across restarts.
v2.1.50 May 22, 2026

Double-title fix · affiliate button fix · duplicate-publish (remount) fix

  • Title no longer appears twice on published posts. WordPress (and Next.js) render the post title from the title field as the page heading; the article body ALSO started with its own # Title H1, so the title showed twice. The body's leading H1 is now stripped at publish time — exactly one title, on every site type. Same fix covers the duplicated heading on Best · VS · Single articles.
  • Affiliate "Check on Amazon" button fixed. On posts published by non-admin WordPress users (Editors/Authors and most Application-Password integrations), the button was rendering as raw SVG markup as text, or as a giant empty orange block. Root cause: WordPress's wp_kses sanitizer strips inline <svg> and <style> for any role without the unfiltered_html capability. The button now uses a plain Unicode cart glyph (🛒) plus fully inline styles, so it renders perfectly on every role, theme, and site — no SVG, no dependency on a stripped style block.
  • Duplicate re-publishing — the real root cause — fixed. v2.1.49 reduced it, but the dedup tracker lived in component memory that reset every time you navigated away and back to a create page — so revisiting Informative / Digital re-published every previously-finished article. The "already auto-published" set now lives in the global app state and survives navigation for the whole session, so each article is auto-published exactly once, ever.
v2.1.49 May 22, 2026

Duplicate-publish bug fixed · custom-prompt-only mode · universal default prompt

  • 🔴 Critical: duplicate re-publishing fixed. Every time you generated a new batch, all of your previously-generated articles were silently re-published — so the same posts piled up as duplicates on your site (more each run). Root cause: the auto-publish tracker was reset on each new batch and then re-fired for every finished article in the session. Auto-publish is now scoped per batch and de-duplicated for the whole session — each article publishes exactly once, to its own batch's site. Fixed across Informative, Best · VS · Single, and Digital / SaaS.
  • New "Use only my custom prompt" toggle above the custom-prompt box on every create page. Tick it and Writerify bypasses all 8 built-in prompt steps (persona, classify, entities, TOC, image plan, writing, quality check) and generates the article entirely from your own prompt — for power users who bring a complete prompt system of their own. On Best · VS · Single and Digital / SaaS, your prompt drives the voice/structure while product data, affiliate links, and tables stay intact.
  • New universal default prompt. The built-in prompt set is no longer mushroom/foraging-specific — it's now a niche-agnostic "Universal Long-Form Article Prompt System" that writes high-quality, conversational, E-E-A-T content for ANY topic (kitchen gear, SaaS, finance, home, health, etc.) straight out of the box with zero editing. Existing installs still on the old default are auto-upgraded; anyone who customised their prompt keeps theirs untouched.
v2.1.48 May 21, 2026

Critical persistence fix — Amazon API accounts, generation log & settings now stick

  • 🔴 Critical data-loss bug fixed. The config reader silently dropped four fields on every read — Amazon API accounts, the scraper-backend config (Oxylabs / PA-API), the generation log, and the Free Method multi-key pools. Anything saved to them survived exactly one write, then vanished. This is the true root cause of "I add an Amazon API account but it never saves or shows", Oxylabs / Free Method settings not sticking, and the perpetually-empty Dashboard generation log. All of it persists correctly now.
  • Amazon API Accounts now save & display reliably, with a redesigned card layout: Amazon mark + account name, labeled Country / Tracking ID / Throttle Time / Access Key rows, an eye-toggle to reveal masked credentials, and an Active + Connected status footer.
  • Dashboard "AI provider mix" now reflects reality. Two fixes: (1) the generation log persists again, so the donut uses the accurate per-article provider recorded at generation time; (2) the v2.1.46 "guess the saved default provider" fallback was reverted — it mislabeled users who switched providers (showing "Claude" to people who never used Claude). Unattributable older articles now read as an honest "Unknown" instead of a wrong-but-confident guess. Plus the provider dropdown on every create page now defaults to your first connected provider instead of always Claude — so what you generate with matches what the Dashboard reports.
  • LongCat free-tier 429 "达到使用量上限" (usage-limit) errors handled gracefully — same treatment as Gemini: single-key runs retry the transient window-limit with backoff, and the error message tells you to add multiple Free Method keys, wait for the reset, or switch provider. The Free Method pool fails over between keys instantly.
  • Default URL slug is now "Exact keyword" (was effectively "Auto from title"). Exact-keyword slugs match your target keyword verbatim — the SEO-safest default — instead of inheriting "best / top / most popular" prefixes from the AI title.
v2.1.47 May 21, 2026

7-day trial · mandatory publish target · category-fetch + Gemini-quota fixes

  • Free trial extended from 3 days → 7 days. Every fresh install now gets a full week of Max-tier access — more time to wire up a real site and run a few publish batches before deciding. Updated across the app, license screens, and the whole marketing site.
  • Publish target is now mandatory before generating (when you have at least one site connected). You must pick a site first, then a category, before the Generate button unlocks — on Informative, Best · VS · Single, and Digital / SaaS. This kills the confusing "I generated 5 articles but nothing showed up on my site" case where content silently landed in the Library only because no target was selected. If you have zero sites configured, library-only generation still works.
  • Category fetch hardened — many sites previously showed "No categories available" even when categories existed. Root cause: the fetch only tried the pretty-permalink REST route and silently swallowed every failure. Now it (1) also tries the ?rest_route= form for sites on Plain permalinks, (2) detects auth failures (wrong Application Password) and says so, (3) detects security-plugin/firewall HTML responses, and (4) shows the real, actionable error inline with a Retry button instead of the misleading "no categories" message.
  • Gemini free-tier 429 "quota exceeded" errors handled gracefully. Single-key runs now retry transient per-minute rate-limits with backoff, and when the daily cap is genuinely hit the error message tells you exactly what to do — switch gemini-2.5-pro (near-zero free quota) to gemini-2.5-flash, or add multiple free keys under AI Providers → Free Method for automatic rotation. The Free Method pool fails over between keys instantly without waiting on backoff.
  • Verified: publishing works fully during the free trial — there is no hidden license-tier gate on the publish path. Fresh install → connect a site → publish goes live immediately.
v2.1.46 May 17, 2026

Dashboard "Unknown" provider bucket fixed — uses your saved default instead

  • Old articles no longer show as "Unknown" in the Dashboard's AI provider mix donut. v2.1.45 started stamping provider into new article frontmatter, but older articles (created before the stamp existed) were getting bucketed into a neutral "Unknown" slice — which looked wrong for users who clearly only have one provider connected. The backend now falls back to your saved default provider (same default-resolution chain the generator uses at write time: job.provider ?? settings.provider ?? 'claude') when an article's frontmatter has no explicit provider, so a Claude-only user sees "Claude · 25" instead of "Unknown · 25". Articles with an explicit provider field keep their exact value untouched.
v2.1.45 May 17, 2026

Dashboard counters now reflect reality · completion banners everywhere

  • Dashboard "Generation success ratio" + "AI provider mix" cards now show real numbers. Previously they displayed "0 attempts in range" and "No data yet" placeholders even when 25+ articles existed in the Library, because the renderer was only counting in-app log entries (which empty out on config reset or for articles created before the log was introduced). The Dashboard now falls back to file-derived counts — every article on disk counts as a successful generation, with provider attribution pulled from the article's frontmatter provider field. New articles also stamp provider + model into their frontmatter so the provider donut stays accurate across resets, fresh installs, and library imports.
  • Status-aware completion banners on every generation page. When a batch finishes on the Informative, Best · VS · Single, or Digital / SaaS page, you now see an inline banner at the top of the queue:
    • 🟢 "All 5 published live on Mostexpensiver" — when publish mode was picked
    • 🟡 "All 5 saved as drafts on Mostexpensiver" — when draft mode was picked
    • 🟢 "All 5 articles generated successfully" — when no publish target was picked (files saved to your output folder only)
    • Plus "… · 2 failed to generate" appended when some keywords failed.
    So you no longer have to remember "wait, did I pick draft or publish for this batch?" — the answer is right there on the page where you just submitted the work.
v2.1.44 May 17, 2026

Library publish-as-draft fix · clearer completion messages · tighter UI

  • Library "Publish 5 articles" now actually publishes live. Previously the Library bulk-publish path didn't send a status field to the backend, so WordPress silently defaulted every post to "draft" — which is why the URLs that came back were draft preview links (?p=12297) and the posts never appeared on the live site. Library now has an explicit Publish live / Save as draft segmented control (defaults to Publish live) right above the publish button, and the chosen status is honoured end-to-end.
  • Completion messages now tell you what happened. The Library progress card header changes from a generic "Publish complete" to "All 5 published live on Mostexpensiver" (emerald) or "All 5 saved as drafts on Mostexpensiver" (amber) so there's no guesswork. The Active-tasks panel does the same: instead of "All tasks complete", you see "All 5 published live on Mostexpensiver" or "All 5 saved as drafts on Mostexpensiver" once the batch finishes — so you instantly remember what mode you picked at submit time.
  • Scrape backend dropdown UI fixed on the Best · VS · Single page. The option labels used to spill outside the right-column card on narrower windows ("Auto (recommended) — tries PA-API → Oxylabs → free scraper" was 60+ chars). Labels are now ≤16 characters ("Auto (recommended)", "Amazon PA-API", "Oxylabs", "Free HTML scraper") and the per-option explanation lives in the helper text below the dropdown where it has room to breathe.
v2.1.43 May 17, 2026

7 paid-user reports + site polish — scraper picker, WP category fix, cleaner UI

  • Amazon API accounts now save & display reliably. Added optimistic UI append (the card appears the instant the modal closes, no more "No accounts yet" flash), plus a per-card eye toggle that reveals or masks all three credentials — Access Key, Secret Key, Tracking ID — in one click. Failed saves surface as toast errors instead of silently disappearing.
  • New per-job "Scrape backend" dropdown in the Best · VS · Single page. Pick between Auto (tries PA-API → Oxylabs → free scraper), strict PA-API, strict Oxylabs, or strict free HTML scraper. Strict modes never fall through, so you always know which source produced the data.
  • Oxylabs reliability hardened — single retry on transient network errors and HTTP 5xx, handles every response-shape variant Oxylabs has shipped (organic / pos_organic / products / paid fallback), and parses ASIN / title / rating / price across all field-name aliases. When 0 products are extracted, returns a clear actionable error instead of a misleading silent-empty success.
  • WordPress "I published to Category X but it's not in Category X" — fixed. Root cause was WordPress silently dropping the categories array when the authenticated user lacked the assign_terms capability. We now verify category assignment after every publish, retry the assignment via PATCH if WP dropped it, and surface a clear warning ("post landed in default category, give your WP user the Editor role") when WP still refuses.
  • Stale "Published: …" toast cascade fixed. Earlier the Best tab would re-fire green toasts for already-published files every time the user switched tabs and came back. Now each filename's toast fires at most once per session.
  • Task details moved from floating bottom bar to Library. Big always-visible batch tracker is gone. The new home is a full inspector panel at the top of the Library tab — per-batch progress, expandable per-job list, status icons, error text. The bottom bar is now a tiny "N running · M% — view in Library" pill that auto-hides when idle and is clickable to navigate.
  • Double-publish trap closed. After a queue row finishes auto-publishing, the "Publish to site" button is replaced with a static "Published ✓" badge so accidental second clicks can't re-submit the same file. Manual clicks also guard against the same race.
  • Contact page redesign + mobile header force-fix on writerify.org. Six topic cards (Technical / Refund / Privacy / Security / Press / Billing) replace the long form, eyebrow pulse anchored badge, single support email everywhere. Mobile header now compacts to one tight 32 px announce bar [pulse] [LIFETIME DEAL] with the verbose subtext hidden, header reduces to [Writerify] [theme toggle] [hamburger], and Start Free Trial moves inside the menu.
  • Competitor name mentions removed from the writerify.org features grid and changelog copy. The Multi-account Amazon API card and the v2.1.40 changelog entry no longer name other tools — the feature stands on its own (12 worldwide marketplaces, free HTML scraper fallback, throttle-time per account).
v2.1.42 May 15, 2026

Digital · SaaS page — full feature parity with Generate + Amazon

  • Publish target picker — pick a WordPress or Next.js site, choose a category, and toggle between "Publish — go live immediately" and "Draft — review first". Articles auto-publish to the chosen site the moment each one finishes generating.
  • Bulk keyword textarea — paste many keywords, one per line. Each becomes its own article using the same shared product list. Generate 5 angles on the same SaaS toolkit in a single batch.
  • Model selection dropdown — pick the specific model within your chosen provider (Claude Opus / Sonnet / Haiku, GPT-5 / 5-mini, Gemini 2.5 Pro / Flash, any of OpenRouter's 200+ models, LongCat Flash Chat / Flash Thinking).
  • Slug mode + content length + language — full parity with the Informative and Amazon flows. Slug from AI title / exact keyword / strip-prefix; short → in-depth length tiers; English / Svenska / বাংলা.
  • Sample URL + custom prompt — already shipped in v2.1.41, now alongside everything else paying customers expected.
v2.1.41 May 15, 2026

Digital Products / SaaS Reviews — AppSumo, ClickBank, JVZoo & more

  • New Digital · SaaS section in the sidebar (between Best · VS · Single and Library). Dedicated review-article flow for affiliate marketers running on AppSumo (lifetime deals), Product Hunt, ClickBank, MaxBounty (CPA), JVZoo, PartnerStack, Impact.com, FirstPromoter, and direct vendor referral programs.
  • 5 article formats, each with its own world-class structure designed to convert: Single review, Best-of list, VS comparison, Best alternatives to X, and Quick roundup. The format determines the prompt template, so no two article types ever look the same — different intent, different layout, different schema, no canonical content collisions.
  • Per-product manual input. Paste each product's name, affiliate URL, tagline, category, pricing model, starting price, free-trial info, image URL, and notes. The AI weaves all of it into the article without fabricating anything you didn't supply.
  • Per-network CTA copy + disclosure. AppSumo products get "Get the Lifetime Deal" CTAs; ClickBank gets "Get Instant Access"; SaaS direct referrals get "Try It Free"; etc. Affiliate disclosure language adapts to the network listed.
  • Truthful editorial voice — same hard rules as the Amazon flow: no fake "I tested this for 3 months", no fabricated stats, no competitor blog citations. Authority comes from vendor docs, G2/Capterra/Product Hunt aggregate scores, and named industry research.
  • Plus everything you'd expect: per-keyword queueing into the same sequential queue as other articles, language selection, content-length tiers, optional custom-prompt overrides, sample URL reference for structure mimicry, slug-mode selection, and full WordPress / Next.js publishing through the same auto-publish target you've already configured.
v2.1.40 May 15, 2026

Multi-account Amazon API + throttle time + mobile header polish

  • Multi-account Amazon API. AI Providers page now has an "Amazon API Accounts" section where you add as many accounts as you want — one per niche site / Associate ID. Each account has its own Name, Access Key, Secret Key, Tracking ID, Marketplace, and Throttle Time. Edit / Delete / Enable-toggle per account. 12 marketplaces worldwide. Plus a free HTML scraper fallback so you can ship even before your Associates approval lands.
  • Throttle Time per account. Amazon PA-API rate limits are per-account and scale with your monthly affiliate revenue. Each account now has its own throttle setting (500/1000/2000/3000/5000 ms options) so you can run a high-revenue account fast and a brand-new account slow without one limiting the other.
  • Auto-migration from v2.1.38. If you already configured PA-API on v2.1.38/39, those credentials are auto-migrated into a single Amazon Account on first launch — zero re-entry needed.
  • Mobile header polish on writerify.org. The LIFETIME DEAL announce bar now compacts to a single tight line on phones (the verbose "Pay once, own it forever — no subscription, no renewal" tail hides), the theme toggle moves out of the way under 720px so the brand wordmark doesn't get clipped, and the "Start Free Trial" button shrinks to "Try free" with reduced padding. No more clipped "Writerif☀" on small screens.
v2.1.39 May 15, 2026

Sequential multi-batch queue — submit while running

  • Queue your next batch while one is still running. The Generate page no longer locks after you click Generate. Pick another site or category, paste a new keyword list, and click Generate again — the new batch joins the queue and starts automatically when the current one finishes.
  • Sequential execution. Tasks run one at a time in the order you submitted them. Submit five batches across five categories of the same site and they'll process in turn — keyword set 1 → keyword set 2 → … → keyword set 5 — without overlapping.
  • All queued tasks visible. Each queued batch shows as its own row in the bottom progress strip with a clock icon, "Queue #2" label, and a striped placeholder progress bar that signals "waiting for current batch to finish". The moment a queued batch starts running, its row transitions into the standard live-progress display.
  • Generate button auto-relabels. Says "Generate N articles" when the queue is empty, and "Add to queue · N articles" when there's already something running — so it's always clear what clicking will do.
  • Cancel the current one, keep the rest. The Cancel button now stops only the running batch. The queued batches behind it stay in place and start after the cancel completes.
v2.1.38 May 15, 2026

Free Method, Amazon backends (PA-API + Oxylabs), richer Dashboard

  • Free Method — multi-key pools. New section at the bottom of AI Providers: paste 20–30 Gemini AI Studio keys or 20–30 LongCat developer-console keys, one per line, click Connect APIs. Writerify validates each key, keeps only the working ones, and rotates through them per request. When a key hits its rate-limit, the pool falls back to the next key automatically — effectively unlimited free writing as long as you have free-tier accounts. Available for Gemini AND LongCat.
  • Amazon Product Advertising API (PA-API 5.0). Official Amazon API as a first-class scraper backend. Add Access Key, Secret, Partner Tag, and pick your marketplace (US / UK / DE / FR / IT / ES / IN / CA / AU / JP / BR / MX). Highest data quality, zero rate-limit, no CAPTCHA. Implemented with AWS Signature V4 signing in pure Node — no extra dependencies.
  • Oxylabs Web Scraper API. Alternative paid backend for users without Associates approval. Add your oxylabs.io username + password and we'll route Amazon searches through their realtime endpoint with proxy rotation + parsed JSON output.
  • Scraper backend order. When generating an Amazon article: PA-API → Oxylabs → free HTML scraper, each falling back to the next on failure. So if you have PA-API approval it's used automatically; if you only have Oxylabs that's used; otherwise the free scraper. Three tiers of reliability.
  • Dashboard, expanded. Beyond the three stat hero cards we now show a success-ratio donut, an AI-provider distribution donut, a 14-day publishing trend bar chart, and a dedicated Recent Failures panel listing the keyword + error reason for each failed attempt. Backed by a new generation log that records every keyword attempt (success or failure).
v2.1.37 May 15, 2026

Dashboard, LongCat AI, inline-image fix

  • New Dashboard page. Lives at the top of the Create section. Stat hero cards for Informative count, Best · VS · Single count, total articles + total words. Date-range filter: last 30 days / 90 days / this year / lifetime. Recent activity feed with type-tagged badges. Now the default landing page when you launch the app.
  • LongCat (Meituan) AI provider. New provider option in AI Providers, Generate, and Best · VS · Single. Uses LongCat's OpenAI-compatible endpoint — bring your API key, pick LongCat Flash Chat or LongCat Flash Thinking.
  • Inline image fix on WordPress publish. Body images (from Wikimedia / iNaturalist / Openverse / Pexels / Pixabay / web fallback) now get downloaded and rehosted into your WordPress media library at publish time. Before: external URLs got blocked by hot-link protection and articles rendered with broken-image icons. After: every image is served from your own domain. Featured + body images both go through the same upload path.
  • Coming in v2.1.38: Amazon PA-API integration as an opt-in alternative to HTML scraping. Will need Amazon Associates "Product Advertising API" credentials (Access Key, Secret, Partner Tag, Marketplace). Generate them inside Associates Central → Tools → Product Advertising API.
v2.1.36 May 15, 2026

Session-aware Amazon scraper — fewer 202 / 503 blocks

  • Warm-up + cookie session. Before the search hit, Writerify now GETs amazon.com root to pick up Amazon's session cookies (session-id, ubid-main, etc.), waits like a real shopper would, and then runs the search with those cookies attached. Mirrors a real browse-then-search flow — biggest single block-rate reduction in 2026.
  • Manual in-memory cookie jar. Parses Set-Cookie from each response and attaches Cookie: … on the next attempt within the same search, so retries don't look like a fresh suspicious visitor every time.
  • Always Sec-Fetch-Site: none. Removed the inconsistent cross-site fallback that flagged us as cross-origin nav.
  • Soft-block detection. A 200 status with under 30 KB of HTML is now treated as a stealth block and triggers a retry instead of returning zero products silently.
  • UA stickiness. One user-agent per search call (was rotating per attempt). Amazon's session cookies are bound to the UA they were issued for — rotating UA mid-session invalidated them.
  • Truthfulness preserved. Reviewed a competitor that "never errors" — turns out they silently fabricate fake product names, fake ASINs, and stock-photo placeholder images when Amazon blocks. We will not adopt that. If Amazon blocks, we tell you so you can use Manual ASIN mode instead.
v2.1.35 May 12, 2026

Boot screen retired, Amazon scraper hardened

  • App now boots straight into the main UI — the old Claude-CLI-centric "Checking your setup..." overlay is gone.
  • Amazon scraper handles HTTP 202 anti-bot holding pattern: 5 retries, exponential backoff (~8s → 60s), mobile-UA fallback, rotating Referer.
  • Fixed "unacceptable kind of an object to dump" YAML crash on Amazon articles with partial product metadata.
v2.1.34 May 9, 2026

3-day Max-tier free trial

  • Every fresh install auto-issues a 3-day Max-tier free trial. Unlimited sites, scheduling, bulk publish — every feature unlocked. No card required.
  • TopBar shows a live "TRIAL · Xd left" badge during the trial.
  • Trial-expired state gets its own friendly "Free trial ended" gate with an "Upgrade now" CTA.
v2.1.32 May 9, 2026

Unified icons, readable tier badge, duplicate-keyword guard

  • Single gradient mark across Windows taskbar / title bar / installer / favicon / sidebar.
  • Plan tier badge in the TopBar is now solid gradient + white text (was nearly invisible).
  • Pre-flight duplicate-keyword check before every batch — inline amber warning with click-to-open links to the conflicting articles, auto-skip toggle.
v2.1.30 April 30, 2026

Muslim-ethics editorial voice + UX polish

  • Hard ban on fabricated personal-use claims ("I tested", "I bought"). Every authority statement now sources from manufacturer specs, aggregate reviews, named standards bodies, or peer-reviewed research.
  • Image source credit is plain text only — never a clickable outbound URL.
  • Long-paragraph auto-splitter: any paragraph over 4 sentences gets force-broken into multi-paragraph blocks.
v2.1.27 April 26, 2026

Full licensing system

  • 3-tier paid plan (Starter $49, Growth $99, Max $199 per year).
  • Hardware-bound activation — one license = one PC, with one-click "move to a new computer".
  • Reference license server (Node.js + SQLite) shipped in license-server/ for self-hosting.
  • Offline-key activation mode for manual customer onboarding before the production server is live.
v2.1.26 April 26, 2026

Stock photos + web fallback + YouTube embeds

  • Pexels + Pixabay stock-photo fallback when CC sources can't fill the per-article image quota.
  • DuckDuckGo web-image last-resort fallback (with source credit).
  • Auto-search YouTube for the keyword and embed 1–3 relevant videos with responsive 16:9 iframes (GDPR-safe via youtube-nocookie).
  • Image quota cap bumped 8 → 10.
v2.1.25 April 26, 2026

Entity-rich SEO + GEO/AIEO + JSON-LD schema

  • Every article enforces canonical entity-first phrasing, knowledge-graph triples, definitional clarity, numeric specificity, and answer-first paragraphs.
  • BlogPosting + FAQPage + Review + ItemList JSON-LD schemas auto-injected at publish time. Star ratings in SERPs, FAQ rich snippets, AI Overview citation eligibility.
v2.1.22 April 9, 2026

OpenRouter integration (200+ models)

  • OpenRouter (unified multi-model gateway) added as a 4th AI provider alongside Claude / OpenAI / Gemini.
  • Live model catalogue fetched from openrouter.ai/api/v1/models — Anthropic Claude, OpenAI GPT-5, Google Gemini, Meta Llama, DeepSeek, xAI Grok, Mistral, and 200+ more.
v2.1.0 April 2026

Initial public release

  • Desktop AI content studio with the 7-step generation pipeline.
  • Best-list, Single, VS, Quick-list Amazon affiliate flows.
  • WordPress + Next.js publishing with auto featured-image upload and category support.
  • Schedule, bulk publish, retry failed keywords.