Building a scalable publishing platform with Saeedreza Abbaspour

Summary

In this episode, Saeedreza Abbaspour discusses proven strategies for optimizing landing pages, maximizing conversions, and safeguarding subscriber integrity when building a high-traffic media publishing platform.

Key timestamps

00:25 – Who is Saeedreza Abbaspour?

01:24 – Discussion on optimizing the customer acquisition funnel for an existing site with 100k subscribers with a goal of reaching 1 million.

03:19 – What typically happens after a user lands on the landing page from an ad click? What’s the subscriber conversion rate for free and paid subscription?

04:14 – What are some things that you typically do to optimize that landing page?

10:23 – How customizable are the landing pages you build?

14:35 – With the free subscriber journey, how long do the campaigns typically last and how do you work with creators to build out the landing pages for the campaigns?

18:51 – What should be on an optimized checkout page?

22:51 – Intermission questions

26:40 – Transition to scalability and security of a high traffic publishing platform.

28:06 – Using WordPress for flexibility, developer availability, plugins.

37:10  – Do you use plugins that are available or build your own?

38:08 – What form plugins do you typically use?

41:57 – What hosting do you recommend to clients?

42:55 – How do you deal with bot attacks?

46:43 – Double opt-in vs reCAPTCHA? What do you prefer?

53:52 – Using ChatGPT to detect spam subscribers

57:13 – How long of email inactivity triggers subscriber removal?

59:06 – What key mistake do rookies make in building publishing platforms?

01:00:28 – Underrated tool recommendation – Newsletter Glue

01:02:55 – Favorite newsletter – Dense Discovery

Show Notes

Refact

The Hustle 

The Daily Upsight 

Workweek

Advance Custom Field

reCAPTCHA

Newsletter Glue

Gravity Forms

WPForms

Cloudflare

WPEngine

Beehiiv

Substack

WooCommerce

Cloudflare Turnstyle

Dense Discovery

Guest

Saeedreza Abbaspour/@IAmSaeedreza

Refact

Host

Lesley Sim Twitter

Lesley Sim Website

Stay in touch

Apple Podcasts

Spotify

Twitter

Sticky.fm Website

Transcript

00:00

If you’re a news or media publication running on WordPress, check out Newsletter Glue. It cuts your newsletter publishing time in half and enables you to manage your entire newsletter ops in WordPress. Go to newsletterglue.com to learn more. Welcome to Sticky, the podcast that helps you build a must-subscribe, must-read newsletter through actionable case studies and playbooks. Today’s guest is Saeedreza Abbaspour. Said is the CEO of Refact.

00:29

a digital agency for creators and media companies. His team at Refact has built the publishing platforms for The Hustle, The Daily Upsight, and Workweek, amongst many others. I am so excited to have him on the show today because we’re gonna talk about final optimization and the technical aspect of setting up a website which gets millions of views and hundreds of thousands of conversions a month. We have a lot to talk about, so I can’t wait to get started. Hey, Said, welcome to the show. Hey.

00:58

I’m excited to be here. I can’t wait to get started. So I’m going to split today’s podcast episode into two sections, the marketing side and the technical side. So for the first half of the podcast, let’s talk about marketing and conversion funnels and all of that stuff. So I kind of want to know a little bit more about the customer acquisition funnel on your website, refact.co. You talk about.

01:25

optimizing the customer acquisition funnel as one of your key value propositions. So let’s say I’m a new client and I have an existing WordPress site with hundreds of thousands of subscribers. And my goal is to get to a million subscribers by the end of the year. How would you approach this? What’s the first thing that you look at? First of all, I would be very excited to be working with that client. I mean, that’s a big journey, you know, going from 100,000 subscribers to a million subscriber.

01:54

But one of the first things we start looking at is the beginning of the journey. Typically at this scale, I assume that they’re sending a lot of paid traffic to their website. So the first touching point is where we start the conversation. From there, we go through the user journey through subscribing and getting the first email and staying in the system, keep reading the newsletters and staying engaged and so forth. And maybe at that point, you know, they have a

02:22

few different products that they want to sell, which could be some paid subscriptions or other types of products or communities that after a while they want to promote that to their core subscribers. But to start with, I think the landing page is where it’s the beginning of the journey of the users. There also could be other things, the infrastructure, because at that point they’re thinking about scaling to a million subscribers. So does the current website or CMS they have?

02:49

can afford that scalability in terms of design, infrastructure, security. And also sometimes come down to the operation behind the scene of their staff, the writers, how they are producing that many articles. Is there anything we can do to help them to run that part of the operation smoother? It depends on if you have a daily newsletter or weekly newsletter, I think the operation, there’s a lot of room for optimization. Right. Okay. Let’s take a little deeper into the user journey.

03:19

So let’s say going from free to a free subscription, let’s say they click on a paid ad from Facebook or Instagram and they land on the landing page. What happens next? What should happen is for them to subscribe within a few seconds. What will happen is a lot of them drop out. And so it’s a constant battle of figuring out how to minimize the gap of people who are subscribing and the people who are dropping out.

03:48

Ideally you want everybody who are targeted to your ads, comments, subscribe, but that never happens in the world that we’re living right now. What’s a good subscription rate? For free subscribers, I think 3% conversion is probably really good. 3% to 5%, you’re really doing good. For paid subscription is much harder. Maybe like a tenth or two-thirds of your free subscribers are paid. That’s also a great number. I’ve seen better numbers. I’ve seen worse number. It depends really on the market you’re targeting.

04:17

and the price point and everything else. Okay, so they click on an ad, they land on the landing page, and approximately 3 to 5% of those people who have come to the landing page are going to subscribe. What are some things that you typically do to optimize that landing page? I would put it in three different categories. One is the copy. The second one is the design. Third one is the code or the performance of the site.

04:45

I think the copy is the most important one to get it right. Maybe it looks and sounds easier than Don, but it’s probably the hardest. Because you can always get the design and the performance of the site almost really good. But getting the copyright is very, very much related to who your target audience is and what are you really trying to give them. And then the second thing I think is the design.

05:14

