you've got mail! - transactional e-mail @ drupaljam 2014 - vincent van scherpenseel

Post on 01-Nov-2014

396 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Ondanks de sociale revolutie is e-mail verre van dood. Dankzij services als Mandrill, SendGrid en MailGun stuur je eenvoudig transactional e-mail vanuit je Drupal project, zonder dat je zelf een e-mail server hoeft te onderhouden. Maar hoe zit een succesvolle transactional e-mail strategie in elkaar, waar moet je op letten en hoe zet je dit medium het effectiefst in? In 45 minuten leer je alles over de mogelijkheden van transactional e-mail aan de hand van praktijkvoorbeelden en technische best-practices.

TRANSCRIPT

you’ve got mail!drupaljam 2014 vincent van scherpenseel

introductie

Vincent van ScherpenseelExperience Designer

Transactional e-mail Individuele e-mail uit je app.

voorbeelden

waarom niet zelf versturen?

1. Deliverability

2. Maintenance

3. Actionable insights

+4. Kosten

services

services

1. Goede deliverability

2. Developers-friendly

3. Geen kosten tot 12.000 e-mails

programma

1. Templating Waarom een goede template, en hoe?

2. VersturenHoe verstuur je de e-mail?

3. Meten en optimaliseren Hoe optimaliseer je je campagnes?

templating

versus

round 1: e-mail templates

round 2: website templates

waarom een mooie template?

1. Transactional e-mail is vaak het laatste contact.

2. In geval van bevestigingen worden e-mails meerdere malen bekeken.

3. Waarom veel geld en tijd stoppen in een professionele website, maar niet in een e-mail uitstraling?

4. Branding opportunity.

templating best-practices

• 90’s revival!

• Gebruik maximaal 600px breedte.

• Gebruik standaard fonts (Arial, Georgia, Verdana, ...).

• Afbeeldingen worden standaard niet geladen.

• Beweging alleen mogelijk middels GIF animaties.

• Check wat mogelijk is per e-mail client.CSS ondersteuning: http://dotb.lu/emailcss.

responsive web design

Foto: Brad Frost

responsive web design

Ondersteuning van media queries is zeer redelijk! Google Mail client is de grootste uitzondering.

Handig overzicht: www.campaignmonitor.com/guides/mobile/

template testing

template testing

Vanaf $79 per maand.www.litmus.com

Spam filter testing vanaf $149 per maand.

Vanaf $45 per maand.www.emailonacid.com

Spamfilter testing standaard inbregrepen.

Mozify vanaf $70 per maand.

schema.org mark-up

• Follow-up acties direct uitvoeren in de inbox.

• Op basis van open standaard (schema.org).

• Eenvoudig te implementeren, op basis van JSON-LD ( json-ld.org).

schema.org mark-up    <script type="application/ld+json">"    {"      "@context":              "http://schema.org","      "@type":                 "EventReservation","      "reservationNumber":     "IO12345","      "underName": {"        "@type":               "Person","        "name":                "John Smith""      },"      "reservationFor": {"        "@type":               "Event","        "name":                "Google I/O 2013","        "startDate":           "2013-05-15T08:30:00-08:00","        "location": {"          "@type":             "Place","          "name":              "Moscone Center","          "address": {"            "@type":           "PostalAddress","            "streetAddress":   "800 Howard St.","            "addressLocality": "San Francisco","            "addressRegion":   "CA","            "postalCode":      "94103","            "addressCountry":  "US""          }"        }"      }"    }"

schema.org mark-up

Review ActionsInitieer het achterlaten van reviews direct in Google Mail (of andere mail clients).

http://dotb.lu/review

RSVP ActionsDirect afspraken bevestigen vanuit de inbox view. Let op: API preview, nog niet ondesteund.

http://dotb.lu/rsvp

schema.org mark-upVluchtinformatie (http://dotb.lu/flight)

• Toon het reisschema direct bovenin de e-mail view.

• Mogelijkheid voor ontvanger om direct in te checken.

• Houd de ontvanger op dezelfde plek op de hoogte van wijzigingen (of zelfs annuleringen).

truukje :)

truukje :)?

versturen

e-mail versturen

versturen via smtp

Host

Port

SMTP Username

SMTP Password

smtp.mandrillapp.com

587

drupaljam

DRUPALJAM-API-KEY

Eenvoudig te gebruiken en handig voor:

• Het versturen van systeem e-mails.

• Wanneer API integratie om wat voor reden dan ook niet mogelijk is.

