1.5M ratings
277k ratings

See, that’s what the app is perfect for.

Sounds perfectWahhhh, I don’t wanna

What’s new, 2026 Edition

Welcome to a slightly more timely update on what’s new in Coggle (has it really been only a few months since the last one!).

Sign in By Email

First, at coggle.it/login you’ll notice a brand new option to ‘Sign in by Email Address’. Until now we’ve only supported social sign-ins, but now you’ve got an even more convenient option to create mindmaps, without needing a google/microsoft/apple account.

image

The email sign-in will send a secure code to your email address for each log-in (there’s no password). We’ve opted for a 12 digit code, along with some other security enhancements over the 6-digit email sign-in codes you might have seen on other sites, to make sure this option is secure.

Enhanced Security Settings

And on the subject of security you’ll also notice a new security section of your settings page:

image

This allows you to add passkeys for seamless and phishing-proof login. Passkeys are stored by your browser or device, can be secured by biometrics, and are both the fastest and the most secure way to sign in. (That’s the kind of security we like!)

To use a passkey to sign in click on 'sign in by email’ on the login page. Your browser will offer to use your passkey, and then once you’ve authorised it (using fingerprint / faceID depending on your device) you’ll be instantly signed in, without needing to leave the page or find an email code.

Share by QR Code

Our second update is also about making using Coggle easier, anywhere. We’ve always supported sharing Coggle diagrams using links, but sometimes a long link is cumbersome and difficult to use, requiring copying and pasting or sharing into an email or message. If you’re in the same room as whoever you want to share your mindmap with, then there’s now a much easier way:

In the revamped sharing menu click 'Create QR Code’: anyone can scan this with their camera app, to instantly get access!

image

Just like links, QR codes also allow editing with our awesome plan, so they’re a really fast way to get an in-person brainstorming session up and running!

What’s next?

Aside from all our other normal bug fixes and snappy speed improvements, that’s all for now.

But we’ve got another big update to make Coggle the most powerful mindmapping app out there coming soon, so stay tuned!

As always if you have any feedback or suggestions about updates, just drop us a message at hello@coggle.it.

Posted by James, January 14th 2026.

cogglemindmapmindmappingmind mapssecuritypasskeyspostedbyjames

Wait, was it always like that?

It’s been far too long (once again) since the last update to let you know what’s new with Coggle, and as always lots of things have changed and we haven’t put a single pleep out on socials.

So that you’re not left forever wondering if you’re losing your mind with questions like “did the buttons always work like that?” or “I don’t remember seeing that option before?” here’s your very occasional update on some of the new things in Coggle!


Big things first. Coggle now has a native dark mode for night owls and other dark aesthetes. The dark mode will follow your browser or system preference, or you can toggle it in your settings.

We’ve also made some dramatic improvements for editing on touch-screen devices. We have an installable progressive web app that you can save to your home screen, and we’ve updated our icon branding across Coggle to match. On all touch-screen devices there’s now a new editing toolbar at the bottom of the screen, with shortcuts to open menus, create and delete branches, copy, and Cogglify:

image

For mouse-users as well as touch screens our beautiful radial menus have been re-engineered and now support new ways of interaction, including dragging to select menu items without lifting your click/finger.

Did you know there are over 26 different ways to add new items to a Coggle mind map! That’s all the different menus, gestures, keyboard shortcuts and toolbars that people use on different kinds of devices. We’re not completely sure that that’s a good thing, but it shows how much complexity goes into keeping Coggle simple on the surface.

For the folders in your documents list we’ve added a little menu with big new options to organise and sort your diagrams.

image

You might also have noticed new information and hints in the ‘saving…’ status bar in the bottom left corner, an improved help menu, better conflict resolution for simultaneous editing on laggy connections, improved hovering and nearby-display logic for add-node buttons, translations for 5 new languages, ultra buttery smooth adjustment of control points, our new shortcut to count words, and improved fonts across the user interface.