of design elements of the Landy page. My general rule of thumb when I’m reviewing our design teams work, the first thing I try to pay attention is that what elements on the page takes most of my attention. It could be a red dot at the bottom of the page from the image that they put. It could be like I try to be completely as like not reading anything, just open the browser, open that page.

05:38

open that design file and see where my eyes go because of the colors or because of the shapes or because of… And typically it’s the colors and something very bright or something very big grabs most of your attention. Your eyes subconsciously goes drawn to that part of the page. And if that’s what we really wanted the users to look at, then we did a good job. At least the first checkbox is checked. But often though even in our team, we get to design something and we look at it.

06:07

again and we’re like, oh, we maybe paid attention too much to something that is taking attention from the title. So we should tone it down and like make sure the title is the first thing if I’m landing on a page, it’s the first thing that I’m paying attention. Like nothing should steal the attention from the main headline of the page. If it is, that needs to be toned down, you know, because we are branding a design agency.

06:33

everybody wants to be creative and do something interesting and then they know grab attention but I feel like they shouldn’t compete with each other like it has to come always complementary to that headline. The other thing is that putting too many elements that again after that main headline can take your attention which might not be your desired action like the action that you expect your audience to do. For example a lot of items in the menu like if you put a lot of items in the menu

07:00

especially for the first time visitors of your website, I think you’re missing a lot of opportunities. You want everything to be focused on one thing and one thing only, which is reading the title, and if it’s something they resonate with, then the next would be that button to click on or that email address, email field that they can fill up to get their emails. Nothing else should be competing with these few objects. Everything else should be trying to draw my attention to that or compliment that.

07:29

make that decision easier for me. One of the things I go back and forth a lot with our design team or sometimes with our clients is that menus should be completely empty, like just logo, maybe just a sign-in link and then maybe an expandable menu. Because if you’re putting anything like an archive, there’s a chance that I go read your archive first before I subscribe. So and then in between I might get distracted, my dog just walks you know in the room and I just

07:59

introduced me the way you wanted to introduce me to your product. I’m looking at the Hustles website now. The landing page. I can see that they have like a whole bunch of stuff at the top. Yeah. So that’s what I was going to say. That it’s like, you know, if your homepage shouldn’t be where you’re driving your page traffic, there should be landing pages. Like this is where your first time visitors shouldn’t come here. And if they’re coming here, this landing page is very, very destructive. I don’t have the numbers right now, how this page is converting.

08:26

But I would assume it’s not very well, like, I’m very well. I’m sure they’re driving their paid traffic to other landing pages they have. And those landing pages should be free of any link, anything except for, you know, that desired actions that you’re expecting your audience to take. Right. That makes sense. We’ve built a lot of landing pages for them throughout, you know, this past four years. Yeah. And that’s another thing, you know, these landing pages have to be complimentary to the paid campaign that you have.

08:55

But if you visit the Trends website, because it’s a paid community, you don’t get to see the product anyways unless you pay. So that landing page doesn’t have anything on the menu. It’s just sign in or join our community. And even if you go in the footer, there is nothing except for terms and policy. So this page is dedicated for just one action. And signing is there because that’s the only way to get to Trends website.

09:25

remove the white color behind the signing link to make it… Because if I’ve been here before, I know my way around the website. So this is mainly for the first time visitors. And the other thing is that we are all benefiting from that is that everybody’s brain right now has been trained to use websites in certain ways. So we all expect to see signing somewhere on the top right or top left. So it doesn’t need to be as visible as, you know…

09:55

a lot of people think because our eyes are looking for it anyways. Um, and they will find it. Interesting. I see, I see what you mean about the difference between the trends page and the hustle page. Yeah. When it’s so much more, this is the homepage, like the hustle is like, this is the homepage and then from there you click into stories and stories and stories, whereas the trends page is more of a landing page and there’s pretty much only one thing that you can click on. Exactly. And, um,

10:23

pretty sure the hustle marketing team is not using this page to run, to drive any sort of paid or organic traffic. This would be a big, big mistakes if they do. Right. And so you mentioned that you work with them to build lots of landing pages. How kind of hands-on is the marketing team? Are they able to do it themselves? Because often marketing teams want to move fast, right? And like, oh, I want to test this, I want to test that. And having to go by an agency can slow them down.

10:53

How much are you setting things up for them to just test by themselves and duplicate an existing landing page and just go for it versus coming to you and setting things up from scratch? That’s a great question. That’s like every marketer’s problem in every single company working with their tech team and dev developers. I think this is one of their nightmares.

11:20

very easy for any marketer to remove things and create a new landing page and move things around. So these days most of the websites we build is on top of WordPress and what we use, we used to use a lot of ACF, which stands for Advanced Custom Field, and with that you can build custom sections that in a page template can be moved up or down and in each of them you can adjust the copy, adjust the images. So we would…

11:49

build a custom kind of like a builder, the entire website would be based on that. Nowadays we’re using WordPress about a year ago maybe released their own builder, it’s called Gutenberg, block builder, and since then we’ve started moving our latest project using WordPress blocks. And that’s pretty much more or less the same, but it gives the marketers the maximum flexibility while still very customizable and it’s very lightweight.

12:19

But I think we have solved that problem. I think they have the freedom. I hope they do. I mean, we haven’t… You know, the things that I hear from them, you know, that we build that with that intention. And it’s like, you know, team to team is different. There’s some teams that the marketing team is more hands-on and they have the more, you know, technical background, and there’s some teams that, you know, they have less technical background and they prefer us to make the changes. Yeah. And…

12:45

The other thing is, you know, if you do a good job in terms of planning your marketing campaigns, you don’t often need to change things like immediately. It has to come from like a week off, you know, you at least look at the data for a week or two weeks and then unless it’s a typo or something like that that goes live and you need to change it immediately. Other than that, it shouldn’t happen that, you know, overnight you really want to change something and it doesn’t work.

13:13

In practice, a lot of people come to us and they would love to have the flexibility, but when we build the site very flexible, nobody ends up using it. And all the requests, the changes come back to us. I always try to convey this to our clients, but unless you have been in this situation a lot, I haven’t seen a lot of people want to give away that flexibility. Everybody wants that flexibility.

13:41

