The last two releases (May 8 and May 16) shipped a new way to slice your data, a portfolio view for tracking goals over time, more AI platforms behind the scenes, and a cleaner vocabulary throughout the product.
Tag every prompt with one or more attributes — branded vs non-branded, language, or any custom label you define per project (intent, funnel stage, persona, region). Every dashboard, metric, and report can now be filtered by those tags, so you can answer questions like "how do we rank on non-branded prompts in Spanish?" in one click.
A new portfolio surface for tracking the topics and attributes that matter to a single goal. Group a set of topics and prompt attributes into a workstream, set a visibility target, and watch progress over time. Useful for tracking campaigns, content initiatives, or any recurring objective tied to AI visibility.
OpenLens now scans Grok and Gemini alongside ChatGPT, Perplexity, Google AI Overview, Claude, and DeepSeek. New projects can enable either engine from the platform picker; existing projects can turn them on from project settings.
We launched public documentation at openlens.com/docs, including the MCP server setup guide and the REST API reference (beta).
We renamed two long-standing concepts so the product matches how agencies actually talk about the work:
All dashboards, settings, navigation, and exports use the new names. Old URLs continue to redirect.
We rewrote the brand-matching logic to cut both false positives (mentions of unrelated brands that happened to share a substring) and missed short forms (initialisms and trade names). Brands now carry an explicit alias list you can edit from project settings.
Historical reports are not auto-corrected — they reflect the detection logic that was live when the run happened. If you want a project re-scored against the new logic, run a fresh scan or contact us.
The marketing site now leads with "built for agencies" and cleaned up locale and SEO metadata across the board.
/api/queries/run, /api/queries/status, and /api/queries/results are replaced by /api/prompts/run, /api/prompts/status, and /api/prompts/results.topicList in place of keywordList. The legacy field is still accepted during the transition.run_queries → run_promptsget_query_results → get_platform_responsesadd_keyword → add_topic, and the rest of the query_* and keyword_* tool surface follows the same rename.add_prompt now requires a non-empty attributes array. The simplest valid value is ["branded"] or ["non-branded"]; you can also pass any custom attribute already defined on the project.Agents can now manage attributes and workstreams end-to-end:
list_prompt_attributes, add_prompt_attribute, archive_prompt_attribute, unarchive_prompt_attributelist_workstreams, get_workstream, get_workstream_breakdown, manage_workstream, update_workstream_goalIf you mirror OpenLens analytics into your own warehouse: event names query_run_* are now prompt_run_*, and keyword_* events are now topic_*. Every event also stamps a form_factor property (web, api, mcp, or cron) so you can split usage by surface.
If something broke, looks wrong, or you want a project re-scored against the new brand-detection logic, email [email protected].