Cogglify is now faster, more robust, and links to other mind maps display the Coggle logo so you can quickly identify them (Although we have fixed a bug where cogglify allowed you to exceed the private diagrams limit… sorry!).

We’ve made diagram navigation even smoother, with better zooming in large diagrams. Dramatically improved the documents list performance in Safari, and improved loading performance everywhere with much more optimised javascript bundling.

If you try to use a 'select all’ shortcut we’ve got a new menu that might help you. But you still can’t select items in Coggle (and we don’t have any plans to change that).

Finally there have also been far too many other little bug fixes and quality improvements to list them all.

It’s been a busy year.

What hasn’t changed? Auto-arrange. Sorry. We know you want your Coggle mind maps to automatically arrange themselves beautifully, but we promise it’s really worth the time to carefully position things yourself. It creates diagrams that are so much more memorable and characterful than a rigid auto-arrange ever could.

We did change our minds about dark mode this year, so it is possible we’ll do the same for auto-arrange in the future though…

Enjoy Coggling your thoughts with the new updates! and if you have any comments or suggestions just drop us an email at hello@coggle.it

Posted by James, October 3rd 2025.

cogglenewthingspostedbyjamesnewswhatsnewfeaturesupdatedark modemind mapping

Some highlights of what’s new, 2024

We’ve seen a couple of larger changes to Coggle’s infrastructure lately, which you might notice especially if you’re an obsessive Coggle user (like me!) with huuuge diagrams, or if you use Coggle in a different language.

PDF and image downloads are massively upgraded, with support for the biggest PDF files you can imagine (seriously, we haven’t been able to make a sensible Coggle diagram big enough to break the new pdf renderer yet, unlike the old one which could fall over with merely an A0-paper-size diagram).

The longest-lived bug that we’ve ever had – links in PDF files could sometimes not be clickable – is also finally, finally, finally, fixed! This bug was nearly as old as PDF exports in Coggle, and rapidly approaching its 10th birthday.

PNG image downloads are now also supported up to tens of thousands of pixels in size. These can take a while to generate, and for larger diagrams PDF files will be both smaller and higher quality, but if you need a raster image of your biggest diagrams for any reason you can now get one much more easily.

The new rendering engine is a huge quality and reliability improvement, and it also makes our ongoing maintenance much easier. We now have the capability to use fonts for many more languages when creating the downloaded files. If you see text in your language which is not being displayed properly in a downloaded file please let us know! If the font we’re using for your language looks ugly and could be improved then let us know too :)

Translations now use Fluent: Our public translations project for Coggle now uses the more modern .ftl Fluent translations syntax. We’ve ported over most of the old translations (and thank you to all the people who have helped!), but if you’re a technically minded native speaker of a language we don’t support yet then it’s easier than it ever to translate Coggle.

Posted by James, September 20th 2024.

cogglemindmapsmind mapsnewthingspostedbyjames

What’s new?

What’s new in Coggle recently? Here’s your occasional update in what we’ve been working on!

We love green, but, we finally decided that the old homepage was, perhaps, just a tiny bit too green, so you might have noticed our refreshed home page and documents list:

updated homepage design

Hope you like the new design - if you have any comments we love to hear them!

There have been some much less visible updates too - in particular, we’ve been working on improving the quality of the diagrams you find when you search for public diagrams on Coggle, by removing and hiding published diagrams that have been created for spam, and that don’t contain any useful content.

We’re not really sure why anyone bothers to try create spam on Coggle, because we’ve always had a number of ways in which we’ve suppressed it, and limited the ways that Coggle diagrams can be used to boost other sites.

For some reason though, people still try (and try quite a lot!), which can cause problems if these diagrams appear in search results instead of other useful content. So, we’ve been improving our detection, flagging, and removal of spammy diagrams, and the accounts that create them, with an even more robust system.

Hopefully you will notice an increase in the quality of public diagrams you find when searching, but if you ever come across public content which shouldn’t be on Coggle, then please email us at hello@coggle.it with a link to the page, so we can review it.