It’s that, you know, we all love to get, have the option in case we need to change things, you know. Yeah, that’s really funny. So you mentioned that you’re using Gutenberg and the block editor. Are you basically building patterns for your clients and then they kind of choose the patterns that they want? Exactly. It depends on the page. So for example, some pages are fairly the pattern is, you know, you don’t need to use it often. It’s just, you know, the blog page is, you know, has

14:08

one main section or maybe one or two main section. But in some pages, like, you know, if you have, I think the great example use, use for landing pages where, you know, you want a few different type of, you know, sections, one is the two column section, one is a three column section. One is the one with the video, one is, you know, and then, yeah, you create the pattern and they can reuse it elsewhere or when they’re creating a new page. Right. So again, just.

14:35

Zooming out a little bit, we are still talking about free to free subscribers and like kind of that journey. Um, and later on we’ll talk about going from free subscribers to paid subscribers. But with the free subscriber journey, how long do the campaigns typically last and how do you work with them to build out the landing pages for the campaigns? And so like with each, I guess, iteration, like, how do you think about all of that stuff? Yeah, I mean, let’s say

15:04

we’re just talking about what is a good structure of a good landing page. If you have a good starting point and then from there you have some ideas or let’s say you gain some new information about your audience or a new idea just came to you while you were sleeping and you woke up and you’re like, I need to change the homepage. I think the best thing you can do is setting up tests and for each test picking only one element to compare. I mean, you might come up with a few ideas that need to be changed or you see a new, let’s say someone else’s.

15:34

landing page and say, oh they’re doing a better job, I want to change everything, look like them, but that’s probably a bad idea to change everything at once. And maybe the best, better way to would be to go change just one item and then run it for two weeks as an A-B test and see how they’re performing against each other. Let’s say you change the title and the subtitle and then let it, let it just run or you change the main image of the page or remove some items from your, you know.

16:03

menu or you add, let’s say, some smaller text, for example, you know, we just send weekly email, no spam or something like that if you want to test that out versus not having it. And then running it for two weeks, I think it’s the minimum amount of time you need. It depends on the number of amount of traffic you’re getting. Like, you know, smaller websites, you probably need to run it longer to get to a meaningful number of visitors. What’s a meaningful number to you?

16:31

Meaningful number of traffic. I think if your website has about, I think, 200 to 300 visitors a day, you can safely run it for two weeks and get enough data points that you can safely decide. I think below a thousand, it’s very small. The data is not very accurate. But if anything between like a thousand to five to ten thousand, you’ve probably seen enough that you can make some judgment.

17:00

And often, you know, these changes, these differences might not be big enough. So those are the tricky part, especially in the lower size of the spectrum. A few percent might be just a fluke. You need to run it longer to make sure that improvement is actually real. And there’s also a lot of other things that might go into account, for example, the seasonality of the things.

17:24

economy, there’s a lot of things you also have to pay attention. Sometimes I’ve seen, you know, not in the newsletter, but so few years ago, like we had a lot more clients in the eCommerce industry, and you would often you would change something, you would test something, and you would get some results. And a few months later, or a year later, that same thing could change, you would test it again, and you would get a different result, like the old version would start results better. And because

17:52

all aspects of your business is evolving. Your audience, your product, the board, all evolving at the same time. And there’s a lot of factors come into play when that results into somebody making a decision about making a purchase. And then a lot of things are trending right now that might not be trending in a year from now. Like a lot of type of design or messaging or values or products. So it’s a constant, it’s a constant, you know, evolving or battle to figure these things out.

18:22

Are there any other steps in the free to paid journey that we should talk about? I think the checkout page is something we paid a lot of attention and we learned a lot of things. The checkout itself, I think it’s where everything ends there. So like, somehow you told me that you have a paid product and I find it interesting and I click on that link. Usually in the word of the newsletter, it should take me to the checkout page because

18:51

I’m not buying a physical product, I don’t need to look at the pictures of it, read the reviews, it’s just you’ve been working on that, selling me that value proposition. So now I’m at the checkout and you want to make it very, very easy for people to answer all their questions on that page, all their possible questions, all their doubts, like how do I get my money back if I want to get back?

19:17

Can I cancel? Like the things that people before committing to something may need to ask, right? And then some stuff that helps me, encouraged me to make that decision. What we’ve seen work is that the codes of people who are known or trusted by the community that they trust also this newsletter usually works the best. Like testimonials. Testimonials are tweets from the people who again have built this trust with their audience for a long time.

19:46

putting those there usually the best thing you can do. And then making the checkout as painless as possible. And what I mean by that is not asking your users to get their, you know, give you their phone number and address and email. You could, you know, you have the opportunity to get all those information after, even for this email signup. Like once you have somebody’s email, you have the entire time in the world to get as many information as you want. Same as checkout, once you have somebody’s, you know,

20:15

they’re willing to pay money to use your product, you have all the time and their attention to get any information you want. So you have to make that as easy as possible. Yeah. So if you go to like this state affairs checkout page, it’s one of the better checkouts that I’ve seen. Not that we build it, but it’s a came out of, you know, a lot of comparing what’s out there. You know, we’re not inventing these pages, we’re just, you know, trying to see what’s really working best practice and all.

20:44

across the board for all the publishers and taking lessons from each of them and implementing into something like this. One of the things early on that we had was to be asking people to set up their password here and we removed that. There was a lot of things that we were asking, we were like, okay, we don’t need to ask it right now. And we tried to minimize that, what they need to see. As you can see here, it’s just you enter your email address and then the very first next thing is just, you know.

21:12

your credit card information, the minimum amount of things that I need to process your credit card. Like, for example, here you don’t see an address field. It’s recommended to have an address field, but it’s not necessary. So if I can’t process your card right now, or let’s say this payment fails, then I have opportunity to go and ask you, I can say, can you give me also your address or something else, right? But for the most cases, usually this is all the fields you need to process a credit card.

21:42

Yeah, that makes sense. I like how easy it is. Checkout, checkout page is like the most important thing. And at some point this page also had a, I believe we changed it, but it was like a two column page. So right now it’s very optimized for mobile, but before this, I think on the desktop, it had two columns. Yeah, it was two columns. So on the left side, you could see the testimonials. As you’re trying to, you know, I put myself in the shoes of somebody who’s trying to like,

