This Week's Sponsor:

Kolide

Ensure that if a device isn’t secure it can’t access your apps.  It’s Device Trust for Okta.


Spark Review: Smart Email

I’ve had a complicated relationship with email over the years. Part of the problem has been the Sisyphean effort of third-party apps that tried to modernize email: the more developers attempted to reinvent it, the more antiquated standards, platform limitations, and economic realities kept dragging them down. I’ve seen email clients for iOS rise and fall (and be abandoned); I’ve tried many apps that promised to bring email in the modern age of mobile and cloud services but that ultimately just replaced existing problems with new ones. Sparrow. Dispatch. Mailbox. CloudMagic. Outlook. Each one revolutionary and shortsighted in its own way, always far from the utopia of email reinvention on mobile.

Spark by Readdle, a new email app for iPhone released today, wants to enhance email with intelligence and flexibility. To achieve this, Readdle has built Spark over the past eighteen months on top of three principles: heuristics, integrations, and personalization. By combining smart features with thoughtful design, Readdle is hoping that Spark won’t make you dread your email inbox, knowing that an automated system and customizable integrations will help you process email faster and more enjoyably.

I’ve been using Spark for the past three weeks, and it’s the most versatile email client for iPhone I’ve ever tried. It’s also fundamentally limited and incomplete, with a vision that isn’t fully realized yet but promising potential for the future.

Mobile Email

When Apple introduced Mail for iPhone in 2007, they bragged about its desktop-class approach to email on a portable device. Today, being “desktop-class” is almost a liability for apps.

Our smartphones and tablets have a much deeper understanding of our schedule, files, location, contacts, and most used apps than they did eight years ago – a knowledge certainly superior to any desktop computer. To truly reimagine email – for many, still an essential component of a daily workflow – a mobile client would have to bring the intelligence and versatility of a mobile-first world to the stale nature of email protocols.1 In other words: why can’t email apps be smarter and work on any platform for any email service?

Modern email apps, and Apple Mail. (Open image in new tab for full size.)

Modern email apps, and Apple Mail. (Open image in new tab for full size.)

I should also provide some context about the email services I’ve tried, left, and embraced again. When I started MacStories in 2009, I chose to go with an IMAP server that I could use with Apple Mail on my iPhone and Mac. There was no iPad back then and Apple wasn’t allowing third-party email clients on the App Store. As the MacStories team grew, we moved our system to Google Apps in 2010, where we stayed for almost three years until, tired of Google’s stance on user data and privacy, I decided to go back to IMAP to have more control on our mailboxes and messages. In the arc of three years, Apple had started allowing email clients on the Store, released the iPad, and kept improving its own Mail app with features such as VIP contacts, photo attachments, and custom mailboxes. In those three years, third-party developers had also started chasing the white whale of email reinvention with proprietary features that locked users into silos – the snooze features of Mailbox are a good example.

Last year, fed up with the slowness of IMAP and lack of innovation in that space, I realized that the MacStories team needed to move back to Google Apps. There are many things worth fighting for in life, but, ultimately, my refusal to use Gmail is no longer one of them. IMAP was effectively damaging the MacStories team with slow search, lack of push notifications, and the inability to try modern clients with useful features. At the end of the day, I have a business to run and a personal life to enjoy. Some of you may not like this (and I still don’t like the idea of Google owning all our email data), but the Gmail ecosystem is, for us, superior to IMAP and it makes us save time. Ideals are important, but I’ll leave this email fight to someone else. Gmail is faster, works reliably with tons of apps, Google is actively developing native and web apps for it, and our Google Apps account is free. We’re back on Gmail.

Since 2013 (when innovation in mobile email clients picked up thanks to Mailbox), I’ve tried dozens of iPhone and iPad clients for IMAP and Gmail. None of them have stuck with me longer than a month. Every time I tried a new client, it was good in some aspects but sorely lacking in others. My frustrations with email grew stronger after the release of iOS 8: Apple had given developers the tools to let their apps communicate through extensions, and yet most clients (including Apple’s) weren’t taking advantage of them to make email flexible and open to external integrations.

Since moving back to Gmail late last year, I’ve been using Inbox, Google’s alternative take on Gmail that wants to make email smarter and less intrusive. Inbox is fast, has push notifications, supports filters, and is trying interesting things with location snooze and inline previews of attachments and YouTube links. These features are exclusive to Inbox and the Google ecosystem, but at least they work everywhere because Inbox is available on iOS and the web.

All this to say that, yes, I’ve had a complicated relationship with email, and it always comes down to apps. I’m now at the point where, each day, I wake up to at least fifty new emails, some more important than others; I receive about a hundred more before I go to bed – and the cycle starts anew every day.

I like email. I just despise traditional implementations of it. My ideal client would be aware of the content of each message and try to categorize them all for me, like a digital assistant, to show me stuff that’s important first; it’d have fast and intuitive search to find messages quickly; it would work with the web services and apps I use every day to let me save files, links, dates, and todos with the intelligence that I’ve come to expect from the iOS ecosystem.