Of course as always there have been lots of other little fixes and improvements too, to make using Coggle just a little bit smoother, like improvements to the ways that buttons for adding branches in diagrams work, and improvements to text rendering in Safari.

That’s all for now! As always, if you have any comments or feedback we always appreciate them, just drop us an email at hello@coggle.it.


Posted by James, October 26th 2021.

cogglenewswhatsnewfeaturesupdate

Making Coggle Even Faster

Today we’ve got another update from the tech behind Coggle: how we cut the average response time by over 40% with some fairly simple changes, and learned a lesson in checking default configurations.

First, a bit of architecture. Coggle is divided into several separate services behind the scenes, with each service responsible for different things. One service is responsible for storing and accessing documents, another for sending email, one for generating downloads, and so on.

These services talk to each other internally with HTTP requests: so for each request from your browser for a page there will be several more requests between these services before a response is sent back to your browser.

This all adds up to quite a lot of HTTP requests - and many of these Coggle services call out to further services hosted by AWS, using (yep you guessed it!) even more HTTP requests.

So, in all, an awful lot of HTTP requests are going on.

Coggle is written in node.js, and originally we just used the default settings of the node request module, and the AWS SDK for node for most of these requests. (At this point there are better options than the request module - we’d recommend undici for new development - but there isn’t a practical alternative to the AWS SDK.)

Why does this matter? Well, it turns out both of these default configurations are absolutely not tuned for high-throughput applications…

The Investigation Begins

A few weeks ago I came across this interesting interactive debugging puzzle by @b0rk - now, no spoilers here (go try it for yourself!), but when I finally got to the solution it did make me immediately wonder if the same issue was present in Coggle - as for a long time our average response time for requests has been about 60ms:

graph showing 60ms response time over several months

It didn’t take long to confirm that the problem in the puzzle was not occurring for us, but this made me wonder why exactly our average response-time graph was so consistently high - was there room for any improvement? Are all those requests between the different services slowing things down?

What About the Database?

The first obvious place to check is the database. While the vast majority of requests are very fast, we have some occasionally slower requests. Could these be holding things up due to slow trains? Tweaking the connection pool size options of the mongodb driver showed a small improvement, and this is definitely a default configuration that you should tune to your application rather than leaving as-is (note maxPoolSize, not poolSize, is the option that should be used for unified topology connections).

No dramatic improvements here though.

All Those Internal Requests…

Like the mongodb driver, nodejs itself also maintains a global connection pool (in this case an http.Agent) for outgoing connections. If you search for information about this connection pool you will find lots articles saying that it’s limited to 5 concurrent connections. Ahha! This could easily be causing requests to back-up.

Inter-service requests are generally slower than database requests, and just five slow requests could cause others to start piling up behind them!

Fortunately, all those articles are very out of date. The global nodejs connection pool has been unlimited in size since nodejs 0.12 in 2015. But this line of investigation does lead directly to the true culprit.

The global http Agent which our internal requests were using is constructed using default options. And a careful reading of the http agent documentation shows that the keepAlive option is false by default.

This means, simply, that after a request is complete nodejs will close the connection to the remote server, instead of keeping the connection in case another request is made to the same server within a short time period.

In Coggle, where we have a small number of component services making a large number of requests to each other, it should almost always be possible to re-use connections for additional requests. Instead, with the default configuration, a new connection was being created for every single request!

A Solution!

It is not possible to change the global default value, so to configure the request module to use an http agent with keepalive set, a new agent must be created and passed in the options to each request. Separate agents are needed for http and https, but we want to make sure to re-use the same agent for multiple requests, so we use a simple helper function to create or retrieve an agent:

Code not formatted nicely? view on bloggle.coggle.it for syntax highlighting.


const http = require('http');
const https = require('https');