22:10

Do I need to, should I pay $200 for this or not? What else that might goes to my mind when I’m making that decision? That trust elements, those little questions that I’m like, okay, I can really opt out if I don’t want it. So like cancellation, up to 30 days you can cancel your subscription. Okay, okay, so it’s not a once forever type of decision. I can revisit it a couple days later. So that giving people those optionalities really, really helpful at the checkout page. I think that’s the most important part of the.

22:38

converting people from free subscribers to paid subscribers or first time visitors to paid subscribers. Yeah. Awesome. It’s really, really useful.

22:51

Let’s go into our intermission. I have a bunch of quick questions that I’ve prepared to get to know you better. Feel free to answer in a word or a sentence or however much you want. So the first question is, what’s your favorite city outside of the US? There are two names coming to my mind. One would be like the one that I’ve visited so far is Tulum and then one is Kauai. It’s not a city, but the island in Hawaii. I’ve never been to either of those places, but I would really love to go.

23:21

I have a friend that’s teaching freediving in Tulum, so I’d love to visit him. I just love that tropical weather and feel like that’s where I need to be. Spicy or sweet? Spicy. Yeah. If it comes to food, always spicy. Yeah, never sweet. Beach or mountains?

23:51

Yeah, beach and Tulum, right? Pretty much. Oh, yes. Outside of work, what’s something that you’re really into? Right now, me and my wife just bought a flower shop, and I’m just getting to learn about how to run a physical store. Yeah, I read a lot about philosophy and psychology. That’s a topic that I’m interested in. There’s a lot of…

24:17

unanswered question in my head. What kind of, what kind of philosophy stuff? It’s been a, it’s, it’s not something that, not a type of philosophy, but it’s thinking about deep questions of life. What kind of, like what kind of psychology questions? Who we are and what I am and what are we doing here? Existential questions. Yeah. Um, started maybe three, four years ago, just continuously. It’s like.

24:47

stream of thought that is going on at the same time all the time as I’m like, you know, learning more about myself and the world. Yeah. What does your ideal retirement look like? You know what, there was a time when I was starting, you know, this journey of, okay, I need to make money and that would be the end of life. Yeah. Now, the way I see it is that it never ends till I guess you die, like this quest to…

25:15

answer your own curiosity and I don’t think you ever stop doing that or reaching to your potential. So it depends on how much your physical body can allow you. I think we’re always going to operate at our highest potential. It might change from like right now my focus is on providing for myself, my family, but it’s expanding as I’m growing to pay more attention to.

25:44

society around me. And so I can see that my shift, but I don’t think it stops, whether you do it for money or not, but I see it as an activity and that activity never stops. So that’s my more philosophical answer to that retirement question. So as we were talking, I got chat gbt to write you a lyric based on your answers. So I’ll just read it out to you.

26:14

A man named Saeed with a green thumb in his flower shop finds life’s hum, loves to loom sandy sweep and food that’s fiery deep, while pondering existence he’d succumb. I love it. It just needs to be my bio. Don’t change my bio to that.

26:40

All right, so we’ve talked about the customer journey already of like, you know, how do you subscribe? How do you all of that kind of stuff? And so, you know, obviously, the other side of that is now that you’re getting so many subscribers, we need to make sure that the forms are working, that the checkout is working, that the site is fast. I’d love to talk to you about what makes the site scalable and secure.

27:08

Is there kind of like a big picture way that you think about these things before we dive into the details? Absolutely. You know, when it comes to like building big publishing platforms, and that’s the best time I found to, I mean, I’m using these days a publishing platform because the CMS usually refers to from the staff side of it, like as I’m like operating my side, but I’ve seen like a publishing platform is mostly, you know, they refer to you as like on the other side of it, which is like, you know,

27:36

platform where you’re publishing all your content because the content might come from various places But managing all those content might have different, you know resources especially for newsletters where they have a source of the content coming from their newsletters if they want to publish that online Elsewhere or hosted somewhere and then they might have articles that strictly goes to their website as standalone articles To build a scalable publishing platform. I mean so we are using WordPress

28:06

And I always like that’s my first go-to option these days for any size of a business. And that’s mainly for two reasons. It’s one is that you always can find WordPress developer and that trend is not going to change anytime soon. That’s like something that people might not think about when they are choosing the platform. There’s always the new hot trend out there.

28:33

and very enticing to use, get on it and use it. But these things never, you know, hasn’t been tested out and finding developers who are comfortable building and maintaining it, it’s always should be something that I feel like everybody needs to consider before making that decision. And the other thing is that the WordPress has the biggest community and plugin marketplace. Like there is no product that hasn’t been integrated.

29:02

WordPress and it’s fairly easy. I mean, you probably have multiple options for integration or solving a problem through WordPress plugins. And that makes everything a lot easier in these words and days that. Especially for an early startup or early media startup is that you don’t know where you’re going to be in next year and things start, you know, keep changing as you’re learning about your customers and having that capability to, to add more layers to your

29:29

base platform, I think it’s something that helps a lot, especially, I mean, using WordPress is makes both of these, you know, problems very easy to solve. Just way more flexible, customizable, and you know that you’re going to be able to do it no matter what test you want to run. Yeah, absolutely. I mean, the other thing that it’s good to think about when you’re building, I guess there are different size of, you know, publications that are out there, you know, and earlier stages, you can get a bit of it.

29:59

a lot of things, but when the business becomes more serious and that product has been proven, scalability, I think it’s the most important thing to think about. And scalability is not just about the infrastructure of your platform, it’s also your design system. How you are thinking about the design, designing each elements that is scalable as your brand starts developing into other verticals and you keep adding pages and sections and

30:29

features to the main platform as your brand expands to talk to broader audience, how that design system is going to help you to make that easier, not harder for your team to keep producing content and developing different tools. The other thing is obviously is the scalability of the platform itself. How the architecture of the WordPress website is, again, I’m just referring to WordPress because we are mainly using WordPress.

30:59