I want an email client that is the opposite of desktop-class. I need a mobile-class email client.

With Spark, Readdle has gotten close to my vision for a mobile email client that is equal parts smart on its own and flexible when I’m in control. Spark combines aspects of automated email processing with user customizations like app integrations, share sheets, smart folders with filters, and even custom menus and swipes.

The mix of automation and user personalization is an interesting one, but is it enough to pit Spark against the likes of Apple Mail, Mailbox, Outlook, and Google’s Gmail and Inbox? Can Readdle’s extendable, David-sized client for iPhone hope to replace the Goliaths of big companies and their walled ecosystems?

Email Cards and Viewing Messages

On the surface, Spark looks like a simplified version of Google’s Inbox app, heavily influenced by the company’s concept of automated email organization. While in Inbox emails are automatically sorted in bundles for common message types such as purchase receipts and travel updates, Readdle built a ‘Card’ system for Spark, limiting it, however, to three types of messages.

Google Inbox and Spark.

Google Inbox and Spark.

Once set up, Spark will take a look at your email history and start to file new messages in three categories: Personal, for new messages addressed to you and written by other humans; Notifications, for messages sent by automated services such as Twitter or Amazon; and Newsletters, where each morning I find the great content produced by Ben Thompson and Neil Cybart, who write two of my favorite daily newsletters.

The idea of automatic email sorting is a solid one: we are inundated with a constant stream of messages on a daily basis, and yet most email clients tend to treat all messages equally, with the same notification settings and without any distinction for different kinds of email content they should be able to understand. Inbox is reimagining the entire system by applying Google’s smarts and user controls to messages and bundles, with laudable results. In the months I’ve spent using Inbox, I’ve come to depend on the automatic sorting in Updates and Low-Priority, which separates the wheat from the chaff and lets me see important messages at a glance. I can even set separate notification options for each bundle, which is a nifty way of dealing with incoming messages. In the weeks I spent using Microsoft’s Outlook earlier this year, I enjoyed their similar take on important messages called Focused Inbox.2

Readdle has been paying attention to where mobile email apps are going; Mailbox and Inbox have had an obvious influence on the functionality of Spark. The app borrows freely from Mailbox with a snooze feature and, again, Inbox with the ability to “pin” messages so they’ll be highlighted until you archive them.

Upon further inspection, though, there are some fundamental differences with Inbox and Mailbox: Google offers eight built-in bundles, while Spark has three; Inbox is exclusive to Gmail, but Spark works with five email providers and it lets you configure your own IMAP server as well; more importantly, Inbox and Mailbox offload all their processing to the cloud, while Spark is entirely based on local on-device processing to understand what messages are about.

Spark’s biggest asset – the feature that will prove essential to the app going forward – is the heuristic engine Readdle created to understand if a message is from a human or a web service, what it contains, and how it relates to other messages in your account. This engine is entirely local to the iPhone and it doesn’t take place in anyone’s cloud.3

This engine is at the core of Spark, and it informed a variety of design decisions and features that are made possible by this superior parsing of messages.

Cards are the most visible example. Without any training necessary, Spark knows which message threads come from humans and which ones can be assigned to newsletters or general notifications. The Readdle team told me they’ve built a complex language model to recognize human messages and automated ones; my tests indicate the claim is accurate. Spark categorized new issues of newsletters in their own card as soon as I started using the app, and it filtered emails like Kickstarter updates and IFTTT weather alerts into the Notifications card. I had to train the app to move TestFlight emails from Newsletters to Notifications, but, overall, Spark was pretty good at assigning different messages to different cards.

Google has a more granular approach to email categories, and it comes with a handy Low-Priority bundle that, as the name suggests, collects (and can be trained to collect) messages that aren’t important to you. This is where I’m torn. While I like Google’s advanced bundle system, it lacks the simplicity of Spark and how it splits messages in three basic categories. Plus, Spark is not exclusive to Gmail.4 On the other hand, Spark lacks a way to discern important messages: because messages can just be new, notifications, or newsletters, everything that isn’t assigned to a card or caught by the spam filter ends up in the Personal card, which results in a bunch of messages that might have been written by humans but should be downvoted to a less prominent card. Spark needs an ‘Important’ card.

Readdle calls their system ‘Smart Inbox’, and it’s worth noting that you can view a traditional Inbox section without the smart categorization. Furthermore, unlike Google, Readdle has added support for a unified inbox to Spark. Cards will automatically sort and display messages from all your accounts, and you can even customize a card’s behavior for multiple accounts by tapping & holding its title.

By default, cards show messages from your Smart Inbox and all the accounts you’ve added to Spark, which is a fantastic way to bring messages from multiple accounts together and categorize them within the same system. If you want, though, you can display the same card multiple times for each account, disable cards for some accounts, or group accounts inside one card to choose which messages you want to see every time.

