What's new on KeyAway

Last updated: November 7, 2026

Release notes for major features, improvements, and fixes shipped to KeyAway.

Platform release history

Catalog activity feed →

October 2026

  1. ·PR #139

    feat(admin): richer analytics, key reports and promotion tracking with lower request costs

    featfixuiperfapidocs

    The analytics, ads, key reports and comments pages in the admin are rebuilt to show more at a glance and to update in place. Promotions now show which campaign is running and how well it converts. The public site also makes far fewer requests per visit, which lowers hosting costs, and pages no longer hang if a database connection dies.

    Highlights

    • Admin analytics now splits visitors, page views and actions into colored stacked charts with a table view.
    • Key reports show key versions, suggest status changes and support bulk edits without reloading.
    • Promotion tracking shows the running campaign and its conversion rate.
    • Public pages make about half as many requests on a first visit.
    • Admin comments have a cleaner, more compact layout.
    • Pages now fail cleanly instead of hanging if a database connection dies.

    Analytics

    • Activity is now a full-width section with stacked columns for visitors by tier, page views by page type, and actions by type.
    • A totals panel doubles as the legend, and clicking a row hides that series.
    • A Table view shows every value per period.
    • A new Promotions section shows clicks by placement, top pages, the running campaign and its conversion rate.
    • Promotion clicks now have their own row in actions and no longer appear under social engagement.
    • Promotion clicks are saved with their campaign, so overlapping campaigns can be told apart.

    Ads

    • The ad trend chart shows its values and axis without hovering, and hovering adds each day's details.
    • The page tabs no longer show a vertical scrollbar.
    • Side ads sit lower while a promotion banner is showing, so they no longer overlap it.

    Key reports

    • The page has summary tiles, search, filters for keys needing review or on older versions, and more ways to sort.
    • Key status can be changed directly on each row, or for many keys at once from a bulk bar.
    • A suggestion appears when reports disagree with a key's status, and it can be applied in one click.
    • The details view shows the key's version, the latest official version, versions visitors tried, and top countries.
    • Reports can be filtered, selected and changed in bulk there, and only the changed rows update, so the view stays where it is.
    • Correcting a report keeps its original date.

    Comments and details views

    • Comments are a compact list with author, tier, program and time on one line.
    • Comment threads mark the opened comment and indent replies.
    • Admin details views have a slimmer header and footer, and their subtitle color is fixed.
    • Deleting a comment or flagging a visitor no longer reloads the page.

    Site

    • Links now prefetch on hover or focus instead of as soon as they appear on screen.
    • Speed Insights has been removed.
    • Colors with transparency, hover states, focus rings and gradients that were not rendering now work across the site.
    • The 404 page has proper spacing below the promotion banner.
  2. ·PR #138

    feat: scheduled site promotions and halloween giveaway

    featuiapidocs

    Giveaways and sales can now run on a schedule from the Studio. A promotion shows a banner on every page, a card on program pages, a pinned bell notification and a small homepage badge, then disappears on its own when it ends. The first one is the Halloween giveaway for reaching 1,000 members.

    Highlights

    • Scheduled promotions can appear across the site and end automatically, with no redeploy.
    • Each campaign's dates, text, theme, button and images are edited in the Studio.
    • Presets for Halloween, Christmas and Black Friday make campaigns easy to repeat.
    • The first promotion is the 1,000 members Halloween giveaway.

    Promotions

    • A themed banner appears under the header on every public page.
    • Program pages swap the Facebook group card for a campaign card, with a per-program title on selected programs.
    • The notification bell gets a pinned row and custom popup text.
    • The homepage hero image gets a small campaign badge.
    • Any placement can be turned off by leaving its text blank.
    • A mascot image can float beside the campaign button, with a different one for the banner.

    Studio

    • Promotions has its own item in the Studio's main list.
    • New promotions can start from a Halloween, Christmas or Black Friday preset.

    Docs

    • A new promotions guide covers running a campaign, its placements and click tracking.
  3. ·PR #137

    feat: more version sources and program page tweaks

    featuidocsenhance

    Version tracking now covers more programs: it can read versions from Mac installers and zipped Windows installers, and look programs up on FilePuma. Program pages show the official PRO offer before the free vs PRO comparison, with tighter text spacing.

    Highlights

    • Mac .pkg installers and zipped Windows installers can now be used to track official versions.
    • FilePuma is a new version source for programs without a usable vendor installer.
    • On program pages, the official PRO offer now comes before the free vs PRO comparison.
    • Paragraphs in program descriptions and feature points have tighter spacing.

    Versions

    • The installer source reads the app version from a Mac .pkg within its first megabyte.
    • Zipped downloads (up to 40 MB) are opened and the version is read from the installer inside.
    • FilePuma lookups match the program's exact name, show close matches when it is not found, and wait 5 seconds between requests.
    • FilePuma can be chosen in the program editor's version tracking card and appears in the Versions tab.

    Program pages

    • The affiliate PRO call-to-action is shown above the free vs PRO comparison table.
    • Rich-text paragraphs and about-section points no longer add extra vertical spacing.

    Docs

    • README and the program-management guide list FilePuma and the .pkg / .zip installer support.
  4. ·PR #135

    feat(admin): program editor, vendors, versions and prefill

    featuiapidocsenhance

    Admin can edit programs and vendors in a full tabbed editor, pull draft content from vendor pages and press kits, and track official versions from installers or catalogs. Public pages stay clearer about how keys are found and that versions are checked daily.

    Highlights

    • Programs and vendors are edited in a tabbed admin panel with search, filters and URL-backed open state.
    • Rich text is edited as Markdown and saved without losing Portable Text formatting.
    • Official versions can be read from vendor installers, product pages or package catalogs, with a daily check job.
    • New programs can be prefilled from scraped pages, press kits and installers, or from Claude Code commands.
    • /how-it-works now mentions the daily giveaway scan and version checks.

    Admin

    • The programs page is a filterable table with show-more steps, working-key expansion and vendors/versions tabs.
    • The program editor covers basics, content, keys, media, SEO, version tracking and optimistic saves with revision checks.
    • Vendors can be created, edited and deleted from the same page once no program still uses them.
    • Shared field rules validate the merged document on the client and on the API before write.

    Versions

    • Installer files are probed over HTTP Range for an embedded version and Last-Modified date.
    • Page, winget, Chocolatey and Homebrew sources cover vendors without a usable full installer.
    • Admins can run one check now, test unsaved settings, or find an installer link on a product page.
    • Auto-apply can update latestOfficialVersion when a newer release is found.

    Prefill

    • Admin scrape collects page metadata, FAQs, download links, press-kit text and screenshots, plus installer version when available.
    • Apply imports selected images into Sanity and fills only empty or chosen fields.
    • /prefill-program and /prefill-vendor Claude skills produce paste-ready JSON for the same dialog.

    Docs

    • New program-management guide covers the editor, vendors, version checks and prefill.
    • README, key-status and visitor docs match the current stack (including Supabase analytics).
  5. ·PR #134

    feat(ads): collapse empty ad slots, side rails and an admin ads page

    featfixuiapi

    Ads on KeyAway now load more reliably and stay out of the way when they can't show. Empty ad spaces close up instead of leaving gaps, wide screens get side ads that never touch the content, and a few more pages carry a single ad. A new admin page shows how each ad placement performs, page by page.

    Highlights

    • Ad spaces that can't show an ad (for example with an ad blocker) now close up instead of leaving an empty gap
    • Ads that were failing to load now display correctly
    • Side ads on very wide screens on program pages and All programs, outside the main content
    • One ad each on Updates, Changelog, How it works and the not-found page
    • New admin Ads page with performance per page and per placement

    Ads

    • Grid ad cards disappear cleanly and the grid closes up when no ad is available
    • A clearly labeled sponsored link under related programs

    Admin

    • Overview with a daily trend, a list of pages and a ranking of top placements by views, clicks, click rate or fill rate
    • Each page gets a snapshot of its ad placements in page order, with their share of views and a daily trend
    • Program and vendor pages also list their busiest individual pages
  6. ·PR #132

    feat(ads): labeled ads, privacy choices and policy updates

    featuiperfapidocs

    KeyAway now shows a small number of clearly labeled ads to help cover hosting and keep the site free. Ads sit in the normal page flow, load as you scroll, and never stand between you and a key. Visitors in the EEA, UK and Switzerland are asked first, and everyone can change their choice at any time.

    Highlights

    • Labeled ads on the homepage, all programs, vendor pages and program pages, blended into the existing sections
    • New "Your privacy choices" link in the footer to accept or reject advertising cookies at any time
    • Visitors in the EEA, UK and Switzerland see ads only after they accept; a browser Global Privacy Control signal is treated as an opt-out
    • All programs now shows 13 programs per page, and the homepage shows 9 popular programs
    • No content ever requires clicking an ad

    Ads

    • Banners resize to fit desktop, tablet and phone
    • Program grids include an occasional ad card styled like a program card
    • Ads load only as they come into view, so pages stay fast

    Program pages

    • Slightly tighter spacing between the activation, about, related programs and discussion sections

    Policies

    • Privacy Policy explains advertising cookies, your choices, what visit information we record and how long we keep it
    • Terms of Service and Affiliate Disclosure now cover advertising
  7. ·PR #131

    feat(admin): dark mode, analytics overview and filterable list pages

    featuienhanceapi

    A refresh of the admin dashboard: an optional dark mode, a redesigned analytics overview, and cleaner list pages with filters, search and paging so finished items stay out of the way. The public site looks exactly the same.

    Highlights

    • Admin dark mode with a light/dark toggle, remembered per browser
    • Analytics overview rebuilt: compact stat tiles with sparklines, an activity-over-time chart and an actions breakdown
    • Key suggestions and messages open on what still needs attention; added, rejected, replied and archived items move behind filters
    • Comments can be filtered by program, type and flagged visitors
    • Sessions can be searched by visitor id, location, page or referrer

    Analytics

    • Stat tiles for visitors, page views, actions and countries, each with a ratio or top item
    • Activity chart with visitors / page views / actions tabs and a hover tooltip, bucketed by hour, day or week
    • Actions breakdown with share of actions and rate per 100 page views
    • Recent activity rows are more compact, with location, page and referrer on one line

    Lists

    • Key suggestions, messages and comments share one layout: search, filter dropdowns with counts, compact rows and 25 per page
    • Program dropdown on suggestions and comments
    • Giveaway finds sort by program, source, date found and date scanned; program titles link to the public page

    Dark mode

    • Covers every admin page, table, modal and badge
    • Dropdown option lists follow the active theme instead of the public site's colors
  8. ·PR #129

    perf(comments): load comment reactions and ownership from one cached request

    perfapienhance

    Program pages load comment reactions and your own comment controls with a single cached request instead of two live lookups, and skip it entirely on programs without comments. Pages do less work per visit, and reactions and new comments still show up right away.

    Highlights

    • Comment reactions and "your comment" controls load in one request instead of two
    • Programs without comments no longer make any comment requests
    • Comment data is cached per program and refreshed instantly after a new comment, edit or reaction
  9. ·PR #128

    feat(analytics): move analytics and key reports to Supabase

    featperfapifixenhance

    Moves site analytics (visits, page events, visitor tiers and key reports) to a dedicated database built for high-volume writes, while all program and store content stays where it was. Tracking is faster and lighter, key report bars on program pages load from a cached endpoint, and duplicate records left over from older archiving are cleaned up, so totals and community ratings now reflect real numbers.

    Highlights

    • Analytics, visitor tiers and key reports now live in a dedicated Postgres database
    • Each tracked visit is a single database write instead of several round trips
    • Key report bars on program pages load from a cached API endpoint
    • Duplicate sessions and key reports from older archiving are removed, so report totals and ratings are accurate
    • Full analytics history carried over, with every record verified after import

    Program pages

    • Community ratings now count every "limit reached" report, including archived ones
    • Share counts and ratings fall back gracefully if analytics are briefly unavailable

    Admin

    • Sessions, analytics summary, visitor tiers and key reports read from the new database with server-side aggregation
    • New "Analytics database" card shows storage use and row growth per table
    • Key report editing and visitor spam flags work on a single record id
    • Removed the three bundling cron jobs that are no longer needed
  10. ·PR #127

    feat: find new giveaway keys for existing programs

    feat

    New giveaway keys for programs already on KeyAway are now found automatically. A daily scan checks the giveaway sources and lists what it finds in a new admin page, where each find can be added to its program in one step or ignored.

    Highlights

    • A daily scan looks for new giveaway keys, accounts and giveaway links for every program on KeyAway.
    • New finds appear on a new Giveaway Finds page in the admin, with a badge in the admin menu.
    • A find can be added to its program from a prefilled form, so a new key can go live in a few clicks.
    • Keys that already reached their activation limit, keys that don't work, and expired giveaway links can be ignored so they never come back.

    Admin

    • Giveaway Finds page with filters for status, source and match, plus a "Run scan now" button.
    • Each find shows the program, the giveaway page, the keys or links found, the version, and the end date when the page has one.
    • Keys already on the program are shown as known. Only new keys are highlighted.
    • "Add to program" opens a form prefilled for the program's activation type (key, account or links), which can be edited before saving.
    • Giveaways that have ended are dismissed automatically.
    • A watch-page list shows which pages are checked daily and flags pages that stopped working.

    Studio

    • Programs have a "Giveaway discovery" section for other names giveaway sites use for the program.
    • Vendors have aliases for other spellings of the vendor name.
  11. ·PR #126

    perf: lower hosting and database usage

    perffix

    Hosting and database usage stay lower as traffic grows. The programs page is served from cache, idle visitors are archived within hours instead of a day, and finding a returning visitor no longer reads the whole archive.

    Highlights

    • The programs page is served from cache instead of being rebuilt on every visit.
    • Idle visitors are archived after 3 hours instead of a full day, so far fewer records stay live.
    • Returning visitors are found in the archive without reading all of it.
    • Vercel Web Analytics is off. The site's own tracking already records page views.

    Programs

    • Search, filters, sorting and paging update in the browser without reloading the page from the server.
    • Links to a filtered list, such as a category on a program page, still open with that filter applied.

    Analytics

    • Visitors who contribute before their first recorded page view are now archived like everyone else.
    • Visitors restored from the archive keep their country and city.

    Admin

    • The cron status card shows the new hourly visitor bundling schedule.

For day-to-day listings and key drops, see Updates.