and any other platform I think was applied. But like, let’s say one of the first thing that you can think of for building a scalable solution is what hosting you’re using. A lot of hosting are shared, but at certain points you get to a problem of not having enough bandwidth to serve a larger audience. So going with a private server with options to scale as your audience is growing, I think it’s something should be considered at the beginning.

31:28

The next step would be when you’re building a WordPress website, what standards of, you know, theme building you’re using. Sticking to the best practices suggested by WordPress, it’s always the best way to go at it. Again, something that right now the Gutenberg blocks are fairly new, but very much well backed by WordPress core team. And it’s always based on, you know, the history.

31:56

I know from WordPress, it’s always going to get better and better. It’s a project that they have been working on for a long time. So very actually excited to see how it’s going to expand. But I guess making those decisions at the beginning is very important. Using a builder, which is never recommended versus going to something that is a little bit more customizable, like custom advanced field to all the way to, you know, something that it’s these days, I think it’s best practice to use Gutenberg

32:26

I think those decisions are important at the beginning. And then finding teams or engineers who have experience building large publishing or websites on WordPress is very important because there are considerations that needs to come to place from the beginning that a less experienced developer might not have yet, you know, encountered in their career. So it’s always, you know, it’s, it might be more expensive to invest in that platform and that, you know, talent.

32:55

or agency, but it’s something that down the road, it will save a lot, a lot of money, time, and potentially, you know, a lot of bigger drawbacks where like, you know, um, your site might crashes or the security of your site might be very vulnerable to a lot of different, you know, security problems. And that can cause you a lot more headache or, um, your entire business down the road if they’re, you know, overlooked. Yeah. A lot of things also like, you know, when it comes to like,

33:23

building the front end of it or always thinking about the performance of the site, the pages itself. There’s a lot of practices of making sure that the page speed is fast and there’s a lot of practices that needs to be in place. Paying attention to those from the beginning, from the first line of code that is going to be written, I think it’s important and it’s going to pay off down the road. Yeah, that’s something I noticed about all of your sites when I was visiting them.

33:52

All of them are crazy fast. Like I think they load some under one second, which is crazy to me. Um, especially in comparison to a lot of other media sites, which is like takes forever to load, it feels really heavy and you know, it feels like every articles or every section is loading one section at a time. And in contrast, it was just like click on the link and it’s the whole thing is just there. Yeah. It’s one of the things we’ve been paying attention from the beginning of, you know, my journey as a developer. And like.

34:22

generally building websites when I got into it is like how to build, you know, pages that it loads really, very quickly. And a lot of times we are limited by what clients demands us, but we always recommend, you know, optimize all the images that goes and having, let’s say, infrastructure in place that constantly optimize the images, like without, you know, because the staff might not be very experienced in how to optimize an image. Is it all headless? No, all these products, not most of these sites that you’ve

34:51

Probably because they are not headless. Yeah. Oh, so it’s just, yeah. Yeah, they’re very fast. Yeah. I mean, one of the things that, you know, slowdowns most of the WordPress sites is images usually is the first thing. The size of the images is usually the first thing. I mean, if you’re using video on the homepage, I think it’s a bad practice or how to use that video is very important, but using large images, it’s usually the biggest, biggest impact of slowing down the pages.

35:17

But there’s a lot of ways to optimize and fix, even with the large images, to make the experience of loading a page faster or better. For example, you could load the page first, and then if the image is taking long, you have, let’s say, image placeholder, and then load the image gradually. If the design really demands large images to be displayed, or the article is very long and has a lot of images, you can have a script in place that…

35:46

gives the reader what they came for, which is the text. And then the images will come later as you stay on the page. The other thing is that it’s using CDNs, using Cloudflare CDN, good caching systems. Those goes a long way. Make the experience better, both on the server side and on the client side.

36:13

Newsletter Glue cuts your publishing time in half by enabling your team to publish newsletters the way you publish articles in WordPress. Find out more at newsletterglue.com. Now back to the episode. Yeah, we also like wanted actually hoping to find a project where we can, you know, experiment with Gatsby. I don’t know if you’ve tried Gatsby, but it’s a framework that makes very, very fast loading pages. And…

36:41

We actually want to try to rebuild our own website with Gatsby, but I’m hoping we can find a client that we can test this out. And yeah, it’s just one of those personal interests to make that very, very, very fast loading page or websites. I think there are two things I care about. I was telling my team, hopefully in a year, in the next two years, we have been nominated for a Webby Awards in the news media category.

37:10

At the same time, I’m hoping, you know, we build the fastest page, fastest loading page or the media website. So that’s the personal and organizational goal that I have for the next two years. So we’ll see. I feel like you are definitely on track for both of those. Yeah, it’s going well. Okay. Let’s talk about customization. So how much stuff do you get off the shelf versus build your own? So something like form plugins and.

37:39

subscriptions and payments, how does that work for you? Or even security? We started building a lot more internal plugins to just, you know, facilitate the development phase, but we use a lot of plugins that are good out there, we always recommend that to our clients. Yeah, we’re not after reinventing things that have been done. When it comes to checkout, if there’s a paid element to the website, we’re using

38:08

plugins that are working really good with book covers. But the interface, everything about the interfaces, we designed it ourselves, but the behind the scenes is probably managed by a plugin. What’s your favorite, or what form plugin do you typically use? I think these days it’s Gravity Form. Yeah. But yeah, my team might have a different opinion. They, you know, things keep changing in that world. And the client to client, you know, differs. Do you know other ones that they’re checking out as well?

38:38

I think there was one WPForms. Yeah. I’m not sure. And so with WooCommerce you’re using, I guess you’re using WooCommerce subscriptions as well and with WooCommerce there’s such a huge ecosystem of supporting plugins. What else are you using? Yeah. I think it’s probably torturing there. And there’s a membership plugin that WooCommerce works very good with WooCommerce. Um, we’re using for the subscriptions. Might be just WooCommerce member plugin.

39:07

Other plugins we use, again, we end up developing a lot of plugins specifically for connecting ESPs to WordPress. To bring to unify all the data that we have from the ESP and the WordPress, especially if you have a product. To match these two data and, you know, automating things like, let’s say, if a member is unsubscribing from email lists or, you know, canceling their membership, how to communicate this back to the ESP.