Spark’s ability to understand contacts you care about has been used for notifications, which are both well done and limited. Spark assumes that people you converse the most with are inherently more important than updates and newsletters. Therefore, it offers three options: no notifications, alerts for every incoming message, and smart notifications. The latter is what I turned on: whenever I hear Spark’s notification sound, I know that it must be a message I’m interested in, and 90% of the time it is. With the smart setting, I end up being disturbed only by emails that are important, and, especially with the Apple Watch, this has been helpful to reduce the amount of distractions from my inbox.5

The flip side is that, unlike Inbox, Spark doesn’t let me set per-card notifications. Google’s Inbox app allows me to choose whether a bundle is worth getting a notification from and how often I should be presented with any given bundle in my inbox. Perhaps I want to receive notifications for the Updates bundle and show it in my inbox every day, but I may prefer to mute notifications for the Finance bundle and make it pop up in my inbox only once a week.

Spark doesn’t offer these controls just yet, but I wonder if they’ll be added as the app matures and lands on more platforms. Part of Readdle’s plan with Spark is to extend it with more card types in the future, which are already advertised as ‘coming soon’ in the app’s settings. Readdle has devised five card types: message, service, content-based, non-email, and application cards. Currently, the company is hinting at the possibility of grouping common emails such as receipts from Amazon and flight information, but they’re also listing future cards such as statistics, weather, and important messages. I think it only makes sense to offer deeper control over cards and notifications as the app learns how to organize messages in more categories. The current solution won’t scale.

Using Spark’s Smart Inbox with cards and smart notifications has been a nice break from Google’s lack of unified inbox, which forces me to constantly jump between accounts and deal with different levels of bundle training. I’ve enjoyed the consistency of Spark’s Newsletters and Notifications cards, and I like how all messages inside a card can be archived with one tap. These features and design choices alone make processing messages in Spark faster than any other client I’ve used. Spark’s structure works well if you deal with lots of messages every day, and it brings some much needed clarity to otherwise confusing and overcrowded inboxes.

Messages can also be snoozed and pinned when you don’t want to deal with them right away. These features have become commonplace in modern clients like Mailbox, Outlook, and Inbox, and they’re usually implemented as proprietary filters on top of email and they’re exclusive to each app. This is why, for example, a message snoozed in Mailbox won’t be scheduled in Outlook, and so forth.

Spark takes a middle ground approach that doesn’t have all the options found in Inbox – by far, the most advanced email snoozing solution I’ve tried – but that also ensures basic compatibility with other clients. Both pins and snoozed messages can be viewed as modal panels on top of the inbox by tapping icons in the title bar or the bottom widget (more on this in a bit); pins also have their own inline card in the inbox. In Spark, pins are actually based on flags: if you open a message pinned in Spark in another client like Apple Mail, it’ll have a regular flag. This lets you retain a basic organization of important messages even when moving between clients, which is a good choice.

The implementation of pins and snooze in Spark is fairly straightforward. If you’re coming from Inbox, you’ll be disappointed to see that you can’t attach reminders to messages or snooze them to specific locations. The lack of options wouldn’t be a problem for me – I do like the simplicity of the system and how pins work as flags – but I would have preferred to at least have notifications for snoozed messages. When you snooze a message, it gets moved to the snoozed section and it gets an orange indicator for the date; you won’t, however, get a notification when the message is due, which is the entire point of snoozing messages to be reminded at a later date.

Readdle’s email engine has allowed the company to build a terrific message viewer. Since I started using Spark, I’ve never seen ugly formatted conversations with quoted responses in different colors that I always end up seeing in other apps. I’m impressed by how Spark can clean up conversations and split threads in nicely formatted messages: at the bottom of each message in a conversation, you can tap a Show History button that will load the conversation in reverse (from newest to oldest) so you can see previous replies without having to scroll up.

Spark is incredibly intelligent at cleaning up multiple replies and this feature even works with forwarded emails, which show up as inline previews so you can reply to the original sender and not to the person who forwarded the email. I’ve tried hundreds of email apps for iPhone over the years and Spark has, by far, the best implementation of threaded conversations and forwarded emails I’ve seen.

I’m also a fan of the interface adorning the message viewer. At the bottom, there’s a tab bar with the usual shortcuts to mark as unread, reply, archive, and actions. At the top, Spark features buttons to pin and snooze a message. Each message is almost laid out like a web article – a large subject centered at the top of the screen, with a date on top of it and details underneath.

You can tap the Details button to open a popup with lots of extra information such as email addresses, timestamp, and message type. Tapping on the type lets you train Spark to move a message to another card and you can tap the bell icon if you want to turn on notifications for a thread. You can also tap the sender’s email address to copy it, create a new message, or create a new contact for it.

