What's New

Every new feature, improvement, and fix we ship. Sonar gets better for indie developers every week.

  1. New

    Try the API and MCP server with no account at all

    You can now try Sonar's data without signing up — no account, no API key, no card:

    • Free anonymous endpoints — app search, app lookup, ASO score, keyword extraction, and keyword suggestions work with no Authorization header at all (shared allowance of 30 requests/day per IP).
    • A taste of keyword metrics — difficulty + popularity for up to 5 keywords/day per IP, so you can see the numbers that matter before paying anything.
    • Works everywhere — the free tier lives in the API itself, so it works from curl, the MCP server in Claude Desktop/Claude Code/Cursor, and any agent framework. Install @sonarapp/mcp with no key and ask your agent about ASO.

    When you hit the free limit, the error tells you exactly how to continue: signing up is free and comes with 50 API credits, and the Full plan includes 1,000 requests/day plus rank tracking, competitor analysis, and the rest of Sonar.

  2. New

    Hosted MCP endpoint — connect AI agents with zero install

    Until now, connecting an AI agent to Sonar meant running the @sonarapp/mcp npm package locally. That works great in Claude Code or Cursor — but web-based clients like claude.ai remote integrations can't spawn local processes.

    The same 32-tool MCP server is now hosted at https://trysonar.app/mcp (streamable HTTP). Point any MCP client at it and authenticate with your existing API key as a bearer token:

    claude mcp add --transport http sonar https://trysonar.app/mcp --header "Authorization: Bearer aso_..."

    Keyword research, rank tracking, review mining, competitor gap analysis, and workspace management — same tools, same plans and scopes as the API, nothing to install or update. The npm package keeps working exactly as before; use whichever fits your client. Setup details in the MCP docs.

  3. Improved

    A faster free snapshot and a smarter demo

    A round of improvements to the "see it with your app" experience for everyone exploring Sonar before starting a trial:

    • The free snapshot loads roughly twice as fast. We cut the number of store round-trips needed to compute your ASO score, keyword metrics, and live ranks — the report now streams in noticeably sooner.
    • Sonar remembers your app. Once you've picked your app, the demo greets you with it — its icon, a personalized banner, and a one-click path back to your snapshot. This now survives cleared browser data and works across devices.
    • One search, everywhere it matters. The find-your-app search now lives directly in the demo banner and shows up wherever you might want it, so getting to your own numbers is never more than a click away.
    • Demo checklist fixes — the progress count now matches the list, every step is clickable, and there's a new "Read review insights" step.
    • Visual polish — consistent brand coloring across badges and alerts, straighter cards, and better-aligned report tips.
  4. New

    Free app snapshot before you start a trial

    Exploring Sonar with demo data is fine, but nothing beats seeing your own app's numbers. Before starting a trial you can now:

    • Find your app right from the demo dashboard — a search box sits at the top of the page (App Store or Google Play), no wizard to click through.
    • Get a free snapshot — your live ASO score with the two biggest things holding your listing back, plus the top keywords from your metadata with real popularity, difficulty, and your current rank in the store.
    • See what's behind the trial — the rest of your extracted keywords, rank history, and competitor gaps unlock the moment you start the 7-day trial, and the app you picked is tracked automatically after checkout.
  5. Improved

    Low-volume popularity estimate now in the API, CLI & MCP

    Last week the dashboard started showing Sonar's own estimate next to Apple's floored Search Popularity, so long-tail iOS keywords stuck at 5 could finally be told apart. Now the same signal flows through every programmatic surface.

    • New popularity_proxy field — keyword responses from GET /keywords/metrics, GET /keywords/search, GET /apps/:id/keywords, and GET /competitors/:id/keywords now include popularity_proxy. It's set only when Apple censors an iOS keyword's real popularity to its floor (5); otherwise it's null. The CLI table renders it inline as 5 (58), and the MCP tools pass it straight through.
    • Every floored keyword gets an estimate — when a lookup returns a censored 5 that doesn't have an estimate stored yet, Sonar now computes and saves one in the background, so repeat calls return the fuller picture.
  6. New

    Screenshot Studio: design store screenshots in Sonar — plus a free public generator

    Your keyword research tells you what to say — Screenshot Studio is where you say it. Sonar now includes a full design workspace for store screenshots, built for shipping listings, not just drawing pictures:

    • A real canvas editor — layers, undo/redo, zoom and pan, snap guides, keyboard shortcuts, inline text editing. Text, shapes, images, and realistic vector device frames (iPhone with Dynamic Island, Android, tablets) with flat and 3D-tilted presets.
    • 18 starter templates — single-feature heroes, panoramic sets, caption-first layouts, and full 5-shot store-ready sets, all with live previews for your exact device size. Every canvas matches App Store Connect and Play Console pixel requirements, so exports upload without resizing.
    • One-paste localization — the source design owns the layout; each locale only overrides text and captures. Add a language, paste all its translated captions in one go, and export a ZIP with one folder per locale.
    • AI images — generate brand-aware background and hero artwork right on the canvas, seeded from your app's store listing and brand color.
    • Duplicate across devices — clone a finished set to another device size in one click; positions, fonts, and translations scale along.
    • Built for AI agents — the full studio is scriptable via the REST API and 11 new MCP tools, so Claude Code (or any agent) can design, localize, and export your screenshot sets end to end. Everything an agent creates appears instantly in the dashboard for human review.

    And because everyone needs store screenshots — not just subscribers — we made a free public version: the same editor, no account, no watermark, running entirely in your browser. Nothing you design there is uploaded or stored; saving sets, AI images, and agent access are what the paid plan adds.

  7. New

    Re-run discovery for new markets on demand

    Discovery used to run automatically and then top up on a schedule — which meant a market you just added could wait a while before its own ideas showed up.

    • "Discover keywords" button — sitting next to Add Keywords on the Keywords page, it opens a market picker so you can choose exactly where to research — including a country you don't track yet, to scout a new locale before committing to it.
    • Live progress — after you start, the dialog shows the run happening: a counter of new keywords found ticks up and the Discovered tab fills in. Close it whenever you like — discovery keeps running in the background.
  8. NewImproved

    Keyword ideas: discovery goes wide

    Keyword discovery used to stop at what your app already ranks for. Now it also finds what you should rank for:

    • Keyword ideas — a new section on the Discovered tab with high-potential keywords surfaced by AI research and store autocomplete: user intents, problem phrases, audience niches, and long-tail qualifiers your app doesn't rank for yet. Every idea arrives with verified popularity and difficulty, and nothing is tracked (or counts against your daily refresh) until you promote it.
    • Opportunity score — a 0-100 score combining demand and competition, with a boost for keywords you already rank 4-30 for (where a metadata push pays off most). It's the default sort for ideas and gaps, and a sortable column across the Discovered tab.
    • Deeper, AI-led research — discovery now leads with AI that studies your app's listing and your competitors' to generate up to 500 candidates per app, then uses store autocomplete to confirm the ones real users actually type. Ideas are filtered for genuine relevance to your app — not just word overlap — so you get "link in bio" and "mobile website builder", not "shake shack". Results keep streaming in over the following hours as the research queue works through the backlog.
    • Instant results from shared research — keywords already measured recently are resolved instantly instead of re-scraped, so discovery gets faster as Sonar's keyword corpus grows.
  9. Improved

    Sharper popularity for low-volume keywords

    Apple only reports Search Popularity down to a floor — below that, every keyword comes back as the same minimum value. For long-tail terms that meant a whole column reading the same low number, with no way to tell a near-miss from a truly dead keyword.

    • Two numbers, one honest picture — where Apple reports the floor, the popularity cell now shows Apple's value with Sonar's own estimate in brackets next to it (for example 5 (58)). The first number is Apple's real measurement for comparing across keywords; the bracketed number adds resolution within that low band. A tooltip explains both.
    • Meaningful sorting — when you sort by Popularity, floored keywords are ordered among themselves by that finer estimate instead of collapsing into one big tie — while always staying below the keywords Apple actually measured as more popular.
    • Nothing changes for measured keywords — keywords Apple reports above the floor, and all Android keywords, look exactly as before.
  10. Improved

    Consistent \"Rank\" terminology across the app

    The same number — where your app sits in the search results for a keyword — was labeled "Position" in some places and "Rank" in others. It's now "Rank" everywhere:

    • Keyword, discovered-keywords, and matrix tables: the Position column is now Rank, and the filter reads All ranks.
    • The keyword detail chart is titled Rank, and the Rankings trend chart describes itself as average rank.
    • Alert thresholds now read "drops/climbs at least 5 ranks".
  11. NewImproved

    Research projects: both stores + push keywords to your apps

    Research projects got two big upgrades:

    • Both-stores projects — When creating a project you can now pick iOS, Android, or Both (the toggle now shows the store logos, too). In a both-stores project every keyword you add gets popularity and difficulty computed separately for the App Store and Google Play, with a Store column and filter to compare side by side. The Discover tab and "Seed from app" get a store toggle so you can pull ideas from either store into the same project.
    • Add keywords to your apps — Every keyword row now has a checkbox. Select the winners and hit "Add to app" to start tracking them for one of your apps — the picker only offers apps on the matching store, so iOS keywords can't accidentally land on your Android app (and vice versa).

    Also fixed: switching between research projects now updates the project name and icon at the top of the page immediately.

  12. NewImproved

    Revenue estimates now show their confidence

    Revenue estimation from public store signals is inherently uncertain — and how uncertain depends a lot on the app. A subscription app with a public install count and named IAP tiers is far more estimable than a free game with no pricing data. The estimate now tells you which case you're looking at:

    • Confidence badge — the Revenue page shows a High / Medium / Low grade next to every estimate. Hover it to see exactly why: which inputs were solid (public install counts, top-grossing chart position, named subscription tiers) and which were guesses (review-derived installs, missing IAP data, unknown release date).
    • Games are graded honestly — per-user revenue in games spans orders of magnitude depending on geography and monetization strategy, which public listings don't reveal. Game estimates are now marked low confidence until our games model is calibrated against verified revenue.
    • In the API tooGET /api/v1/apps/revenue responses include confidence and confidence_factors, the CLI prints them with sonar revenue, and the MCP tool passes them to your AI agents so they never quote an estimate without its uncertainty.
  13. Improved

    Snappier charts, sheets, and progress bars

    A motion polish pass across the whole app:

    • Charts render instantly — the dashboard visibility chart and keyword history charts no longer replay a 1.5-second line-draw animation every time you visit. Your data just appears.
    • Faster keyword detail sheet — the slide-in panel now opens in 300ms with an iOS-style easing curve instead of the old, slower fade-and-slide. Small change, but you open it dozens of times a day.
    • Reduced motion, respected everywhere — the difficulty gauge count-up and remaining pulse effects now honor your system's reduced-motion preference.
    • Smoother progress bars — usage meters and sliders animate on the GPU, so they stay fluid even when the page is busy.
  14. Improved

    Far more accurate Android popularity scores

    Android popularity scores just got a major accuracy upgrade. We calibrated the estimator against real Apple Search Popularity for a benchmark keyword set spanning brands, utilities, niches, and concept terms — average error dropped by ~30% and rank ordering improved sharply.

    What changed under the hood:

    • Play autocomplete demand is now the primary signal. We measure how few typed characters it takes for a keyword to surface in Google Play's own search suggestions — a direct reflection of what people actually type into Play search. Brands surface after 1–3 characters; terms nobody searches surface late or never.
    • Big incumbent apps no longer inflate dead keywords. Previously, a keyword like "circadian rhythm" scored ~29 because huge sleep apps rank for it — even though almost nobody types it into an app store. Keywords absent from Play autocomplete are now floored regardless of how large the apps ranking for them are, so popularity means search demand, not market size.
    • Applies everywhere — daily rank tracking, keyword refreshes, newly added keywords, and the public API all use the new scoring. Tracked keywords pick up recalibrated values with their next daily refresh.

    Expect popularity to drop for broad concept keywords (that's the correction working) and stay stable for genuine app-intent terms like "sleep tracker" or "habit tracker".

  15. New

    Starred keywords: mark your targets

    Keyword research produces long lists — but only a handful of terms are the ones you actually decide to go after. You can now mark those:

    • Star any tracked keyword — hover a row on the Keywords or Rankings page and click the star. Starred keywords keep a visible amber star so your targets stand out at a glance.
    • "Starred" filter — one click in the filter bar narrows the table to just your target keywords. The filter is remembered between visits, so you can live in your target view.
    • Works everywhere — starring on the product (cross-store) view marks the keyword on both iOS and Android. CSV/JSON exports include a Starred column.
    • API, CLI, and MCP supportPATCH /api/v1/tracked-keywords/:id with { "starred": true }, sonar keywords star/unstar in the CLI, and a new sonar_star_keyword MCP tool so your AI agents can manage targets too.
  16. New

    VAT numbers on invoices: reverse charge for EU businesses

    Sonar invoices are now fully business-ready:

    • Add your VAT number at checkout — tick "I'm purchasing as a business" and enter your VAT ID. It's validated against VIES and printed on every invoice.
    • Or add it any time from Settings — open Settings → Plan → Manage Subscription → Billing information to add or update your company's VAT number for future invoices.
    • Automatic reverse charge for EU businesses — customers with a valid EU VAT ID outside Slovakia get invoices with 0% VAT and the required "Reverse charge" note, so your accountant can book them correctly.
    • Our VAT ID on every invoice — Sonar's own tax identification now appears on all invoices and receipts.
  17. NewImproved

    Dashboard visibility chart: rank distribution over time

    Average rank is a misleading progress metric: start tracking harder keywords and your "average" gets worse even while your actual visibility grows. The dashboard now shows the honest picture:

    • Rank distribution trend — the dashboard's hero chart is now a stacked area of how many keywords rank Top 3, 4–10, 11–30, 31–100, and 100+ each day over the last 30 days. The stack's total height is your ranked-keyword count — a number that only grows when visibility genuinely improves.
    • Popularity distribution — flip the chart to Distribution view to see your ranked keywords split by popularity bucket, compared against 30 days ago with per-bucket growth. Watch yourself break into higher-volume terms over time.
    • Starred filter — one click scopes both views to just your starred target keywords, so the chart tracks the strategy you actually decided to pursue.
    • "Ranked" stat card — the Avg Rank stat was replaced by your ranked-keyword count with a 7-day delta, for the same reason.

    Thanks to Antony for the sharp feedback that shaped this one.

  18. Fixed

    Billing fix: declined cards can no longer create a duplicate subscription

    Two fixes to the trial-to-paid conversion flow:

    • "End trial now" is atomic — if your card is declined when converting early, nothing changes: your trial keeps its remaining days, no invoice is created, and you can simply update your card and try again. Previously a decline could leave the subscription in a failed-payment state that kept retrying the old card.
    • Re-subscribing cleans up after a failed attempt — if a trial-end charge fails and you later subscribe again with a different card, the failed prior attempt is now cancelled and its unpaid invoice voided automatically. You'll never see a leftover "payment failed" subscription in the billing portal next to your active one, and there's no way the old card can be charged later.
  19. Improved

    Faster keyword research API and an instant landing page

    A performance pass on the hottest paths:

    • Bulk keyword lookups got much faster on cold data/api/v1/keywords/search and /api/v1/keywords/metrics (and the matching CLI/MCP tools) now resolve Apple Search Popularity for the whole request in a single batched call instead of one call per keyword. A bulk request for 25 uncached iOS keywords previously stacked up to 25 sequential Apple round-trips; it now makes one. Cached lookups were already fast and are unchanged.
    • Leaner response path — the database writes that cache freshly computed keyword metrics are now batched too, so fresh-compute responses flush sooner and burn less compute per request.
    • Instant landing page — trysonar.app is now served as a static page from the CDN instead of being rendered on every visit. Time-to-first-byte dropped from a full server render to single-digit milliseconds.
  20. Fixed

    Rank tracking fixed for apps added via the API

    If you added an iOS app through the API (or MCP/CLI) using its numeric App Store ID — like 6476565689 instead of the bundle ID — its keyword positions showed up in keyword SERP data but never in the app's own rank history, so the dashboard showed "Your Rank: --" forever.

    That's fixed:

    • Numeric IDs are now normalized — whatever ID form you pass when adding an app or competitor (numeric App Store ID, bundle ID, or store URL), it's resolved to the canonical ID internally, so rank tracking always matches.
    • Existing apps repaired — every affected app has been migrated automatically. No action needed on your side.
    • History backfilled — past top-10 positions were reconstructed from stored SERP snapshots, so your rank charts show history from the day the keyword was first tracked, not from today.
  21. ImprovedFixed

    Find your app before you start your trial

    If you signed up but hadn't started your trial yet, searching for your app in the Add your app wizard silently showed "No results found" — even for apps that are very much on the stores. That's fixed, and the whole flow got smarter:

    • Search works in demo mode — look up your app by name or store URL while you're still exploring the demo, no card required.
    • Pick your app, then start your trial — selecting your app shows it (icon, name, rating) with a one-click path to start your free trial, and the trial page pictures your app in the #1 spot it's there to win.
    • Zero re-work after checkout — the app you picked is added to your dashboard automatically the moment your trial starts, and the setup wizard continues right where you left off.
    • Clearer errors — when something does go wrong during a search, you now see the actual reason instead of a misleading "No results found".
    • A fresh coat of paint on pricing — the trial page, homepage pricing, and in-app paywalls now share a cleaner card design, and the billing toggle shows exactly how much annual saves.
  22. Improved

    Sharper revenue estimates: real subscription pricing on iOS

    Revenue estimates just got a meaningful accuracy upgrade, especially for subscription apps:

    • Real IAP data on iOS — we now read each app's in-app purchase list (item names and prices) straight from its App Store listing. Free iOS apps used to be treated as generic freemium with category-average pricing; subscription apps are now detected as such and estimated with their actual tiers.
    • Billing-period aware — "Pro Weekly $4.99" and "Premium Yearly $59.99" are converted to their true monthly value, so weekly-priced apps no longer look 4x cheaper than they are.
    • International price formats — IAP ranges like "0,99 € – 109,99 €" are now parsed correctly on every storefront.
    • Calibrated against verified revenue — the estimator is now benchmarked against a set of apps with independently verified monthly revenue, so future accuracy improvements are measured, not guessed.

    Estimates remain directional — public signals can't capture everything — but subscription apps, the majority of top-earning apps today, now get a model that reflects how they actually monetize.

  23. Fixed

    Removing a competitor now cleans up after itself

    Previously, removing a competitor (or deleting a product that referenced one) could leave the competitor app tracked invisibly in the background. Now teardown is complete:

    • Full cleanup — when you remove a competitor and no other app of yours references it, the competitor and its tracked data are removed too. If another app still uses it as a competitor, nothing changes.
    • Applies everywhere — dashboard, API (DELETE /api/v1/products/:id/competitors/:competitorId), CLI, and MCP all behave the same way.

    Heads-up: removing a competitor's last reference deletes its tracked keyword list for your workspace — re-adding the competitor later starts fresh.

  24. Improved

    Apps now default to their real market

    Adding an app by name used to default every product to the US / English storefront. For a localized app — say a Russian period tracker or a Japanese budgeting app — that meant keyword discovery ran against the wrong market and came back nearly empty.

    • Automatic primary-market detection — when you add an app, Sonar reads its store listing and defaults the keyword market to the app's home country (e.g. a Cyrillic listing → Russia, a Japanese listing → Japan). Discovery, suggestions, and rank tracking all run in that market from the start.
    • Suggested extra markets — if your app is localized into other languages, Sonar now offers those storefronts as one-click chips in the Keywords step, so you can start tracking, say, the US and German markets too without hunting through a country list.
    • Still yours to change — the detected market is shown in the Keywords step, and you can add or swap markets at any time.

    Pasted regional store links (a /de/, /jp/ URL) keep working exactly as before — Sonar uses the storefront in the link.

  25. Improved

    Store column on discovered keywords

    The Discovered keywords tab now has a Store column showing the country/locale each keyword was found in — the same column the Tracked tab already had. It's sortable and can be toggled from the Columns menu, so it's easy to tell at a glance which market a discovered keyword belongs to.

  26. Improved

    iOS keyword popularity now reflects real App Store demand

    iOS keyword popularity now uses Apple's official Search Popularity instead of our in-house estimate. The numbers you see line up with real App Store search demand, so you can prioritize keywords with confidence.

    • More accurate scores — popularity reflects how often people actually search a term on the App Store, not an approximation.
    • Better prioritization — sort and filter on numbers you can trust to decide which keywords are worth chasing.

    This applies to iOS keywords; Android popularity is unchanged.

  27. New

    Seed a research project from an app

    Research projects no longer start as a blank box you have to fill by hand.

    • Seed from an app — open any research project, click Seed from app, and search for an app by name or paste a store URL. Pick up to three apps — a competitor, or that viral app you'd love to take traffic from — and Sonar finds the keywords they actually rank for and adds them to your project.
    • Scored on arrival — seeded keywords land with popularity, difficulty, and gap already filled in, so the best opportunities are obvious at a glance.
    • Best opportunities first — the project keyword table now sorts by Gap (popularity minus difficulty) by default, floating the high-reward, low-competition terms to the top.

    Great for sizing up a niche fast or planning a copycat: see what's working for an app, then go capture it.

  28. ImprovedFixed

    Find more keywords you already rank for

    We rebuilt how Sonar finds the keywords your app already ranks for.

    • Wider discovery — discovery used to expand a handful of seed terms through store autocomplete and little else. It now pulls candidates from your listing (app name, subtitle, description), AI-suggested intent terms, and autocomplete — then verifies each one against the live App Store / Google Play results before showing it. More real ranked keywords surface, especially for smaller or newer apps.
    • Ranked vs. gaps — the Discovered tab now has two clearly labelled sections: Keywords you rank for and Keyword gaps (terms your competitors rank for that you don't — yet). Track a gap to start monitoring it.
    • Fixed the count — the "Discovered" tab badge could claim, say, 120 keywords while the table showed only a few. The badge now always matches exactly what's listed.
    • Keeps looking — discovery no longer runs only once when you add an app. Sonar now re-checks your apps on a schedule and surfaces keywords you've started ranking for since you added them.

    Open any product's Keywords → Discovered tab to see the new sources and sections.

  29. Fixed

    Add apps from any App Store country

    If your app isn't sold in the US App Store, adding it used to fail with an error after you hit Select.

    The Add App wizard now tracks each app in the storefront you found it in — so a German (/de/), French, or any other regional App Store link works on the first try, and its keyword market defaults to that same country.

  30. NewImproved

    Understand your Popularity & Difficulty scores

    Wondering what those Popularity and Difficulty numbers actually mean? Now you don't have to guess.

    • In-table explainers — hover the (i) next to the Popularity, Difficulty, and Gap column headers for a one-line definition of each score.
    • New methodology pageHow keyword scores work explains what each 0–100 score measures, how to read them together, and why different ASO tools show different numbers for the same keyword.

    Short version: use the scores to rank keywords against each other inside Sonar — high Popularity with low Difficulty (a positive Gap) is the sweet spot.

  31. NewImproved

    Untrack, delete, and manage alerts from the API, CLI & MCP

    The write API used to be one-way: you could create products, track apps, and add keywords, but cleanup meant clicking through the dashboard. Now the API can undo everything it sets up:

    • Untrack keywords — remove a single tracked keyword, or bulk-untrack a whole app's keywords in one call (handy after a bulk add that landed on the wrong app).
    • Untrack apps & delete products — remove an app (and its keywords/competitor links) or delete an entire product.
    • Remove competitors — drop a competitor from a product.
    • List products — see your products with their linked store versions and competitor counts, so agents can discover the IDs they need.
    • Alert rules over the API — list, create/update, and delete alert subscriptions (rank drops, review spikes, competitor changes, and more) without the dashboard.

    Everything is available across all three surfaces — REST API, the sonar CLI, and the MCP server — so AI agents and scripts can manage a workspace end-to-end. See the API docs, CLI docs, and MCP docs.

  32. Improved

    Developers page now covers API, CLI & MCP

    The Developers page (Settings → Developers) is now organized into three clear sections so you can wire up whichever surface you prefer:

    • API — manage your API keys and grab a copy-paste curl example.
    • CLI — install with one command, log in, and run your first query.
    • MCP — drop the ready-made config into Claude Desktop, Claude Code, Cursor, and friends, or use the one-line Claude Code installer.

    One API key works across all three. Each section links out to the full reference docs.

  33. New

    Look up any app's revenue

    The Revenue page now has a built-in lookup. Below your app + competitor comparison, search any app on either store — by name or by pasting a store URL — and instantly see its estimated monthly revenue and monetization model, sorted highest first.

    It's perfect for sizing up an app you're not tracking yet. No setup needed, and it works during your trial and in demo mode.

  34. NewImproved

    CLI & MCP server now cover the entire API

    The CLI and MCP server now have full API parity — everything you can do over REST works from your terminal or from an AI agent:

    • MCP server 0.5.0 (22 tools) — agents can now read your workspace, not just public store data: tracked apps, keyword rank history, detected app changes, SERP history, and competitor gap analyses. Plus two new write tools: keyword notes and competitor keyword scans. An agent can set up tracking and check back on results, end to end.
    • CLI 0.4.0 — new read commands (sonar apps lookup / search / score / extract-keywords / reviews / changes) and write commands (sonar products create / add-app / add-competitor, sonar keywords track / note, sonar competitors scan).

    Write commands and tools need an API key with the write scope — create one under Settings → Developers. Update with npm i -g @sonarapp/cli@latest; MCP setups using npx -y @sonarapp/mcp pick up the new tools on the next session.

  35. New

    Achievements — celebrate and share your ranking wins

    Ranking wins deserve more than a green arrow. The dashboard now has an Achievements grid showing 7 feats for each product — from your first keyword on the board to Page One, Podium, Number One, a 20-spot Climber jump, and holding 5 or 10 keywords in the Top 10 at once.

    Locked achievements stay greyed out with a hint on how to earn them, so you always know what's next. Earned ones light up — and every one is shareable: click it to generate a polished card image for X with the keyword that did it, the rank, and the keyword's popularity and difficulty so people can see it wasn't a layup.

    Building in public but don't want to tip off competitors? Hide the app name, the keyword, or both before sharing — popularity and difficulty stay on the card, so the brag still has receipts.

    Achievements are checked daily against your full rank history, and once earned they're yours forever.

  36. Improved

    Activity Feed Timeline

    The Activity page no longer splits changes into one column per app. It's now a single chronological timeline grouped by day — newest first — so you can scan everything that happened across your apps and competitors in one pass: releases (with version bumps and release notes), metadata edits, screenshot changes, price and category moves.

    Release notes also render cleaner: blank-line padding is collapsed so the 3-line preview shows actual content, with "Show more" for the full notes.

  37. Improved

    Dashboard Redesign

    The product dashboard got a full redesign around one question: is your ASO working, and what should you do next?

    • Rank Trend chart — a 30-day view of your average position across all tracked keywords, front and center. You can finally see movement at a glance instead of decoding counters.
    • Smarter stat cards — Avg Rank now shows how much it moved vs last week, plus new Best Rank (and which keyword holds it) and Top 10 cards.
    • Keyword watchlist — your top keywords with a mini trend sparkline, current rank, and 7-day change. Even in a quiet week, the dashboard always shows something real.
    • Opportunities panel — keywords sitting just off page one, within reach of the top 3, or low-difficulty terms you're not ranking for yet — with new discoveries surfaced alongside.
    • Store health at a glance — your app's rating, ratings count, and live version now appear right in the header.
    • Top Improvements / Biggest Drops only appear when something actually moved — no more empty boxes.
    • Achievements moved to a compact strip (still clickable to share), and dashboard pages now use your full screen width.
  38. ImprovedFixed

    Sharper alerts, international keywords, and a faster dashboard

    A big reliability and performance pass across the whole product:

    Alerts that catch the worst case. Rank alerts now fire when your app drops out of the search results entirely — previously the biggest possible drop was the one that stayed silent. Alert delivery is also fixed for teams tracking the same keywords as another organization: every org now reliably gets its own notifications.

    Keyword tools in every language. Keyword extraction and discovery now fully support non-Latin storefronts — Japanese, Korean, Chinese, Cyrillic, and Arabic keywords are extracted and suggested just like English ones.

    Faster everywhere. The Apps overview, keyword sidebar, and keyword detail pages load with far fewer database round trips, and Android keyword refreshes are gentler and more reliable. Intermittent display errors on cached dashboard views are gone.

    API improvements. GET /v1/apps and GET /v1/apps/:id/rankings now support cursor pagination (see the API docs), invalid requests no longer count against your quota or credits, and credit charges are refunded automatically when a request fails.

    Unsubscribe safely. Email unsubscribe links now show a confirmation page, so overzealous corporate link scanners can't unsubscribe you by accident.

  39. Improved

    Android app data refreshes more often

    We refresh the details for every tracked Android app — rating, latest version, install count, developer info — on a schedule. Until now that ran once a day, and on busy days it couldn't get through every app in its time window, so some apps would drift a day or more out of date before the next run caught them.

    The metadata refresh now runs every 4 hours. It only touches apps that have actually gone stale, so most runs are quick — and anything a run misses gets picked up by the next one a few hours later instead of waiting until tomorrow. In practice your Android app numbers now stay current within hours, matching how fresh the iOS side already was.

    Daily chart-position snapshots (Top Free / Paid / Grossing) are unchanged — those remain a once-a-day reading.

  40. New

    Get alerted when your rankings move

    You can now have Sonar watch your apps and tell you when something changes — instead of checking the dashboard to find out.

    Head to Alerts and switch on exactly what you care about:

    • Rank drops & gains — when a tracked app moves up or down for a keyword (you set how big a move is worth knowing about)
    • Top 10 changes — when an app breaks into, or falls out of, the top 10
    • New rankings — when an app starts ranking for a keyword it didn't before
    • Competitor changes — when a competitor ships a new release, or changes their metadata, screenshots, price, or category
    • Rating drops & review spikes — when an app's rating slips or reviews suddenly pick up

    Everything is off until you turn it on, and matching changes arrive as a single daily email digest — no inbox spam. You can send the digest to a different address (a shared or team inbox) if you don't want it going to your login email. Every alert also shows up in an in-app feed on the Alerts page, so you have the full history even if you mute the emails.

  41. New

    Mark what you changed, right on your charts

    Ever shipped an update and wondered whether it actually helped your rankings? Now you can mark the changes you made and see them right on your charts.

    Add an annotation to any of your apps with a date and a short note — for example:

    • "Shipped v2.0 — new subtitle"
    • "Refreshed screenshots"
    • "Changed primary category"

    Each annotation shows up as a numbered marker on your rank charts, so you can line up what you did against what happened to your ranks:

    • On the new Rank Trend chart at the top of the Rankings page (your average position across all tracked keywords over time)
    • On the keyword detail page's rank and popularity/difficulty charts
    • On the keyword quick-look panel

    Add, edit, and delete annotations inline — they're tied to the app, so a single note appears across every keyword chart for that app.

    You can also pin individual keywords onto the Rank Trend chart — click the line-chart icon next to any keyword in the rankings table to overlay its rank history (up to 6 at once) alongside your average, so you can watch a specific keyword's development up close.

  42. Fixed

    Honest rank states — live, dropped out, or never ranked

    We track your rank by reading the App Store search results each day — but the store only returns the top ~180–200 apps for a query. If your app sits below that, there's simply no position to record that day.

    Until now, the tables would keep showing your last-known rank as if it were current (with a "—0" no-change indicator), and a keyword you'd never ranked for looked the same as a blank. That made a real drop-off impossible to tell from a plateau.

    Now every rank surface shows one of three honest states:

    • #N — you're live in the results
    • >200 (was #N) — you had this rank but have since dropped out of the trackable window (hover for the date you were last seen). On the Rankings table the 1d/7d/30d change columns are blanked instead of showing a fake "no change", and these sort below your live ranks.
    • Not ranked — your app has never appeared in the top ~200 for this keyword

    This applies across the Rankings table, the Keywords table (single app and cross-store), and the opportunity matrix. The "Ranking / Not ranking" filter now treats a dropped-out keyword as not currently ranking.

    Nothing changed about how often we check — your live-ranking keywords update exactly as before. This just stops stale numbers from masquerading as current ones.

  43. Improved

    New keywords get their scores right away

    When you added keywords — to a new app, an existing one, or imported from a competitor — their difficulty and popularity used to stay blank until the overnight refresh ran. That made it hard to judge a keyword right when you cared about it.

    Now those two scores are computed the moment you add the keyword — about a second, for both the App Store and Google Play. A freshly added keyword briefly shows "Calculating…" and the table fills itself in, no refresh needed.

    Exact rank (your app's position for that keyword) still updates on the daily cycle, so it appears a bit later — but difficulty and popularity, the numbers you use to pick keywords, are now instant.

  44. FixedImproved

    iOS keyword rankings are back — and now instant

    Apple changed the App Store search endpoint we relied on for iOS keyword rankings, which stopped iOS ranks, difficulty, and popularity from refreshing. We've moved iOS rank tracking onto Apple's documented Search API and everything is updating again.

    We checked the new source against known-accurate App Store rankings across a wide spread of keywords — broad, branded, and long-tail — and it matched the real ranking order position-for-position through the top results. So your iOS ranks are just as trustworthy as before.

    A bonus from the switch: when you add an iOS keyword, its rank now fills in within about a second, right alongside difficulty and popularity — no more waiting for the overnight cycle to see where your app sits.

    Google Play rankings were never affected.

  45. Improved

    iOS popularity scores + instant reviews on new apps

    Two refinements to keyword and review data:

    • iOS keyword popularity now populates alongside difficulty. Previously many iOS keywords showed a difficulty score but no popularity — that gap is closed, so you get the full picture for every tracked iOS keyword.
    • Reviews load instantly when you add a new app or competitor, instead of waiting for the next scheduled refresh. After that, reviews keep refreshing automatically.
  46. New

    AI Review Insights

    Sonar now reads the last ~90 days of an app's reviews and summarizes them with AI: what people praise, what they complain about (with real quotes), and notable feature requests. Re-run it after 90 days and it compares against the previous summary to show what's improving, persisting, or resolved.

    It works for your own apps and any tracked competitor — so you can see what a rival's users love or hate and turn it into an opportunity. Open it from the redesigned Reviews page (pick an app from the title dropdown, then Analyze reviews), or straight from the Competitors table and any app's detail panel.

    The Reviews page also got a cleaner layout and pagination, so long competitor review lists stay fast.

  47. Improved

    Reviews show full history, not just the last 90 days

    The Reviews browser previously only kept reviews from the last 90 days, so apps with steady-but-infrequent reviews (or competitors in smaller markets) often looked nearly empty. It now stores and shows the full recent review history Apple and Google expose (up to ~500 per app), so you get a real picture of what users say over time.

    AI review insights still summarize the last 90 days so trends stay current.

  48. Fixed

    iOS reviews load reliably

    iOS reviews sometimes came back empty — both in the Reviews browser and when generating AI insights. Sonar now keeps each tracked app's recent reviews continuously synced, so they load instantly and reliably every time you open the Reviews page, no matter the store or country.

    This also makes the Reviews page faster: reviews are read from your synced data instead of being fetched on the spot.

  49. Improved

    Faster onboarding & guided setup

    Getting started is smoother:

    • A guided day-0 welcome helps brand-new orgs pick a path instead of staring at an empty dashboard.
    • The add-product wizard walks you through tracking your first app, with faster tracking and ranked-only keyword discovery.
    • A dedicated New Research Project page makes one-off keyword research a first-class flow.
    • Newly added products are auto-selected in the sidebar so you land where you expect.
  50. New

    Listing Helper — AI-assisted metadata

    Writing your App Store and Google Play metadata is now a guided flow. Listing Helper lets you draft your title, subtitle, and keyword field with:

    • Live character counts against each store's limits
    • Keyword coverage scoring as you type
    • Suggestions pulled from your tracked keywords and competitor listings

    Find it in the sidebar under Listing Helper.

  51. Improved

    Show & hide table columns

    Every data table now has persistent column controls. Toggle the columns you care about — popularity, difficulty, rank, results count, notes — and your selection is remembered across sessions.

    Combined with the new keyword text/regex filter and the Export button now lifted into the top bar, the tables are far easier to slice for your own workflow.

  52. New

    Compare apps & automatic version detection

    A few upgrades landed together:

    • Compare apps dialog — line up your app against competitors side by side.
    • Version change detection — Sonar now records app version changes automatically on each metadata sync, feeding the Activity feed.
    • All reviews, not just low-star — the Reviews page shows the full picture, with country names in the selector (sorted alphabetically).
  53. New

    Scoped API keys & write endpoints

    The REST API now supports product-centric write endpoints. Create products, track apps, add keywords, and trigger competitor scans without touching the dashboard.

    API keys now carry scopes:

    • read (default) — every GET endpoint
    • read+write — POST/PATCH on products, tracked apps, keywords, and competitor scans (Full plan only at issuance)

    Generate scoped keys from Settings → API keys.

  54. New

    Prepaid credits for API access

    API-only users can now buy prepaid credit packs ($10–$100) instead of a monthly subscription. Credits are spent per call on the stateless scraper endpoints, and you start with 50 free credits on signup.

    • No subscription required for pure API/MCP use
    • Failed requests are never charged
    • Full-plan users get a daily quota with credit overflow

    Existing Agent-plan subscribers keep their unlimited monthly access.

  55. New

    Official CLI & MCP server

    Sonar is now AI-native end to end:

    • @sonarapp/clinpm i -g @sonarapp/cli, then sonar for app lookup, keyword research, rankings, competitors, revenue, and CSV/JSON export.
    • @sonarapp/mcp — a Model Context Protocol server exposing 9 stateless tools so Claude, Cursor, and other agents can query Sonar directly.

    Both authenticate with your SONAR_API_KEY.

  56. New

    App Store Roast — free AI listing grader

    A new free public tool: App Store Roast. Drop in any App Store or Google Play listing and get an AI-graded teardown — an overall grade (F → A+), a one-line verdict, and graded sections for Icon, Screenshots, Title & Subtitle, Description, and Reviews, each with an actionable ASO tip.

    It's free, shareable, and a fast way to see where a listing is leaving installs on the table.

  57. New

    Explore Sonar in demo mode

    New signups can now explore a read-only demo workspace — real apps, keywords, rankings, and reviews — before being asked for a credit card. It's the fastest way to see what Sonar does with live data, no setup required.

    Start your trial whenever you're ready and you'll switch to your own workspace.

  58. New

    Multi-locale research projects

    Research projects let you organize keyword research independently of tracked apps — perfect for pre-launch exploration or comparing markets.

    • Multi-locale: research the same keywords across countries and languages
    • Per-project filters and a one-click refresh for stale keywords
    • Editable icon and name, with a Lucide icon picker
    • Per-row actions to rename or delete projects and products
  59. Improved

    Rank trend sparklines & smarter filters

    The Rankings and Keywords pages got sharper:

    • Rank trend sparklines inline in the rankings table
    • Filter rankings to ranked-only keywords, plus store/country and branded/generic toggles
    • Store/country multi-select on the keyword table
    • Clickable rows and keyword notes that sync across views
  60. New

    Revenue estimation

    Sonar now estimates app revenue using install counts and category benchmarks — available in the dashboard, via the /api/v1/apps/revenue endpoint, and as sonar revenue in the CLI.

    Bulk revenue and review filters make it practical for automation and portfolio-wide analysis.

  61. New

    Keyword Opportunity Matrix

    The new Keyword Opportunity Matrix plots your keywords on a popularity-vs-difficulty scatter chart, so the high-volume / low-competition opportunities jump out instantly. Quadrants make it obvious which terms to prioritize and which to skip.

  62. New

    Activity feed — track app changes

    The Activity feed gives you a timeline of detected changes across your apps and competitors — new releases, metadata edits, screenshot swaps, price and category changes. Keep tabs on what competitors are shipping without checking the stores by hand.

  63. New

    Free tools, multi-country & REST API

    A big foundational release:

    • Free public tools — ASO Score Checker and Keyword Generator, no signup needed
    • Multi-country support across keyword research and rank tracking
    • REST API access on all paid plans, with the Agent plan for API-only use
    • Single-tier pricing with everything included
  64. New

    Live review intelligence

    Review monitoring went live: fetch reviews on demand from both the App Store and Google Play, paginated across all pages, with a rich app detail sheet for quick inspection. This is the foundation the later AI Review Insights build on.