39:37

having all the information, the ESP on the WordPress side. So we started writing a lot of plugins that works really well with different ESPs. I don’t know if we have plans to releasing them, but that just helping us to make things a lot faster when we are building these platforms. Yeah, plugins that views newsletter glue. It’s something that you always recommend. Thanks.

40:03

Yeah, I can’t wait to work with you on one of the implementations with one of your clients. Yeah, for sure. Okay, so what goes into ensuring like they’re all working when a thousand people are trying to stand up at the same time? Because like that’s also a huge part of scalability and performance, right? Correct, yeah. Nowadays, everything is, you know, at least for the world, this is the scale that we’re talking about. Working, you know, the Cloudflare, it’s…

40:32

mostly does the magic of making sure, you know, if people from different regions coming to your website, they are different, you know, that traffic is, you know, directed to the closest possible version of the site. And if anything happens, if you know, you’re encountering usually a high traffic, distributing that load makes you sure, you know, the site doesn’t come down.

40:59

Fortunately, unfortunately, we haven’t had that experience with the customers that we’re working with, but I can imagine the bigger publishers have a lot more layers in between to make sure that doesn’t happen. Yeah, it’s not something we’ve worked on, so I don’t know any more than that. Cool. That’s really good to know. I use Cloudflare as well. And like you said, it’s not really something that I had to think about. So, yeah.

41:27

This is turning into a cloud that everybody should use it. It’s easy to implement. Yeah. For the most part, you know, for us, yeah, cloud and using a good dedicated WordPress server for the cases that we’ve been dealing with, you know, handles most of the issues that a publisher, the scale that we’re working with, running to, as you get into like, you know, building headless CMS, I think you have to start thinking a little bit different about scalability and architecture of your website.

41:57

Right. What hosting do you use? Or do you typically recommend to your clients? WP Engine has been our partner for many years. And one of the reasons I really love working with WP Engine is their support. And it’s always been, you know, the most accessible support team that I’ve worked with. I personally had an experience to work with. Somehow it’s very easy to get ahold of a person behind WP Engine for me. Yeah. You know, as a

42:26

person who’s dealing with a lot of WordPress, that we can, you know, a lot of service and a lot of clients, that’s one of the biggest thing for us to have access to that, you know, staff and support team. I want to quickly go into Bot attacks as well. I know that’s something that you have to deal with a lot. Anyone need like, even with my site, I’m not a publisher, but we have a blog and we have people who subscribe to our blog and even I have to deal with Bot attacks. So I’d love to learn.

42:55

kind of how you go about dealing with them. You know, if you’re getting hundreds, thousands of subscribers every single day from most of your websites, how do you make sure that it’s not fake emails or even worse? The answer is hard. It’s very hard. There’s a lot that goes into fighting back or protecting your website from bots and, you know, malicious activities that happens.

43:25

you become a bigger target. So that measures always increasing and getting more sophisticated, more complex. The smaller you are, you just have to get unlucky to get, you know, become a target of a very, very sophisticated attack. But as you get bigger, it’s something that unavoidable and it’s out there and it’s ever evolving. It’s…

43:51

getting better and better every day as the measures against the butt attacks getting more sophisticated. Also the butts using the same technologies getting better and better. I don’t see this battle ever ends. Maybe it’s good for the humanity as one, but it just keeps evolving. The things that you know in the skills that you could say the smaller side of the spectrum, adding Google reCAPTCHA or let’s say a two-step opt-in.

44:21

can eliminate a lot of emails that are not, that just coming, again, using simpler methods of spamming and attacking. And something that worked for us also was recently Google Recapchop actually created a lot of problems for a lot of sites that they were using it. So we started looking into other alternatives. And there’s a product that Cloudflare offers. I forgot their name, but that’s also

44:50

been really, really helpful adding that to the forms and pages to make sure the visits are not coming from attacks. And then there are different ways you can start fighting against bot attacks. One is at the first touching point of the signup form. That’s just asking for trouble. That’s an open field that you’re asking to get attacked. So making sure that is protected by something like Google Capture or…

45:18

double opt-in is something we can easily implement. But there are ways that bots can pass those measures and still get into the email lists. And one of the things that we work on with our clients is to help them to clean up their list continuously. So even in the bigger size, what I’ve seen is works that is like the first few emails that you send out, I think it’s also a good way of, again, creating that.

45:47

connection to ask for a reply from your audience. I think that’s the first step of looking into what emails are actually coming from real people, from outside. Another thing that you can pay attention is that when you see a hike in your subscriber sign up list. So let’s say generally you’re expecting to get hundreds of new subscribers every day.

46:14

And out of a sudden it becomes like, you know, 1500, unless you haven’t done, you know, it published anything or somebody big hasn’t talked about your product. That is most likely coming from attack. Even though it’s exciting, but often then it’s not real hype. Yeah. So can I ask between like doing reCAPTCHA versus double opt-in? Because a lot of people don’t like to do double opt-in because it reduces the.

46:43

number of, even like actual subscribers don’t like to click through, right? To opt-in. So how do you manage that? Is it some kind of quarantine thing that you do? I think it’s Brennan Dunn or something, or someone who recommends, like, instead of doing a double opt-in, you use, I’m going to get it wrong because I’m not really remembering it exactly, but he quarantines the new subscribers in a different group or, and maybe at your scale, it might even be in a different IP address.

47:13

and send them from that for a while, like maybe a week or two weeks, depending on the cadence of the newsletter sending. And then if they are good and they have like high deliverability and all of that, then they put them into the main list. Yeah, yeah, yeah. Um, that’s exactly, I mean, I’ve seen that I’ve seen people do that. And it’s, it’s really good way of keeping the main list very clean. Also your IP, you know, your

47:40

bounce rate and your open rate and your deliverability, you know, clean. So as long as you know, you’re the infrastructure that you have allows that automation. I think that’s a great idea. Sometimes like, you know, the ESP you might use or like the way you, you have set up things might not allow like something like that, but that’s very good, good way to do it. And, and we think that, you know, two week period, you can

48:05