The compose experience is well done. When you’re writing a new message, you can tap & hold in the body field to show the copy & paste menu and then choose ‘Attach’ to insert an attachment from a variety of sources supported by Spark (more on this later).

You can also tap the ‘x’ button when composing a message and choose to keep a draft or minimize it; the latter, like Apple’s Mail for iOS 8, will shrink the message to a floating popup so you can go back to your inbox, peek at another message, then resume writing. It’s a delightful touch that makes working with email on an iPhone easier.

Signature recognition is another feature made possible by Readdle’s email technology. As soon as you start using Spark, the app will analyze messages in your Sent folder and try to recognize signatures you’ve recently used. Then, upon composing a message, Spark will offer a list of suggested signatures that you can accept to add to your signature list.

If you choose to have multiple signatures in your list – say, for work and personal email – you can swipe at the bottom of an email to switch between them. This is the first time I’ve seen an email app for iPhone have such an easy implementation of signatures – it feels obvious once you’ve tried it. I don’t particularly care about signatures, but I can see why this could be a big deal to people with lots of email addresses, each with a unique signature.

Perhaps I’ve spent too much time comparing Spark to Google Inbox, but I believe that’s necessary as there are obvious similarities between the two. It’d be wrong, though, to get too caught up in the comparisons because, in the end, cards are just one of the many features of Spark, which is a client that works with any email provider. That’s the breakthrough for Readdle: they may have been inspired by Google and Dropbox in some of their additions to email6, but they’re doing much more than making an app that only works for Gmail or that relies on traditional email features.

Automatic email organization with heuristics, smart notifications, cards, clean message previews, pins, snoozed messages, and more message types and cards on the horizon. Inbox may have more bundles and Google has the resources to scan your email and present relevant information in Google Now7, but you still have to be willing to use Gmail and be locked into Google’s ecosystem. Readdle is building a third-party client with modern features that will work with any email service. They’re trying to improve upon every traditional aspect of email apps for iPhone, leaving desktop metaphors behind to offer what Apple Mail and other third-party apps never did.

Smart Inbox is just one aspect of this effort, and it’s already useful and well designed – no matter your email provider. I prefer the structured inbox of Spark to uncategorized lists of messages found in other clients, and I find the card layout with inline message previews more readable than Google’s Inbox bundles as well.

Spark’s other big feature is smart search based on natural language. If you’ve ever used apps with natural language support like Fantastical and Todoist, the concept will be instantly familiar and just as welcome as you’d expect. In Spark, you can type queries like “attachments from Myke this month”, “messages to Stephen with links”, or “messages with files this week” and the app will return results in a second, offering you to save a search or restrict it to a single account. Smart search in Spark is easy to use, fast, and a unique idea I haven’t seen in other email apps for iPhone.

Smart search makes so much sense as a feature in an email client in 2015, I now search for messages on my iPhone even when I’m working on the iPad because the filters provided by Spark are superior to anything else. I know that Gmail has long supported a complex syntax for search and filters, but Spark – like Fantastical and Todoist – is easier to learn and use every day.

As you type in the search bar, suggestions for commands are displayed below and you can tap them to add them to your query. When you bring up search, Spark immediately displays shortcuts to recent and saved searches – a handy way to look for messages you need to find often. Because of the local processing that happens on your device, search is fast at returning results from several years ago – and, even better, it knows how to associate multiple email addresses to the same contact (useful for people who have used multiple addresses over the years).

The smart search technology is also used in other sections of Spark to speed up the user experience. When composing a new message, you don’t have to tap on individual ‘To:’ or ‘Cc:’ fields: just type something like “cc Stephen” and Spark will figure out how to properly configure that address in the Cc field.

You can create smart folders with natural language search in Spark, too. I’ve long wished for an iOS email app capable of creating smart folders like Mail on OS X, and Spark delivers on that front. Smart folders can look in individual accounts or all accounts at once and they can carry a smart filter based on natural language search.

In my case, I’ve created a smart folder that looks for messages that match “From iTunes Store with subject TestFlight” and I now have an easy way to find every email for the TestFlight betas I receive without having to organize those messages in a specific folder manually. The dynamic nature of smart folders married with the intelligence and speed of smart search is a perfect match for Spark.

I only have two quibbles about smart search and smart folders: you can’t build a filter that matches messages from multiple email addresses and there’s no syntax guide that you can read before starting a new search.

Overall, smart search is a good example of Readdle taking a popular feature from other iOS apps and remixing it to work for email. I’m sure that the list of supported commands will keep growing, but smart search is already solid and flexible enough in this first release.

Integrations

Since the launch of iOS 8, I lamented the lack of integration between email clients and extensions. iOS 8 opened up amazing possibilities to integrate apps and document providers with each other, and yet Apple wasn’t taking advantage of those new technologies in their Mail app. Longstanding problems such as the inability to attach files to messages remained after iOS 8. Some developers later added support for extensions and document providers in their apps, and I elaborated on the issues with share sheets and email messages in my article about iOS 9 wishes.

