Hey, I’m Colin! I help PMs and business leaders improve their technical skills through real-world case studies. For more, check out my Live cohort course or subscribe on Substack.
Miro has gone through a complete rebranding in recent years. From a collaborative digital whiteboard to your team’s Innovation Workspace, Miro has fully incorporated AI-powered features into its positioning.
And it’s working. With over 40 million users and a $17.5 billion valuation, Miro is a powerhouse of digital collaboration. Instead of offering an AI-centric product, Miro leverages their existing platform to empower users to work faster using new Gen-AI tools.
Value Proposition
Using collaborative tools like Miro can be great for joint diagramming sessions, whether that's for training, process mapping, or technical architecture diagrams.
With Miro’s new AI suite, you can go from a simple prompt to a sequence diagram in one click.
When I asked Miro for “An AI feature for a whiteboarding tool that takes text as input and generates a structured sequence diagram as output” , here’s what I got:
Unfortunately, this diagram doesn’t do justice to the Miro’s team’s efforts to implement this AI-powered feature. Let’s dive into how this really works!
How It Works
Like many AI features, Miro’s diagram generation isn’t much more than a few API calls and well-designed integration points.
This feature works in three steps:
Make an API call to the AI model with the form content and prompt
Get a structured response with JSON mode
Display the results on the page
#1 Make an API call to the AI model with the form content and prompt
The first step is generating the diagram content. To do this, Miro sends a POST requests to their own API endpoint hosted at miro.com/api.
This endpoint passes the request over to Azure’s Open AI Service and generates a chat completion based on your input and the system prompt.
The full endpoint URL is https://svc.eu01.miro.com/api/ai-proxy-service/azure/openai/gpt-35-turbo/chat/completions?api-version=2024-02-01&
Let’s break down this request into a few parts. First, we have the request type and endpoint.
We’re sending a POST request to /openai/gpt-35-turbo/chat/completions. POST requests are commonly used for sending information collected in forms or data that needs to be secure.
This request also contains a URL parameter that specifies the api-version with a specific date (?api-version=2024-02-01). This is a pattern of API versioning that allows engineering team to deploy new versions of the API without breaking previous versions.
Lastly, we have a body. This contains both my input text and the system prompt. Let’s take a look at their prompt:
Breaking down their prompt, we can see:
A system prompt that provides clear instructions and asks for JSON as a response.
An example of a successful response
My input prompt
An open-ended output for “new state”
This prompt helps improve Miro’s chance of receiving an output that reasonably matches the user’s expectations.
#2 Get a structured response with JSON mode
You’ll notice the prompt contains the line “Do not include anything except valid JSON. Here’s what we get in response to our request:
This looks like a great JSON representation of a graph to me!
#3 Display the results on the page
As the final step, Miro leverages its existing features to import this JSON content to the canvas, where it’s shown as a diagram.
Pricing & Positioning
Instead of gating AI between a paywall, each user gets 10 - 100 free AI actions per month depending on your tier, with additional actions available for purchase.
With the $8 plan, these AI actions cost Miro between $0.05 - $0.50 in API fees per user per month.
Compared to other popular AI rollouts like Figma and Loom, Miro stands alone if offering AI features for free indefinitely as part of their base pricing. Figma currently offers free use but plans to monetize, and Loom offers a limited time reverse-trial before moving to a $4/month plan.
Improving Miro AI
What do you think about Miro’s AI rollout? Did they nail their pricing and implementation or should they be charging more? How do you think they could improve their AI features?
Here’s a few changes I would consider implementing:
GPT 3.5 vs GPT 4o -mini
GPT4o - mini is 60% cheaper than 3.5 turbo and performs better. I’d swap over to the newest model to reduce cost and improve the quality of generated content.
System prompt vs fine tuning
The provided prompt for my sequence diagram helps GPT format the output, but it doesn’t really do much in terms of guiding content. I’d explore building a fine-tuning data set based on a collection of existing diagrams. This could further improve the quality of the generated content.
Multi-step actions
One of Miro’s greatest strengths is their integration with common applications like Google Docs and Jira. Instead of importing content and then applying AI actions, I’d investigate use cases where AI transforms content directly from the source. For example, I could group my Jira backlog by theme and priority on the Miro canvas in one click.
Pricing Model
Although Miro’s pricing allows generous use of AI actions, I’d consider tiering some features behind an add-on. Given the low average retention rate of AI features, I’d be surprised if most users exceed the assigned credits. High value AI actions, like document creation or summarization & export, could require additional purchase.