const shared_agents = {'http:':null, 'https:':null};
const getAgentFor = (protocol) => {
    if(!shared_agents[protocol]){
        if(protocol === 'http:'){
            shared_agents[protocol] = new http.Agent({
                keepAlive: true
            });
        }else if(protocol === 'https:'){
            shared_agents[protocol] = new https.Agent({
                keepAlive: true,
                rejectUnauthorized: true
            });
        }else{
            throw new Error(`unsupported request protocol ${protocol}`);
        }
    }
    return shared_agents[protocol];
};

And then when making requests, simply set the agent option:


args.agent = getAgentFor(new URL(args.url).protocol);
request(args, callback);

For Coggle, this simple change had a dramatic effect not only on the latency of internal requests (requests are much faster when a new connection doesn’t have to be negotiated), but also on CPU use. For one service a reduction of 70%!

graph showing dramatic reduction in CPU use

The AWS SDK

As with the request module, the AWS SDK for nodejs will also use the default http Agent options for its own connections - meaning again that a new connection is established for each request!

To change this, httpOptions.agent can be set on the constructor for individual AWS services, for example with S3:

const https = require('https');
const s3 = new AWS.S3({
    httpOptions:{
        agent: new https.Agent({keepAlive:true, rejectUnauthorized:true})
    }
});

Setting keepAlive when requests are not made sufficiently frequently will not have any performance benefit. Instead there will be a slight cost in memory and cpu of maintaining connections only for them to be closed by the remote server without being re-used.

So how often do requests need to be for keepAlive to show a benefit, or in other words, how long will remote servers keep the connection option?

When keepAlive Makes Sense

The default for nodejs servers is five seconds, and helpfully the Keep-Alive: timeout=5 header is set on responses to indicate this. For AWS things aren’t so clear.

While the documentation mentions enabling keepAlive in nodejs clients, it doesn’t say how long the server will keep the connection open, and so how frequent requests need to be in order to re-use it.

Some experimentation with S3 in the eu-west-1 region showed a time of about 4 seconds, though it seems possible this could vary with traffic, region, and across services.

But as a rough guide, if you’re likely to make more than one request every four seconds then there’s some gain to enabling keepAlive, and from there on, as request rates increase, the benefit only grows.

Combined Effect

For Coggle, the combined effect of keepalive for internal and AWS requests was a reduction from about 60ms to about 40ms for the median response time, which is quite amazing for such simple changes!

In the end, this is also a cautionary tale about making sure default configurations are appropriate, especially as patterns of use change over time. Sometimes there can be dramatic gains from just making sure basic things are configured correctly.

I’ll leave you with the lovely graph of how much faster the average request to Coggle is since these changes:

graph showing reducing in response time from 60ms to 40ms

I hope this was an interesting read! As always if you have any questions or comments feel free to email hello@coggle.it


Posted by James, June 16th 2021.

coggletechperformancehttphttpslatencyawsnodejskeep-alivepostedbyjames

What’s New: June 2021

Noticed a message saying to refresh the page to get the latest version, and wondering what’s changed? Here’s your occasional update on what’s new in Coggle recently!

  • The Coggle servers now respond 40% faster on average to requests! - watch out for a separate post with the technical details of this soon.
  • Large diagrams also load substantially faster (yet again) - we’ve really been on a performance optimisation binge recently.
  • new keyboard shortcuts to paste style, modifying the colour, shape, etc of some items to match the copied one. Check out the knowledge base article for details.
  • SAML single sign on users can now seamlessly re-join an organisation after being removed (as long as they are still provisioned in your single sign-on system). This makes it easier to manage your costs for a Coggle Organisation by temporarily removing inactive members from the Organisation dashboard, as the people you remove can easily re-join when they need to use Coggle again.
  • Changed diagrams are indexed more quickly, especially for users with large numbers of diagrams.
  • Improved handling of slightly malformed URLs due to typos and copy+paste errors (like additional trailing slashes, or partial URL titles), so it’ll now be harder to accidentally end up with ‘diagram not found’ when copying a link someone has sent you for a diagram.