Spark follows in the tradition of other Readdle apps like Documents 5 and PDF Expert and offers a combination of custom integrations with third-party services as well as support for share sheets and document providers.

In the app’s settings, you can connect the following services to Spark:

  • Dropbox
  • Google Drive
  • Box
  • OneDrive
  • Readability
  • Pocket
  • Evernote
  • OneNote
  • Instapaper

You can have multiple accounts for each service and, while not exhaustive, this is a pretty good start to save attachments and links from email to other destinations.

When you receive a message that contains a link, you can tap & hold the link to bring up a custom menu. Spark doesn’t default to the share sheet; instead, using a model similar to Pocket, it shows custom options first with an additional Share button to view all your installed iOS extensions. I like how I can send links to Workflow, Drafts, and Todoist using extensions inside Spark; I wish connected accounts like Instapaper and Evernote didn’t require a confirmation each time.

Spark behaves in the same way for attachments inside messages. If previewable (as is the case with images), a file will be opened in a modal preview with buttons to save it in one of Spark’s connected services, attach it to a new message, or share it with extensions.8 I’ve mostly used extensions because they give me more flexibility than the selection of connected services offered by Readdle and they are consistent with my workflow.

Unlike Apple’s Mail app, Spark lets you attach files to messages. When you’re composing a message, you can show the copy & paste menu to display formatting options and an Attach button; tap it, and you’ll get a custom panel to take a picture, attach a photo from your library, pick a file from a connected account, or open iCloud Drive.

The iCloud Drive option is the most interesting one: you can tap the Locations button in the upper left corner to move from iCloud to other iOS document providers like Dropbox. No matter the service you use, the file you pick will always be attached to a new message in Spark. This is how Mail should work on iOS.

Spark also comes with its own share extension to send new messages from anywhere on iOS. If you’re in Safari and you want to email a link to someone, just open the share sheet, pick Spark, and you’ll get the full app UI to compose a message. This works for links, photos (even multiple ones), and files.

I appreciate how Readdle built native integrations through accounts in Spark, but they’re mostly redundant in the age of extensions on iOS 8. For users who don’t have the need for multiple accounts in Evernote and Dropbox, those apps’ pre-installed extensions usually do a better job than Spark’s custom integrations, and I wish there was a way to turn off custom services completely and always use the share sheet. In my experience, iOS extensions have always been faster and more reliable than Spark’s custom options.

Spark is also inferior to solutions like CloudMagic and Dispatch when it comes to turning emails into tasks. CloudMagic has native integration with Todoist and Wunderlist to make messages actionable and set reminders for them, while Dispatch sports excellent share sheet compatibility and native support for Todoist and other iOS todo apps like OmniFocus and Things. Currently, there’s no way to turn messages into tasks with Spark.9

I’m glad that Readdle is supporting both native iOS extensions and custom integrations, but I wish extensions were given more visibility. Spark defaults to showing custom services even if you haven’t logged into any of them, and I’d like to always be taken to iCloud Drive or the share sheet. I’m also hoping that integration with todo apps and services is on the roadmap – snoozing and pinning messages can’t be the only way to make them actionable.

Personalization

Readdle has put a big focus on making Spark highly customizable – from both a visual and functional perspective. You can customize three aspects of Spark: what you see in the sidebar, how swipe gestures work, and the compose widgets in the inbox screen.

Swipes are self-explanatory and in line with what other apps like Boxer and Mailbox have done. You can customize long and short swipes to the left and right for actions that include archiving, snoozing, marking as unread, and pinning messages. I like the options available here, but I would have loved to see support for quick actions as well – such as saving a message as PDF with a swipe or creating a todo from a message without even opening it. Swipe gestures are ripe for more options, but they already offer pretty good choice.

Widgets are interesting: you can choose between two placements and you can customize the buttons that show up at the top or bottom of your inbox. If you go with the bottom layout, you’ll have a toggle for smart inbox at the top next to a search button; at the bottom, you’ll see floating buttons for compose and a radial Path/Pinterest-like menu to which you can assign any shortcut you want. You can use the menu to open your snoozed and pinned messages, or you can put your calendar and favorite smart folders in there. I like how this menu looks, but I’d rather have faster access to sections than a nicer layout with cute transitions.

That’s why I prefer the top widget: shortcuts are always visible in a top toolbar with no menu to expand and the app feels faster to use. Like any other customization, you can change the look of the app from the settings or by hitting the appearance button in the sidebar.

Customizing the sidebar itself has indeed been one of my favorite activities in Spark – if anything, to understand which folders and sections I need the most.

Spark lets you assign shortcuts to two areas of the sidebar. Besides default options like quick access to snoozed messages and your archive, you can enable shortcuts like a list of attachments in your inbox (reminiscent of Outlook), folders, smart folders, and messages you’ve recently opened.

