How to Coda with Gmail?
Using your Gmail to sent emails based on changes in Coda
About a year ago, — April 2020 — I was exploring Coda and tried to make sense of the integration with Gmail. Frankly speaking, I was not impressed then.
When a client asked me to set up an automation to email an order confirmation in Coda with Gmail my feedback was ‘I am afraid you will be disappointed’. Nevertheless I looked into it again and I changed my mind. What follows are my findings and why I believe the Gmail integration is a great example of how to empower Coda users.
It works
Yes, emailing via Gmail from Coda simply works. Maybe not perfectly, but it works.
I compare the Gmail integration with using MailJet & Zapier. The latter is a professional software solution in which I create templates I fill out with variables living in Coda like your first name, products sold etc. The main advantage of Mailjet is that it looks good, very good and you have a dashboard that tells you all about (non) delivery. This setup requires two paid subscriptions and a few tricks. It is all doable but not simple, nor cheap.
Setting up Gmail with Coda is way easier. The Gmail pack does the job and the options provided in a button are self evident.
I used a Gmail integration in a project that deals with follow-up of lost & found items. I created a few pages, one in which the found item was communicated with the invitation to pay an admin fee. Another page with the tracking code with the return info and so on.
All of these pages got emailed after clicking a button. This button triggered a few actions in this order:
ModifyRows
and Checkbox → True()- Sending the mentioned page → on that page the variables are filtered on checkbox =True(), see below.
- Duplicate values from thisRow to another table
- Delete thisRow
The code to get the right variable injected in the email is — as you can see above — working with a simple checkbox logic. If the checkbox is true in a table, then show the first name (for example). Since the buttons are pushed manually and the rows moved to another table and afterwards deleted, it works fine. It is almost a textbook example of simplicity.
Not perfect but good to go
As you may notice, there are a few differences between the Coda page and the email. The tables come through differently, the currency symbol is not shown, grey lines in the email, but not in Coda. If you have a header on your page, it is not injected in the email; you need to add an image in the page. Icons before the title look weird in the email, so I don’t use them. Graphs are not shown as graphs, but as tables. Dates in tables are formatted back to USA standards. I worked around it via a formula in the canvas to get the EU standard, see below, for more input look here:
Format("{1:00}/{2:00}/{3}",Today().Day(),Today().Month(),Today().Year())
For sure you will find more obscurities if you try to do other fancy stuff via Gmail. For example, cards are not shown as cards, but as a messy code. On the other hand, I have seen html based solutions for a visually appealing result and it works well.
My main point is that it simply works and that I can show my clients how to set up this Gmail integration and teach how to maintain it.
On the other hand, the moment I set-up a MailJet integration, the clients keep coming back to me for every detail.
Gmail is about empowerment of the Coda user. This is what I love most about it.
This integration is not (yet) perfect, but it does the job. And certainly for things like the communication on lost & found items, you do not need a state of the art solution. You want to save time and have a clear communication. Returning lost items is a cost center, not a profit center. Efficiency is key.
Clients can also integrate the emails in Coda. When the end user replies, this email can be read in Coda. This makes it easy to keep an overview.
My advice
I’ll advise my clients how to deal with some inconveniences and they become self confident in building their own solutions. When they call me, it is for other tasks like complex calculations, filter issues that require a deeper understanding and so on. Not so much for a variable in the email. They have seen how it works and can copy the trick.
I hope this article was informative and helpful. Did it help you to solve a problem you unlike would have solved other ways? What about a donation?
My name is Christiaan, and I regularly blog about Coda. While this article is free, my professional services (including consultations) are not, but I’m always happy to chat and explore potential solutions. You can find my free contributions in the Coda Community and on X. The Coda Community is a fantastic resource for free insights, especially when you share a sample doc.