have few different ways to get some sort of engagement or look at you know, the open rates and I mean The thing is that I’ve seen a lot of attacks that are very very, you know sophisticated you can’t even trust like the the links in your email that have been clicked or not because they open the emails they click on the Links and and sometimes even they’re using the emails that are not spam emails like the emails have been you know stolen and They’re actually legit emails like, you know, they take your email and then subscribe to it service with it

48:35

So it’s not as easy as always looking at the email list or looking at the open rate or even the clicks. So what are you looking at? I mean, all of them, but none of them is enough, but all of them. So you have to look at all the things. The email list cleanup is not just the beginning of the journey. I think you’ve got to do something, continuously do it. So you could do it every few months if somebody hasn’t been engaged, like three months, four months, especially after the subscription.

49:04

that person is not interested. So you can have the automated flow to start asking that person that if they’re not opening or not interested, they will be removed. Like after a few emails, you can safely remove that. So that way you probably end up cleaning up your email list. You’re probably keeping your email list very clean. There might be at any given time emails that subscribe to it unwantedly or then they’re from bots, but…

49:33

eventually you can find them and take them out. But if a bot is clicking on emails and links, and they look like a real email address, then how do you tell that they’re not? I mean, no, what I’ve seen is that they would open the first email and then click on one link. They might not continue doing that. But also, for me, it’s always the question of what are they after? What are they trying to do? Why are they putting this much effort to do all these things?

50:01

Yeah, they could be very sophisticated that you never know, but why someone has to put that much effort to make this happen, they’re not that, at least from what I’ve seen, they’re not that many sophisticated attackers. Or maybe that is not necessarily what they’re looking after. Maybe just the first email is enough for them. Yeah, every touching point, you have to have measures to check everybody’s legitimacy and engagement. From the beginning of sign up.

50:31

to the first email, to first month, to the second month, to the third, to the sixth month, to the first year. Yeah. So OK, let’s quickly go through it. On the form, what are the things that you’re looking at or getting? At the form, I think the capture or double opt-in is the only thing we found. There’s more sophisticated measures you can put that we haven’t had the opportunity to implement it, but the solution is out there for bigger publications

51:01

Companies are definitely using those measures. Attacks coming usually from the same IP address. So when you have a lot of traffic from those, you can cut those interactions, or even if they get passed through it, you can always look into it again. And then sometimes studying their behavior on the page. So humans typically behave haphazardly, organically on the site. But so far,

51:31

that are not good at replicating that. So you can easily have those measures. And again, if you have the data of their behavior and then assign that to that email list, you can say, okay, there’s some red flags here and then the person can go check one by one and remove. So there’s a lot of things you can do to assign a probability of how sure you are that this person is actually, it’s not a spam.

52:01

the context, right? The subscribers, is that something that you make use of? No, that would be something, you know, you have it, you develop it probably completely just for this case. I don’t think it happens in the ESP level. Yeah. I mean, first of all, that’s the thing, like there’s also, this is missing another opportunity or gap between like the small medium size, you know, publications and the larger ones that there’s no easy way to block a lot of attacks or implement a lot of measures that.

52:30

bigger organization have to stop these attacks. Yeah, makes sense. But the things that we do is we stop, it stops a lot of, again, majority of those attacks, like, and the good thing about, let’s say using a product like CAPTCHA or the Cloudflare. I looked it up. It’s called Turnstile. Yes. Thank you. Using that is they continuously, you know, making it

52:54

better making it more sophisticated. So as the attacks are getting more sophisticated, you know, that service by itself is probably doing the most of the job and the rest of it would be for you to just continuously, I guess, looking at your email list and removing the less engaged, I mean, the subscriber with zero engagement. Yeah. So it’s like the welcome email level, welcome email level also due to look at potentially removing subscribers.

53:22

Some of them are very obvious. So let’s say one, you know, you just got, you know, a lot of emails that are just looking so spammy, like the handle is like some random characters, you can safely remove those. And if they all came right after each other, it depends on you know, if you’re doing it manually on day to day. Basically, we had a client so we work with daily outside and they got to a point where this just effort was taking so much time from you know, their team and they were just getting frustrated of just doing this every day and looking to see the solutions that could be

53:52

minimize this. So we wrote some scripts to do a lot of things that a person, you know, can easily be detected, just, you know, remove those emails with those scripts. That’s really cool. Coming from the same IP address again, that the handles that are, I haven’t tested this, but it just gave me an idea of like, using GPT to pass these emails and ask it like how many of these emails are legit, the handles, right? And it assigns a probability of like, you know, how much it…

54:19

thinks this could be a spam or not. And then you just look at the ones that are, let’s say, below, let’s say 70%, you know, or, yeah. That’s really cool. Yeah. You should, you should build that ChatGPT plugin. Yeah. I’m going to actually talk to our team about it, see if anybody’s interested to pass. We’re actually doing something similar to this for a project that we’re working on to, I don’t know if I can talk about the details of it, but to detect, um, a part of a very large text.

54:48

We ChatGPT and we had some really good success with the few tests that we did. I’m very excited to see how it’s going to roll out. We basically asking the same question of here. We’re asking GPT to review a very large text and get us like certain things out of it and assign a probability to like how accurate it thinks that, you know, its result is like, you know, what we actually asked for it. And then we pass that to the, to a human to, to, to just look at, you know, the ones that are having.

55:15

a low probability of being accurate and that person can verify it manually very quickly. And so this is for when you’re writing an article and you’re trying to refer to a different article, whether that article is correct. Is that right? I mean, in this case would be like, I’m just saying that was just a project that I’m using ChatGPT for specific things, just asking ChatGPT to do the human work of getting something done in a scale and assigning a probability to it.

55:45

project that we’re working on, it worked really well. But I guess you could use it for passing a very large email list and ask it, which one do you think might be spam? Cool. Yeah, that sounds really exciting. That might be the future of programming. You just pass things descriptively to something like GPT, and it returns results. Yeah. So how much of it is it your team managing the deliverability and cleaning the list versus your clients doing it in-house? Or cleaning the lists? Oh.

56:15