Personalization is one the most important features in Spark, and Readdle is making a good call here. It’s impossible to create the perfect set of features for a power user email app, so personalization needs to be the feature for everyone. I may prioritize smart folders and attachments, but someone else may want faster access to the built-in calendar and pinned messages. All features are equally important in the app’s big picture, and all needs have to be addressed in this type of product. Personalization and feature additions will have to evolve in tandem as Spark grows.

Apple Watch App

The Apple Watch app is one of my favorite Spark features alongside smart search and cards. I didn’t think I’d ever like email on my Apple Watch until I tried Spark. It sounds absurd, but bear with me.

Spark for Apple Watch has three large buttons at the top to view messages in your Personal, Newsletters, and Notifications cards. Icons are highlighted when there are new messages; otherwise, you can scroll (with your finger or the Digital Crown) to view your full inbox, pinned messages, archive, and sent mail. The card buttons at the top are a good way to selectively drill down into your inbox and glance at specific types of messages. I’ve started using Spark on my Apple Watch to see what’s new in my Personal card when I have 30 seconds to spare – it’s a nice way to see what’s happening in my email without drowning in it.

My favorite part, though, is how Spark lets me triage messages in two taps. When you’re in a list of messages, you can use Force Touch to mark all as read; if you’re inside a message, pressing firmly will bring up buttons to mark as unread or pin. And if you want to quickly act on messages, you can do that as well: scroll, and you’ll find buttons to reply (with dictation, quick replies10, and emoji), archive, snooze, and delete.11

Don't worry. Myke is safe. For now. Probably. We'll see.

Don’t worry. Myke is safe. For now. Probably. We’ll see.

What I particularly like about Spark’s Watch app is how a complex technology turns into simple, effective interactions on your wrist. Smart notifications are the perfect example: whenever my Watch taps me with a Spark notification, I know that it’s from someone I care about thanks to the app’s smart engine. It doesn’t require me to build a list of VIP contacts or favorites – it just knows. Then, I can glance at a message and decide what to do in a second. Do I want to reply to this right away or can I archive it? Should I snooze it for later? Would it be okay to send a thumbs up emoji as a reply? All this, for email, from my Apple Watch.

It’d be great to have custom quick replies, search (it’d work well with natural language and dictation), and faster performance in the future. But this doesn’t change how I’m using Spark on Apple Watch today. I thought that the idea of email on my wrist would be ridiculous, but there’s nothing absurd about acting on important information when it’s convenient.

Quick Replies and Read Receipts

I should note that Spark does have its own take on quick replies – only on the iPhone, and they won’t result in regular email messages. Together with read receipts, this is one of the strangest features in Spark.

Below each message in Spark on the iPhone, you’ll find a quick reply bar with buttons to “like” a message, say “thanks” for it, and “smile” at the sender – each with a custom emoji-like figurine. If you tap one of these buttons, Spark won’t, say, bring up the keyboard with a pre-filled message that says “This is great!” or “Thanks!” – it’ll automatically send an email in reply with messages like “Federico smiled at you”. The first time you try it, it’ll be odd; I found that this feeling only got worse when I tried to send quick replies to users who didn’t have Spark and asked me if they received an automated message from me and if I really meant to send a smile.

Everybody's happy in email these days.

Everybody’s happy in email these days.

I’m not saying that this is inherently a bad idea: Boxer has featured a similar option for a while now, and I understand the desire for nicely formatted responses that look good and only take one tap to express common feelings of gratitude. I get it. But the system works best if everyone you exchange emails with also uses Spark and knows about quick replies, otherwise they start to feel like inadvertent promotion for the app. Quick replies are nice, but each one of them carries a “Spark by Readdle” link at the bottom that takes you to the App Store, which is…uncomfortable for me.

Perhaps I’m not the target user for this kind of feature, but I don’t think sending quick replies will become part of my daily email routine. I could see them being better if there was a way to customize them and get rid of the link, but I’m not sure.

Read receipts make me even more uncomfortable, and I deactivated them as soon as I knew how they worked. Basically, read receipts allow you to know when the recipient opens a message you’ve sent. They work by attaching an invisible pixel to a message that, using (my guess) a private URL, can know when it’s loaded (i.e. a message is opened) and therefore inform the sender that the message has been “read”.

I get why the idea of treating emails like iMessage may be appealing to some, but I’m not okay with read receipts in Spark for two reasons. First, the implementation feels creepy and it’s not explained at all: there’s just one toggle in the Settings to enable/disable read receipts, and I didn’t know how they worked until I asked. I bet that most users will turn on read receipts thinking that it’s an evolution of traditional email technology when, in fact, Spark is attaching invisible tracking pixels to messages that others may not even know about. If you turn on read receipts and send a message to someone who doesn’t use Spark, you’re still going to be able to know if that person opened your email. I find that unsettling – and maybe features like this have been possible for years12 in dedicated newsletter services, but there should be a detailed explanation in a consumer product like Spark. Everybody has their own comfort threshold in software, and read receipts cross that line for me.