• E-mail versturen via Mandrill vanuit je e-mail client.

versturen via api call{

"key": "DRUPALJAM-API-KEY", "template_name": "drupaljam", "template_content": [ { "name": "name", "content": "Bert Boerland" } ], "message": { "subject": "Bedankt voor je registratie!", "from_email": "info@drupaljam.nl", "from_name": "DrupalJam", "to": [ { "email": "bert@example.com", "name": "Bert Boerland", "type": "to" } ], "track_opens": true, "track_clicks": true, [..]

[..]! "attachments": [ { "type": "application/pdf", "name": "contract_007.pdf", "content": base64_encode($pdfContents) } ],! [..]

attachment bijvoegen

queue e-mail sending

Het uitvoeren van een synchrone API-call vertraagt de gebruikerservaring. Maak gebruik van de async-flagMaar houd ook rekening met mislukte API calls. Gebruik daarom een queue.

• Poor man’s solution: crontab + SQL database.

• Cool man’s solution: Gearman (gearman.org).

queue e-mail sending

api wrappers

Generic PHP wrappergithub.com/dotblue/Mandrill

Drupal moduledrupal.org/project/mandrill

reputatie

Verzend quota}

Reputatie score}Deliverability ratio}

sender policy framework

Middels SPF geef je aan welke hosts e-mail mogen versturen voor een specifiek domein.

local:~ vincent$ host -t txt saleschamp.nl!saleschamp.nl descriptive text "v=spf1 a include:_spf.google.com include:spf.mandrillapp.com ~all"!!local:~ vincent$ host -t txt spf.mandrillapp.com!spf.mandrillapp.com descriptive text "v=spf1 ip4:198.2.128.0/24 ip4:198.2.132.0/22 ip4:205.201.131.128/25 ip4:205.201.134.128/25 ip4:205.201.136.0/23 ip4:205.201.139.0/24 ?all"

http://en.wikipedia.org/wiki/Sender_Policy_Framework

domainkeys identified mail

Middels DKIM bewijs je dat een bericht bij een domeinnaam hoort.

Dankzij encryptie kan je bewijzen dat een bericht in-transit niet aangepast is.

local:~ vincent$ host -t txt mandrill._domainkey.saleschamp.nl!mandrill._domainkey.saleschamp.nl descriptive text "k=rsa\; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCrLHiExVd55zd/IQ/J/mRwSRMAocV/hMB3jXwaHH36d9NaVynQFYV8NaWi69c1veUtRzGt7yAioXqLj7Z4TeEUoOLgrKsn8YnckGs9i3B3tVFB+Ch/4mPhXWiNfNdynHWBcPcbJ8kjEQ2U8y78dHZj1YeRXXVvWob2OaKynO8/lQIDAQAB\;"

http://en.wikipedia.org/wiki/DomainKeys_Identified_Mail

sub-accounts

Sub-accounts hebben een eigen reputatie. Handig voor:

• Testomgevingen

• Systeem e-mails

• Multi-tenant situaties

[..]! "subaccount": "development-env",! [..]

meten en optimaliseren

kpi’s

1. Deliverability (bounces & rejects)

2.Opens

3. Clicks

4. Conversies

een aantal voorbeelden

1. Registratie bevestiging?

2.Password reset?

3. Order bevestiging?

4. Back-in-stock notificatie?

5.Favourited-product campagne?

6.Campaign mail

schets je e-mail flow

a/b testingE-mail is net zo belangrijk als je website om te A/B testen.

[..]! "tags": [ "password-reset" ],! [..]

a/b testing

google analytics integratie

[..]! "google_analytics_domains": [ "drupaljam.nl" ], "google_analytics_campaign": "registration_confirmation",! [..]

Belangrijk: configureer je doelen!

veel conversies = goed bezig?

gebruik alle data die je hebt

gebruik alle data die je hebt

webhooks

Middels webhooks stelt Mandrill je op de hoogte van events als bounces, opens, clicks, unsubscribes en meer.

Hard-bounces hoeven niet tot een dood spoor te leiden.

key take-aways

1. Betere deliverability, amper onderhoud, veel meer inzichten en lagere kosten.

2. Een professionele en fraaie template is van essentieel belang.

3. Zorg dat je templates goed getest zijn in relevante e-mail clients.

4. Denk aan je reputatie. Maak gebruik van SPF en DKIM.

5. Houd je KPI’s in de gaten. Blijf optimaliseren.

vragen?@vanscherpenseel http://vincent.io/

top related