We don’t do it manually, but if they need us to help them with writing scripts to automate that process, that’s something we do. But it’s always limited to the ESP they’re using. Some of the ESPs are much easier to write because they have a better API, some ESPs are more difficult. But we’ve done that in the past to automate a lot of these list cleanups. And some of it is not necessarily the script, it’s that…

56:44

You just design an email flow that once that email flow is over and you don’t see any engagement, you can just, you know, not remove that email, but at least move it to a different list. So you’re never probably deleting an email. You’re just moving into a email list, different email list. Right. Yeah. I think I’ve seen it from the hustle before, because like the daily emails are a lot and so I don’t always open them. And then after a while you get like an email that says like, are you still interested?

57:13

And then it’s like, yeah, are you still there? That kind of thing. And it’s, I think maybe like maybe two or three emails. And then if you don’t reply or you don’t click on anything, then you just get removed from the daily emails. Yeah. How many emails do you have to not read? I remember it being like very, very fast actually, like within a week, if you, if you haven’t opened anything within a week, it triggers that already, which I thought was kind of aggressive because, you know, sometimes people are on holiday or they just need a chill out.

57:43

I think it depends. For daily newsletters, I guess if they haven’t opened in a month, you can start thinking that they’re not interested. Yeah, these are things that honestly should be tested. I’m just thinking out loud. If I had a weekly newsletter myself, I’m just looking at my own behavior. My relationship with newsletters is like as my interest is changing, I subscribe to a bunch of newsletters and then I get really dive into that topic and then…

58:12

as I’m shifting my focus into something else, like an unsubscribe from all of them. And if I’m not really opening those newsletters, I guess I’m not really interested. So maybe after, if it’s like a bi-weekly or monthly, I guess you can give it like three months and nobody’s opening it. You can start the automation, you know, start asking, because there are things that, you know, can pop up differently in your inbox, you know, if you’re writing a really good, you know, interesting title for it, subject line for it.

58:40

it can grab somebody’s attention. And yeah, and you can always think that if that person is really looking for it, they will come back. Yeah. Cool. That makes sense. All right. I want to wrap things up. And I have a single final question for you about all of this, which is, what does a rookie get wrong in trying to build a publishing platform at this scale? Big mistakes.

59:06

I guess it goes back to what you were talking about, the landing page, the messaging and the design. Trying to sell too many things. I think that could be the big mistake. And then when it comes to the site, you know, I have a lot of admiration for people like building it, you know, a one person teams building a, you know, media publication or, you know, any anything in that size or in that space, which some of it is like

59:33

They’re the best decision you can make at a time based on the resources you have available to you. I guess the mistake that you can make, because like if you don’t have the resources to design it well, I don’t think you should be worried about it. Your main product is your newsletters, how, what the words you put in it. And the biggest mistakes are I think they’re just not paying enough attention to your users. I’ve seen at the beginning of these publications.

01:00:00

You can make a lot of decisions. There’s so many decisions to be made. There’s, you know, ways you can design it and the ways you can have paid options and free sub options. And I personally try to make things simple for myself to make a decision. So trying to have only few variables to work with and then trying to build on top of that, I think would be the best thing you could do. Yeah. Simplifying things. Cool. Yeah, that’s really helpful. All right.

01:00:28

And to wrap it up, I have two last questions for you. What’s one underrated email tool you wish people knew and talked about more and why? I really want to say Newsletter Glue. And for people who are starting, I know we had this conversation, but I have a lot of hope for Beehiiv, so I just have a lot of hopes for the founding team and the company they’re building from a developer point of view, they started.

01:00:58

releasing a lot of features, which that to me is very interesting. And they’re keeping the price fairly, fairly, fairly at the lowest possible. So if you’re trying to pick a platform, I think give, give Beehiiv a shot versus other options that might be out there. Yeah. I think it’s always good to start with those, you know, options like Substack or Beehiiv. Yeah. I can’t think of anything. I can’t. Sorry. You gave too.

01:01:27

Really great ones already. And last question, what’s your favourite must-subscribe must-read newsletter? Right now, again, I’m trying to learn as much as I can about the media industry. So I’m subscribed to a lot of newsletters in that topic. I’m reading The Media Operator by Jacob from The Morning Brew. I’m reading The Rebooting from Brian. And then, I mean, I’ve always been a fan of trends, generally emails. I’m actually…

01:01:56

After four years, I think three years of subscription, I recently just unsubscribed from it because just that sheer number of ideas was a little bit distracting for me for what I want to do right now. I really love what they put into it. It’s a very dense newsletter. It has a lot of good stuff in it every time I open it. If you’re interested in politics, one of our clients is Intrigue Daily. I think they’re doing a great job of like…

01:02:26

analyzing things, everything like geopolitical matters of the board. I actually need to start reading things outside of my interest. So if you have any newsletters that it’s not related to marketing or tech or business, I would love to get my hands on it. My favorite is always dense discovery. I think that might be the only one that I keep opening after year after year. What is it called? Dense.

01:02:55

D E N S E. Discovery? Yeah, it’s kind of like, I want to say design, but like eco-friendly design, maybe? Something like that. Yeah. Design of anything. Oh, tools, website, books. Okay, I’ll look into it. But he has a very, I guess like, humanitarian, eco-friendly take on a lot of this stuff. So his, the editorial is always kind of…

01:03:23

based around how do we consume less, how do we chill out more, how do we stop polluting the planet, stuff like that. And I really like it. They got a new subscriber. And I love their both landing page and their welcome page. Yeah. Beautiful. I think Kai is a designer, so yeah, it’s really, really nice. Yeah, I love it. He does check my checkboxes so far. All right. Thank you so much, Saeed, for this epic.

01:03:53

super detailed podcast episode. I learned a lot and I hope everyone listening learns a lot too. Where can people find you and get in touch with you if they want to learn more? Um, so about me on Twitter, probably the best, um, my handle is IAmSaeedreza. And, uh, um, yeah.

01:04:18

That’s the best thing. And thank you so much for the podcast, for this inviting me over and having this amazing conversation and thank you. Thanks so much, Saeed.

Wanna get in touch?

Whether it's feedback, questions or a podcast guest recommendation, feel free to contact us.