Why I'm switching back to Workflowy

After almost a decade of using Workflowy, I discovered Dynalist, was very impressed, and within a few weeks, imported and switched over a couple days ago. There’s a lot I like about it, but after some real usage, it fails in a few key areas for my use cases. So here’s why I’m switching back. (Feel free to move this to a more appropriate forum category)

I have a very large number of items. I used Workflowy for taking all my notes on everything (checklists are actually a very rare use case for me, so I rarely remove items - I just find my brain thinks best in a hierarchical bulleted list, which these apps are perfect for). I was super impressed by how quick and crisp and responsive Dynalist was, but after importing, I’m guessing the sheer number of items took care of that; it was notably sluggish, moreso than Workflowy is at that number. I split up my monolith into two files, but it still has performance issues. And I don’t want to need to switch between files just to preserve performance.

The mobile app (which is vital to me to capture notes while I’m not at my desktop or laptop), while seeming marginally better than Workflowy’s, is now infuriating to deal with. When opening the app, it takes 3-6 seconds to connect/load. Then I navigate to where I want to add an item and add it, maybe one or two more, when suddenly it will interrupt with the loading screen again for another 3-6 seconds, and revert me to the top of the parent item, losing my place and often most of the item I was typing. This will continue 2 or 3 more times before it seems to stabilize, but that “open app to take a quick note” is the most common use case on mobile, so this is unacceptable for me.

There are a number of issues with moving items that I don’t have the energy to expound at the moment, but among them: You can’t indent an item under another item which has no children while dragging, something I commonly want to do. And bookmarks seem to break if they get moved to a new file.

And here’s the primary functional issue that was the dealbreaker for me. Dynalist tabs in the same browser seem sync to the view opened in the most recently used tab. This means I can’t have separate tabs with different views open with any consistency. This may in fact only be a problem when reloading, but much as I have huge note lists, I also have a ridiculous number of tabs, so I use a tab unloader, and so when I go back to a Dynalist tab that has been unloaded, it loses its place.

Workflowy has its annoyances, but overall is a smoother experience for my use cases. Perhaps I’ll try out Dynalist again after a few more years of polish.


Not discounting most of the points here, but just wanted to mention a couple of things:

  • If you’re on Android, Quick Dynalist is a fantastic app to quickly capture to your inbox. I use it everyday. It would be great if Dynalist had better quick add to inbox natively, but until then it does the job well.
  • A few months ago they rolled out a “dragging indent” feature which I think addresses the problem you mentioned. You simply drag the item under another item to the right of the item (kind of hard to describe, see this link with an illustrative screen recording: https://blog.dynalist.io/2019-june-update/).

For quickly adding items to a list on iOS:

I built myself a little PHP script that uses the Dynalist API. That way, I no longer need to open the Dynalist app at all if I just want to add items.

Instead, I open up the App called “Drafts 4”. It opens to a pure text input field. I type my text or dictate it. Then I swipe and can select a number of destiations. Among them are, a couple of Dynalist destinations, like…

  • the shopping list I share with my wife (each new line of text becomes a separate item with a checkmark next to it)
  • my idea journal (multi-line text become multi-line items within Dynalist)
  • etc.

The parts involved to make it work are these:

  1. Drafts 4 App on iOS (captures my text and sends it via email)

  2. Cloudmailin.com - a free email address that can trigger my PHP script

  3. A simple PHP script on my server: If subject is dynalist-shopping, do this. If subject is dynalist-insights, do that. (Uses different target documents and different formats, depending on the type of input. Like I said, for shopping items, I want each line of text become a new item in the list, and have checkboxes added. For insights or quotes, I want multi-line items to be retained as such. And, of course, they all should go to different “inboxes”.)

I love this setup. I can get any thought to the place where it should go, pretty much instantly.

1 Like

Was your Quick Dynalist a recent installation? I’ve found recently that newly installed versions cannot sync. There’s an issue with the database that the developer says he will fix some time.

That said, I don’t notice any problematic delay in loading Dynalist in either web or mobile.

This is great, but it should really be much easier to do this. I use Drafts, but can access most apps with a simple URL Scheme or callback. There is no need to set up a free email account and rent a whole separate server to run PHP scripts, etc. Why isn’t this possible with Dynalist?

First, thank you David for sharing your experience. I’d be curious to know what “large” means in your case. How many bullets are we talking about, roughly? I’m asking as “large” can mean 10k, 50k, 100k, 200k, or even more bullets, depending on who you ask.


That was fun to figure out. ~41k total.


I’ve had it installed for a while. I had a syncing issue after the Dynalist outage on Monday, but reinstalling the app fixed that. I haven’t had any issues syncing before that incident or since.

How did you figure out how many bullets you have? With the txt backup file? I want to see how many bullets I have :slightly_smiling_face:

Edit: Got it with searching for the “outline” tag in the opml back up file.