I need to send a welcome email and welcome series set of emails to start. I can hand code this, I suppose.
But I want to also plan to handle more advanced drip stuff like as described in this submission: https://news.ycombinator.com/item?id=23070375
Should I be looking more seriously at using a mixpanel partner integration? Are there any self-hosted open-source projects that integrate with mixpanel data pipelines for doing this kind of thing?
I signed up and implemented Mixpanel, expecting to use their messaging feature to trigger sending welcome, drip and other prompting email flows.
However, that product has been deprecated and they want you to use one of their integration partners now.
You can use a worker and scheduling framework like Celery and Celerybeat to e.g. periodically go through your users and generate mails. The advantage is that it's much easier to integrate this with your backend and tie the mails to actual user actions. Just make sure to record which mails you have sent already to a given user to avoid sending the same stuff more than once.
But maybe don't take my advice on this, we're a really privacy-focused startup so we try to keep most of our customers' data in-house for security and privacy reasons, I know that there are a lot of people that will recommend to rely on external services for this (and they might be right in many circumstances).
I then have an AWS lambda function (which also holds our API). After a user "activates" or "logs in", I just schedule a send. Seems to be working fine as of now.
I do hope to have a lambda function running every 24hrs or so in the future, where it just scans the DB to look at user events (alternatively, it can also scan Cloudwatch logs) - and then do some logic to send X email after Y event.
It is true that my product is not ready yet but works like a charm for now.
- Mautic.org (Recently acquired by Wordpress company)
- Sendy.co ( more of a newsletter but you can setup templates and add/remove contacts via api)
- visual template builder
- automatic retries
- switching between service providers (permanently or for failover)
If you implemented Mixpanel via Segment, we can also ingest those events directly from Segment into Courier (or you can call our API directly).
We'll be releasing automations early next year to help make the advanced drip stuff easy – but we aren't there quite yet.
- Did you invite team members?
- Did you set up our GitHub, Slack or Figma integrations?
- Did you fail to complete the signup process?
It's great!
0: https://kitemaker.co, the hotkey-driven issue tracker/product management tool with deep integrations to the tools your team uses every day
Pipe all event tracking through Segment.io including the triggers for transactional emails
Setup Customer.io to listen to the transactional event triggers from Segment.io
Create workflows in customer.io to send follow up, churn and other non transactional emails based on other events coming from segment.io
This makes it super easy for non engineers to change the setup
Customer.io provides email templating, analytics, AB testing and everything else you might need
So use Sendgrid or Mailgun for transactional. Hit their API to send a mail. There are pros/cons around keeping the templates in there, but I would lean that way.
For drip campaigns, I would sync the product database to a tool like Mailchimp or the others ones that have been mentioned. We made an open source way to do that syncing, called Grouparoo.
The only people emailing people without asking them are lame people writing lame code working for lamer corporations.
Any automatic emails would include philosophical thoughts on what constitutes a real and true need to alert the user.
Email is an afterthought that grows as your product grows. Untangling later becomes a big time sink.
We've hard-coded our notifications & templates (sending them with Mailgun). I'm curious how others have architected systems that go beyond even the user notification. For instance, you may be collecting user events for (a) activity feeds, (b) analytics, (c) notifications. Supposedly a tool like Sentry (expensive) sits at the front and then plugs into (a) PSQL for activity feeds, (b) time-series DB for analytics, (c) and marketing automation tools like Autopilot for notifications.
This is all theoretical and I hope someone chimes in with their brilliantly thought-out architecture on this.
Basically, for example, new user drip campaign might be 5 emails, 1 a day, after signing up.
You create the 5 templates, when user signs up, you initiate the 5 transactional emails with send_at datetime parameter +1 day for each. This automatically schedules the emails to go out from mandrill/mailchimp's side, and your app can forget about it.
You just have to make the email templates.
Integrate with their webhooks, and you can track when the emails are sent, open, etc..
We are planning on switching sometime next year as we are no longer that happy with them - documentation is getting more complicated, costs have increased, support is no longer as great as before.
Makes it very easy to iterate/experiment.
Because of the price I have decided to create my own email flows provider. It works like a charm because I adjusted it to my needs.
If you are still looking there it is: undersend.com
A/B testing the whole campaign, not just components inside a campaign. I.e. ability to create multiple versions of a campaign and seeing which one performs the best.
curl --request POST \
--url https://api.automations.io/events \
--header 'Authorization: Bearer key123' \
--header 'Content-Type: application/json' \
--data '{ "event": "Signed Up", "properties": { "userId": 123, "name": "Bob" } }'
We're running a beta right now, give me a shout alex [at] automations.io if you're interested in giving it a spin!