Other little bugfixes also included fixes for an issue where the size of icons would not always be calculated correctly, where the back button from the diagram sometimes wouldn’t take you to the right folder, and for an annoying bug in Safari where sometimes the first click after a page was loaded would be ignored.

That’s all for now! As always, if you have any comments or feedback we always appreciate them, just drop us an email at hello@coggle.it.


Posted by James, June 1st 2021.

cogglenewswhatsnewfeaturesupdatepostedbyjames

What’s New, and Protecting your Security and Privacy

The biggest change behind the scenes recently, has been improvements for hotlinked images (that is, images hosted on other websites and used in Coggle diagrams).

Hotlinked images are now proxied, with the files forwarded by our own servers instead of requested directly by your browser. They are also restricted in types to png, jpeg and gif images. This improves security and privacy when viewing diagrams (more on this below), and also improves performance as images can be served by Coggle’s content delivery network, which can serve content very quickly anywhere in the world.

Unlike images uploaded to Coggle, there’s a much bigger size restriction in the free plan for images you hotlink from your own hosting, so it’s a good way to get even more out of the free version of Coggle! To hotlink an image you can use the markdown image syntax with a URL to your own image hosting, like this: ![alt text for image](https://example.com/your/image/url.jpg).

If you run an image hosting service and want to specifically block or allow images hotlinked from Coggle, then note that the referrer for our images requests will always be https://coggle.it/ - the specific diagram URL where images are used is no longer included.

How does proxying these images protect security and privacy?

A hotlinked image is loaded directly from the server which hosts it each time it is viewed: this made it possible (at least in theory) for the server to track when and how many times someone loaded the image, and by implication when they viewed the diagram. They would have also been able to collect some information about who was viewing it (including the URL of the diagram, and which browser was being used). Now that image requests are proxied, the URLs of diagrams and your browser information is completely hidden, and only a small number of requests for the image will be made regardless of how times you view a diagram, or how many people view it.

It was also not possible to know what the external server would send when a browser requested an image - the external server could theoretically send a file of any type, in an attempt to compromise your browser. While your browser should be able to safely handle any file type, there have been cases in the past where this was not the case, so it is useful to have another line of defense in our servers, which now narrowly restrict the sorts of file types which will be loaded from external servers to your browser when viewing Coggle diagrams.

It’s worth noting that we aren’t aware of any cases where Coggle diagrams have been tracked or compromised using these methods, so this update is a precaution to close off these possibilities pre-emptively - it adds another line of defense to the security and privacy of your data in Coggle.

If you run a web service like Coggle, and need to proxy external images for the same security and privacy reasons we do - then drop us a line at hello@coggle.it: the proxy service we’ve built to do this is extremely scaleable, efficient, and globally distributed, and we’d be interested in seeing if it’s useful for you too!

Other recent changes:

  • Keyboard Shortcuts: You can now use [ctrl] + [s] to close and save item using the keyboard: unlike just pressing [enter] this works even if an item has multiple lines of text, and makes it easier to use Coggle entirely with the keyboard.
  • Improved performance of the documents list, and diagram loading for certain kinds of diagrams.
  • As always, lots of other little bugfixes and improvements, including style tweaks for code blocks and youtube previews, cases where the history slider wouldn’t select the correct version, and in some cases did not reset correctly when closed. Fixed issues with padding of task lists, and improved performance when adjusting the permissions of people a diagram is shared with.

That’s all for now! We always welcome any kind of feedback, but we’re particularly interested in knowing if Coggle is missing keyboard shortcuts you need, so please reach out to us if there’s something missing that you’d find useful.


Posted by James, April 19th 2021.

cogglenewsnewthingsfeaturesroundupsecurityprivacyalwaysimprovingpostedbyjames

New Year New Updates

New year, new updates to Coggle! We’ve been sticking to our new years resolutions and fixing lots of little bugs which were annoying us, but there’s a couple of new features too:

  • new keyboard shortcuts for adjusting colour, shape, line style, and thickness (command can be used instead of ctrl on Mac):
    • [ctrl] + [alt] + [c]: cycle colour
    • [ctrl] + [alt] + [s]: cycle shape
    • [ctrl] + [alt] + [t]: cycle line thickness
    • [ctrl] + [alt] + [l]: toggle line straight/curved (for paid subscriptions)
    • [ctrl] + [alt] + [d]: toggle line dashed/solid (for paid subscriptions)
  • Your preferred zoom level for each diagram is now saved. You can also link to diagrams at specific zoom levels by adding the ?zoom=0.25 URL parameter on links
  • Invitation links, and other sign-in links to diagrams owned by an Organisation with Single Sign On enabled will now redirect to the correct single-sign-on page, instead of the generic login page, and support has been added for SAML deep links.
  • Better handling of text pasted from Microsoft office applications (no more annoying thumbnail images of text caused by image data on the clipboard)
  • Improved editing of markdown links (you can now easily toggle and un-toggle the link for selected text)

As well of lots of other little bugfixes and improvements, including improvements to display of very long URLs, improved display of buttons while holding the hotkey for item removal, and a bug which could cause the cursor to jump when using some CJK input methods, and which cause cause text-input to be slow.

That’s all for now! If you have any feedback about how we can improve Coggle we’re always listening - just drop us an email at hello@coggle.it


Posted by James, Febrary 25th 2021.

cogglenewspostedbyjamesshortcuts

Features Roundup

Noticed a banner telling you to refresh to update to the latest version of Coggle recently? Here’s a roundup of what’s new!

  • Faster Documents List For people with lots of diagrams, we’ve significantly improved the speed that the diagram list pages load: we no longer count all of your private diagrams before showing the page (you’ll notice the private diagrams counter in the top left of the page now stops at >10, instead of showing an exact count). When you have thousands of diagrams even just counting them all takes quite a long time!
  • Organisation Admin Panel The organisation admin panel is now faster and more responsive, especially for Organisations with large numbers of diagrams and members, and it also now includes the guest’s email address as a tooltip for guest members.
  • Improved ShortcutsYou can now use control + backspace to delete single words again, instead of this deleting the whole item. Use control + shift + backspace to delete the whole item. Thanks for all of your feedback about this!
  • Better email address handling Several commonly used email address formats were being rejected by our email inputs – now you should be able to copy and paste addresses from more applications without having to edit them first or re-type them.
  • Presentation Mode Links can now configure which level of a diagram embedded or linked in presentation more should be expanded by default, with the ?expand_level=2 query parameter.
  • Improved search Improved search indexing of recently modified diagrams, and for users with large numbers of diagrams.

As always we’ve also been fixing little bugs, including issues sorting and filtering guest members in an Organisation, an issue where it sometimes wasn’t possible to change the order of diagrams in a folder, improvements to the Microsoft Visio export format, and some cases where our on/off switches weren’t switching as easily as they should.

That’s all for now!


Posted by James, November 16th 2020.

cogglenewsnewthingsfeaturesbugfixesfeaturesroundupalwaysimprovingpostedbyjames
New! Realtime editing activity in Coggle diagrams With the new world of remote work, remote collaborative editing is more important than ever. We’ve launched a big improvement to the way this works in Coggle: now you can see which item everyone else...

New! Realtime editing activity in Coggle diagrams

With the new world of remote work, remote collaborative editing is more important than ever. We’ve launched a big improvement to the way this works in Coggle: now you can see which item everyone else in the diagram is currently editing, or interacting with, including when they’re typing and when they’re just idle.

This makes it even easier to collaborate on your mind maps and flowcharts with your remote team. If you have one of our paid plans this also includes one-click guest editing, where each guest editors have a unique colour for each editing session to help identify them.

Do you live your work life with zoom open in one tab and Coggle in another? Let us know what you think!


Posted by James, October 23rd 2020.

cogglenewthingscollaborationremoteworkremoteworkingremotebrainstormingremotemindmappingflowchartspostedbyjames