My second point, in fact, is that I get extremely self-conscious about read receipts and letting people know that I read their message but I can’t respond right away. This is why I keep read receipts turned off for iMessage and why I hope Apple will add per-contact read receipts in iOS 9. I receive hundreds of messages on different services on a daily basis, and I feel bad knowing that someone else thinks I’m ignoring them. Am I overthinking this? Yes. But if I can avoid using a technology that will facilitate this sort of behavior and save me from the frustration of read receipts, I will.

That’s why I feel uneasy about Spark having read receipts implemented this way – although I also know that other services can already do this and it was just a matter of time before a commercial product figured this out. What can I say – sometimes I get emotional about the tiniest details of software. Feel free to smile at me in an email to make me feel better.

Other Shortcomings

There’s lots to like in Spark, but also features that could have been implemented better or shipped in this first version. Here’s a list of more shortcomings I noticed in Spark 1.0.

  • No iPad or Mac app. It looks like Readdle is going to work on one of these two platforms next, but, like many other modern email apps before, Spark is iPhone-only at launch. This could make it difficult to use it as your only email client for now.
  • There’s no landscape support on the iPhone 6 Plus. Spark is a portrait-only app, which is too bad considering the extra possibilities granted by bigger iPhones. It’d be useful to compose emails in landscape and turn your iPhone sideways to see the sidebar and inbox simultaneously.
  • There’s no in-app browser for webpages. Tapping links in Spark always launches Safari. There should be an option to stay in the app.
  • No default browser. Similarly, you can’t set Chrome as your default browser if you have the app installed. I’d like to see Readdle add support for Google’s x-callback-url to quickly return to Spark after opening a link.
  • The calendar should do more. There’s a built-in calendar in Spark, but it’s too barebones even to simply create events. The calendar has a month view at the top and a vertical list of events at the bottom. You can tap dates in messages13 to confirm your availability14, but the event creation screen uses the system calendar UI, which is slow to use when compared to Sunrise, Fantastical, or Readdle’s own Calendars 5. Furthermore, the subject line isn’t used for the event title and calendar events created off email messages don’t retain a link to the original message for context. Microsoft has a deeper integration between the email and calendar parts of Outlook for iOS15, and there’s plenty of room for improvement in Spark.
  • Extensions don’t work when viewing full messages. If you use Gmail and long messages get clipped, Spark can view those messages in full without opening a web view. However, tapping links in the Full Message view won’t show extensions, which is a bug I hope gets fixed soon.
  • You can’t view recent contacts or people you email the most. Both Outlook and Google Inbox have their own ways of displaying recent contacts from your account. Spark has a Recently Seen section for messages, but it doesn’t have a counterpart for people. It would also be nice to have statistics on the people you contact on a daily basis.
  • You can’t select multiple messages at once. I like that you can archive all messages from a card at once, but what if I want to select some messages and do something else with them? There should be a way to batch-select messages and act on them.

Wrap Up

Many parts of Spark feel unfinished. There’s no iPad and Mac version; acting on multiple messages at once is impossible; and, the app’s vision for email cards isn’t fully fleshed out with only three message types and no way to view important messages only. There are some missteps – like read receipts, a simplistic calendar, and the lack of integration with todo services and apps. Spark is, right now, just an iPhone app, and it’d be tricky to use it as your only email client if you also happen to work on a Mac and an iPad. Making a modern email client that works with any service implies making that client available on any platform as well, and that’s not where Spark is at today.

I’m lucky enough to know someone who gets a lot of work done every day on multiple devices. I asked my friend Myke (who was also a Spark beta tester) about his email workflow, and I found his perspective unique and helpful when compared to how I work on iOS. I asked Myke if he wants to use Spark as a 1.0 product that’s only on the iPhone. Here’s what he said:

Not right now, and that’s nothing against Spark. I think Spark is really powerful and has some very cool features, but I cannot switch to it right now, because if I really want to take advantage of what it’s capable of, I need to have it everywhere.

It was the same with Mailbox. I didn’t switch to it until they had a Mac app. And that’s what I need from Spark. I split my time between my iPhone and my Mac enough that if I start to use a system that automatically categorises email or that can snooze emails, I want it everywhere. Weird things start to happen when you mix systems like that.

I am going to keep Spark installed as it does some things so much better, like search, but I won’t be considering switching from Mailbox until there’s also a Mac app.

Myke’s take is spot on, and I’d have the same problems if I didn’t work from my iPad and iPhone all the time anyway.

On the other hand, Spark is an impressive email app for iPhone. The heuristics used to power smart notifications, cards, signature recognition, and smart search is a tremendous asset to Readdle and it’ll determine new features that will be brought to Spark in the future.

