Orthodate
All updates
Messaging5 min read

We fixed our email. One nudge per quiet stretch, not one per message.

Our message notifications used to run on a timer: one email per person every thirty minutes, forever. That’s fine on paper and awful in practice — two people replying to each other all evening were getting mail about a conversation they were already in, while a first message from somebody new could be swallowed by the same window. Notifications now watch the conversation instead of the clock.

What changed

  1. Nothing while you’re in the thread

    If you have read a message in the last ten minutes, you are clearly there, and we stay out of the way.

  2. A first message always gets through

    Somebody new writing to you is never suppressed by a timer that a different conversation started.

  3. One reminder a day, maximum

    If messages are piling up unread, you get a single nudge every twenty-four hours across all of your conversations. Not per conversation. All of them.

How it decides whether to email you

Three questions, in order. Have you looked at this conversation in the last ten minutes? If yes, no email — you are in the room. Is there nothing of ours sitting unread in that thread? If so, this is either a brand new conversation or the first message after a quiet stretch, and that always earns an email.

Otherwise there is already a backlog, which means you have been told and have not come back. In that case you get one reminder, and only if it has been at least twenty-four hours since the last message email we sent you about anything.

The signal we use for “you are in the room” is your read receipt. The chat screen rewrites it every time a message lands while you have the thread open, so a receipt from the last few minutes genuinely means somebody sitting in the conversation, not somebody who opened the app on Tuesday.

The writing was the other half of the problem

The emails themselves read like a machine wrote them, and we could not work out why until we grepped for apostrophes. Not one contraction in any template. No “you’re”, no “we’ve”, no “here’s”. Every sentence was grammatically perfect and slightly inhuman, and that was the whole tell — not the vocabulary, the contractions.

So every template got rewritten in a voice a person would actually use, and we deleted every em dash in the system while we were in there. One of them turned out to be hiding in a comment inside the shared stylesheet, which means it had been shipping invisibly in every single email for months.

Subject lines changed too. Your sign-in code is now in the subject line itself, so you can read it off a lock screen without opening anything.

  • Welcome: “You’re in, <name>”.
  • Sign-in: “<code> is your Orthodate code”, readable from the notification.
  • Profile nudge: “<name>, your profile is nearly done”.
  • Verification retry: “Let’s try that selfie again”, because the old one sounded like a rejection letter.

What you control

Likes, matches, messages and product news are four separate switches in your notification settings, and they save the moment you tap them. Turning one off is instant and does not need a confirmation.

Every non-essential email also carries a one-click unsubscribe that works from inside Gmail and Apple Mail without opening a browser, plus a visible link at the bottom for everything else. Account email — sign-in codes, verification results, a hold on your account — has no unsubscribe, because you need to be able to receive those.

And one embarrassing bug we caught

For a while, emails sent from a developer machine were mailing real members links that pointed at that developer’s laptop. The template was reading a site address from local configuration “for previews”, and a sent email outlives the process that sent it.

Every member-facing link now goes through one function that will only ever produce a secure production address, no matter where the email was generated. If you ever get an Orthodate email with a link that does not start with our domain, it is not from us.

Try it

The new behaviour is on for everyone. The switches are yours.

Released 19 September 2026. Filed under Messaging: Matches, chat, notifications and the email we send.

Questions

About this release

Something here not answered? Write to us and it becomes a support thread you can follow, not a message into a void.

Will I still get an email for every like?

No. Like emails are capped at one every two hours, and a mutual like sends the match email instead so you never get both.

What if I never read my messages?

You will get one reminder a day at most, covering all conversations at once, not one per person.

Can I turn email off completely?

You can turn off likes, matches, messages and product news. Account email such as sign-in codes cannot be disabled, because you need it to get back in.

Does the app know when I am online?

The chat screen uses presence while you have it open, which is how a live conversation avoids generating email. It is not stored or shown to anyone beyond the person you are talking to.

More from the changelog

Every release
  • Discover7 min read

    Discover is fifteen people a day now

    An infinite feed rewards scrolling. A daily batch rewards reading. We rebuilt Discover around the second one.

    • Fifteen a day, frozen
    • You can see why somebody is there
    Read it

Built for Orthodox Christians who mean it

Create a profile, answer a few prompts about faith and daily life, and meet people who are looking for the same thing.