I’ve never seen anything like Spark’s smart search and smart folders in email clients for iPhone before, and those two have been nice additions to my workflow. Spark is also the most customizable and versatile email client I’ve seen so far thanks to its settings for swipes, notifications, sidebar folders, and other options that can help me make email my own. And then there’s the Watch app, where complex technologies are completely abstracted to offer a quick and intuitive utility to triage email and be notified of important messages with a subtle tap.

What Spark does right outweighs the flaws and areas that could be improved. The foundation is solid: Readdle has looked at the direction taken by popular email clients in the past few years and leveraged their expertise with integrations in Documents 5 and PDF Expert to make a fresh email client for iPhone that helps you navigate your inbox, find messages quickly, and integrate with cloud services and iOS extensions. Many have tried to reinvent email, and Readdle’s proposal is deceptively simple: smart email organization, natural language, and user customization.

Spark has the potential to a be a financial success for Readdle as well. Once the free app has expanded to multiple platforms, I can see how the company could start charging for premium accounts with more ‘smart’ features, additional advanced settings, or perhaps extra cards as in-app purchases. Spark appears to be already set up for this kind of business model, and I think going with a free product that anyone can try is the right move for an indie company that wants to compete with Google and Microsoft.

I often wonder why iOS email apps can’t be smarter and work with any service. Despite its (many) imperfections, Spark for iPhone is that kind of new email client. I’ve been using Spark with my two Gmail accounts instead of Inbox, and while I initially missed Google’s take on bundles, I enjoyed Spark’s versatility more. Having smart folders, natural language search, smart notifications on Apple Watch, and integration with extensions has become something I expect from email on my iPhone.

Spark wants to make email smarter and flexible. It may not be perfect, but it’s what we need today.


  1. There’s hope for the future. ↩︎
  2. Google also has a similar feature in their Gmail app called Priority Inbox. ↩︎
  3. When you first add accounts to Spark and the app starts scanning your message history, your iPhone may get slightly warmer due to the local processing happening on the device. ↩︎
  4. Google doesn’t have a built-in Newsletters bundle, although you can create a custom one if you wish. ↩︎
  5. This is why I believe Spark will soon receive a visual distinction for important messages with a new card – the feature is already in place with smart notifications. ↩︎
  6. But, then again, even Apple “copied” the message gestures from Mailbox two years ago↩︎
  7. It’s impressive when you receive a shipment notification on Gmail and you immediately get a shipment card in Google Now with package tracking. Same for flight notifications and hotel emails. ↩︎
  8. If it can’t be previewed (like .zip files), these buttons will be displayed immediately upon tapping the attachment. ↩︎
  9. Unless you count printing a message to PDF and sending that to other apps. ↩︎
  10. Alas, Spark only offers two options for quick replies: “Thanks” and “Got it”. Readdle can’t plug into the same contextual reply engine that powers Apple’s Messages app, but they could add support for user-defined quick replies. Hopefully in the next version. ↩︎
  11. Most of the time, messages can be read directly on the Watch, but if they contain too many images or multimedia that can’t be displayed on the device, Handoff will let you pick up the same message on the iPhone. ↩︎
  12. For example, MailChimp can track email open stats for our newsletter, MacStories Weekly↩︎
  13. Thankfully, time zones are properly translated to your locale when you tap on them in Spark. ↩︎
  14. You can also quickly confirm calendar invitations with one tap. ↩︎
  15. You can send available times from your calendar when composing an email in Outlook. ↩︎

Unlock More with Club MacStories

Founded in 2015, Club MacStories has delivered exclusive content every week for over six years.

In that time, members have enjoyed nearly 400 weekly and monthly newsletters packed with more of your favorite MacStories writing as well as Club-only podcasts, eBooks, discounts on apps, icons, and services. Join today, and you’ll get everything new that we publish every week, plus access to our entire archive of back issues and downloadable perks.

The Club expanded in 2021 with Club MacStories+ and Club Premier. Club MacStories+ members enjoy even more exclusive stories, a vibrant Discord community, a rotating roster of app discounts, and more. And, with Club Premier, you get everything we offer at every Club level plus an extended, ad-free version of our podcast AppStories that is delivered early each week in high-bitrate audio.

Choose the Club plan that’s right for you:

  • Club MacStories: Weekly and monthly newsletters via email and the web that are brimming with app collections, tips, automation workflows, longform writing, a Club-only podcast, periodic giveaways, and more;
  • Club MacStories+: Everything that Club MacStories offers, plus exclusive content like Federico’s Automation Academy and John’s Macintosh Desktop Experience, a powerful web app for searching and exploring over 6 years of content and creating custom RSS feeds of Club content, an active Discord community, and a rotating collection of discounts, and more;
  • Club Premier: Everything in from our other plans and AppStories+, an extended version of our flagship podcast that’s delivered early, ad-free, and in high-bitrate audio.