Client Profile

Presenting Elevate North Texas

Elevate North Texas Youth Shelter is a new nonprofit servicing the whole North Texas area. They are focused on eliminating homelessness in the youth population through three programs:

  • Host Homes: Volunteers open their homes for short-term hosting to help at-risk youth get back on their feet.
  • Hotel Vouchers: Emergency shelter can be provided via hotel vouchers to get youth off of the street for a time while other options are explored.
  • Reunification & Diversion: It’s not always an option, but when it is, intervention with family can eliminate the situation leading to homelessness.
Elevate North Texas

Around 2 million youth run away and experience homelessness each year. And with only 4,117 beds available nationwide for youth, the need is great. But Elevate North Texas is aiming to put a dent in those numbers in their community and could use your help!

Of course you can donate or volunteer, but they’ve also put together a list of great ways you can get involved virtually.

Best Practices

What is a WordPress Child Theme?

There is typically only so far you can go with the adjustable attributes of an existing WordPress theme. Eventually, almost all developers find themselves needing at least small tweaks to what was provided. While WordPress is open source and any theme you’ve downloaded is perfectly open to be edited, doing so is not a best practice. Instead, a child theme is the preferred way to adjust a theme.

The advantage of a child theme is that it lives separate from the source files of the parent theme. That means when a new update gets pushed out all of your edits won’t disappear. That could be a very bad thing to have your customizations overwritten every time the theme is updated.

A child theme could be 100% exactly the same as the parent (though, then you wouldn’t need the child). It can have minor adjustments from the parent. Or it could be wildly different just using the parent as a framework. Regardless of how different it is, preserving even small changes will keep you from wasted time.

Basically any file that exists in the child theme will overwrite what is in the parent. That means you may have just one file in your child theme and WordPress will know you want to use all of the other files directly from the parent. The exception is functions.php, which will run in conjunction with the parent, not instead. So if you needed to add just one function that is an easy way to do it.

There is a specific syntax required for the child style.css file. This is what links the child to the parent. You can see more about exactly what that file must contain in the WordPress Developer Help Files.

The next time you find a theme that does ALMOST everything you want if only it had one minor change, you will know to ask around to find someone who can help you develop a child theme for the most robust and technically preferable way to get exactly what you need.

Best Practices

Continuing education with Udemy

One of the best things we can do for ourselves, our careers, and our hobbies, is to be continuously learning. And one of the best places to do this is at Udemy.com.

Udemy logo

I will start by saying that this is not a sponsored blog post. I’m not affiliated or compensated by Udemy in any way. I’ve just found their platform to be filled with fantastic eLearning content. And trust me, I am extremely critical when it comes to bad content being mislabeled as “eLearning” when it is, in fact, recorded webinars.

I have taken two courses so far with prices ranging from $12-$19, they certainly don’t break the bank. They are split into manageable chapters so I can keep track of my progress while spending an hour here, 30 minutes there. They come with instructor led videos, downloadable assets, and self-paced content.

One thing I am especially guilty of is learning something, and then mentally checking it off. Javascript, CSS, web design, WordPress – check, check check. While all around me things are changing, new features are added, new best practices are shared. And if I stay stagnant, stubbornly doing things “the old way” the only one who suffers is me. So I’ve pledged to spend this year taking courses over topics I feel like I already know well. Honing my skills or finding new shortcuts to success is my goal. But as soon as I run out of courses in that effort, I’ll start picking new ones to learn.

With over 155,000 courses to choose from, there is definitely something for everybody. Check it out today!

Social Media

My Experience Purchasing Followers on Facebook

In the HBO movie, Fake Famous, four relative nobodies are given a full social media makeover. Not only do they get new clothes, hair, and makeup, but a healthy injection of paid followers and engagement. It had never really occurred to me to try to game the system by purchasing followers.

Then one day, I tried to unlock Audience Insights on my Facebook Business page only to find that you need at least 100 followers before you can view those analytics. Over the course of four and a half years, I had amassed a grand total of about 30 followers. Getting to 100 seemed daunting if not impossible. So the idea hatched – what if I just purchased followers on Facebook?

Where to purchase followers?

There are lots of different sites offering all sorts of social media engagement. And each one is generally a separate fee – likes, shares, follows, comments – all for a price. I started with a cursory search for the best, most reliable social media farms online. After the first one on the “Best Of” list failed to process my payment, I landed on SidesMedia.

Their online reviews were great (a little too good, to be honest). I appreciated some content on their site about the pros and cons and potential pitfalls of utilizing their service. The payment plans and packages were clearly laid out and the investment was minimal. So I decided to give a whirl. 250 Facebook followers cost $9.99.

What did I receive after purchasing followers?

The first thing to expect is that new followers won’t come rushing in all at once. And that’s a good thing. To avoid triggering any watchdogs inside Facebook, followers will trickle in over about a 72 hour period. They promise that all of the new followers will be real profiles and they delivered on that. All have profile photos, friends, and activity on the platform. It has increased my reach and impressions slightly, but just because they follow me doesn’t mean they engage with me – not for free anyway.

About 30 minutes after payment was processed, I got my first new follower – Sanjoy Sarkar. Followed a few minutes later by Abdullah Al Mamon, Akash Foysal, and উড়ন্ত মন. In the end, despite purchasing only 250 new followers, I ended up with about 500 new profiles following me. 476 are located in Bangladesh. There’s nothing inherently wrong with that, but for a small, independent, Dallas-based marketer, there’s certainly a fishy smell to anyone poking around. I did get more followers than I paid for, they all have active profiles, and they have all stuck around for months now. Sometimes the problem is that your paid followers disappear after a short time, but I’ve been pleasantly surprised by my experience.

Was it worth it?

Ultimately, I got exactly what I paid for – more even. The payment process was fast, easy, and secure. No shenanigans were employed and no penalties incurred. While I may not have built up my social following for real, it did allow me to unlock advanced Audience statistics that were previously unavailable to me.

Facebook Audience Statistics

I probably didn’t increase my actual reach, nor did I onboard engaged participants for my brand. In order to drive further, I would need to purchase Instagram followers to match, a certain number of likes on my posts, and by the time it appeared genuine, I would be out of pocket a few hundred dollars. I can’t say I would recommend it as a strategy for your social channels, but as a kick start to unlock some features, I believe I got my $9.99 worth.

Google Ads

Google Ads Keyword Match Types Explained

Inside a Google Ads campaign, not all keywords are treated the same. There are multiple different match types to choose from. These choices have changed in recent years, so it may be time for a refresher. Understanding the pros and cons of each can help you get the most out of your ad campaign, while keeping things organized, simplified, and easy to maintain.

Broad Match

Broad match is the most lenient match type available. Basically anything even remotely close or related to your keywords is considered a match and include you in the ad auction. No special syntax or markup is required to use broad match keywords. Just type them in a list and you’re done.

The thing to be careful of is matching too broadly and running up a big tab or running out of budget dollars too early. It is best to have longer phrases in broad match to get the best intent matching. Something like hats alone might be too broad as it would match not just on hats, but caps, headgear, fascinators, etc.

The best thing about broad match is that you can do more with fewer keywords. Instead of a list of hundreds of keywords each with their own metrics and performance, you can consolidate it all into a single keyword. It’s easy to evaluate, pause, or edit. You do sacrifice a little bit of granularity but that’s often an acceptable trade-off. Typically broad match pairs with some negative keywords to narrow the focus enough to not be wasteful.

Phrase Match

Phrase match is pretty self explanatory. Any phrase surrounded by quotation marks is considered a single term. Rather than matching on each word independently, it will require the full intent of the phrase to match. Something like “women’s hats” may match “women’s fashion”, but not “men’s fedoras.”

These reduce the number of matches, but each match better aligns to your target audience’s intent. You can test using the same phrase with or without quotes to give you broad match and phrase match variants and see which one performs best. Even though the phrase element is more restrictive, it still does not require an exact match. But there is a syntax for that.

Exact Match

Exact match uses square brackets in the keyword syntax. [Dallas Golf Fundraiser] is an example. That requires the searcher included that exact phrase in their keywords keywords before it triggered the ad. This is a very restrictive form of ad and I typically only use it for brand terms, like [Dijon Marketing]. Typically when someone is using your brand they will type it exactly, and close matches may not be relevant. These typically appear sparingly in your account as they will have way fewer matches and may not ever match at all.

Negative Keywords

Last, you can create lists of negative keywords. If a user’s search contains these words, your ad will NOT show. If you are advertising for a construction company that sells triple-pane windows, you may need to add a negative keyword for Microsoft so you don’t waste your budget on users looking for office software. The best way to find terms you need to negate is to monitor your Searched Terms report. If you see any irrelevant or harmful searches in there, you can pop over to your negative keywords list and make sure that search never triggers your ad again.

The best mix of keywords includes a mix of match types. And every situation is different, but if you’ve only ever explored broad match, try out a few of the other match types and see if your ads perform better than before.

Best Practices

Consistent Branding Through Hex Color Codes

Let’s say you created an awesome logo. Something like this:

Awesome Logo

The color palette used in your logo can inform the entire brand story from websites to print materials to PowerPoint presentations. You could approximate the colors by eye, but the key to doing it right is knowing your hex color codes. Take a look at Hex color codes explained for info on what a color code is. Here we’ll talk about how to use them.

In the awesome logo above, we have three colors:

  • Yellow #FFD400
  • Purple #7F3B96
  • Pink #E9529D

These three codes should now be part of your brand book. They should be shared with all employees who might be making banners for an event or ordering T-shirts for your volunteers. Getting the color exactly right will tie together your brand even tighter.

In Microsoft Office products like Microsoft Word and PowerPoint, you can choose custom font and background colors. In the color dialogue, choose More Colors > Custom. There you’ll have the option to choose a color, input RGB values, or paste the hex codes from your brand book.

You can save them as templates and distribute them to your team to help everyone stay on brand.

Best Practices

What is progressive profiling?

Progressive profiling is a method for building a robust and complete customer database. You may want to know lots of different bits of info about user, customer, donor, or volunteer. Examples are email addresses, physical addresses, phone numbers, credit card numbers, interests, open schedule times, and more.

Imagine the first touch point you have with an organization. You like their message and would like to stay in touch. So you click to join their mailing list. Only, before you can click “submit” you have to fill out 2 pages of information about yourself. What’s the most likely outcome of that scenario? Your users will give up halfway through the process and you’ll miss out on a new email recipient. This could be considered friction in the process. Asking for too much data up front will result in you getting no data at all.

The only thing you need to know in order to add someone to your mailing list is their email address. If they are willing to give it, then take it and move on. You can then progressively profile them for the remaining information.

  • In order to sign up for an open volunteer position they need to provide their first and last name associated with their email address.
  • The first time they log into your Volunteer Management software, a pop up asks them for their cell phone number.
  • Send an email 3 weeks after they’ve signed up asking them to populate their physical address to receive snail mail.

The basic idea is to take what you can get. Require only what is absolutely necessary. And never miss an opportunity to ask for more while making it easy to add just one additional piece of data at each touch point. What you’ll find by asking for less is … you get more!

Email Marketing

Email Marketing Automation vs. a Mailing List

You might have set yourself up with an email mailing list. Your visitors and supporters can sign up and now you have a fast, easy, and effective way to bulk contact them. But are you taking your email capabilities as far as they can go? Do you know the difference between true email marketing automation and a mailing list?

What’s a mailing list?

Some popular email platforms you might have heard of are Constant Contact or MailChimp. They allow users to quickly and easily sign up to be a recipient of your outbound emails. Users can even sometimes progressively add to their profiles over time. That may give you access to names, physical addresses, and things like topics of interest. Users can also easily opt out of receiving future emails at any time.

Once you’ve got a decently large mailing list, you can reach the masses with the click of a button. If you rely solely on social media posts, ever changing algorithms interfere with your reach. If you try to use paid advertising to expand, you can find yourself with big bills and not much to show for it. But email is a guaranteed direct line to your self-identified engaged audience. There’s a reason that spam email is so prevalent even to this day – email works!

How is Marketing Automation different?

Even with all of that, you may not be utilizing your email lists to their full potential. For that you need marketing automation. First, check out How to get started with email marketing and Maintaining an email marketing editorial calendar.

Marketing automation segments your audience into far more different groups than you can manually manipulate. You can use metadata to build audience lists on the fly and send different emails to each different type of recipient. That’s the main idea – it’s not just one email sent to every list member at the same time. Different emails to different users at different times will maximize the impact of your email list. Here are some examples:

  • Send a series of welcome emails after a new user signs up to receive emails from your organization. The first one should arrive immediately and the others can be spaced out after that.
  • Remind users who have visited your website but not made a donation yet that your fundraising campaign is still active.
  • Thank users who have donated in the past 30 days and promote your recurring donation options.
  • Send 5 emails in a chain of spotlights on your most successful programs, but only send each one one week after the previous email has been opened and read.
  • Send a customized birthday or service anniversary to each individual recipient. If integrated to your Volunteer Management software, milestone volunteer hours can be celebrated with no interaction from you.
  • Re-engage users if they haven’t opened an email or visited your site or volunteered in person for over 6 months. Everyone gets busy and the occasional reminder can be really effective.

With some preparation and a little technical know-how, you can get even more out of your valuable list of emails with less effort than manual email campaigns!


What are render-blocking resources?

If you’ve run a speed test on your website, you may find that one of the biggest contributors to slow load speed are render-blocking resources. But what are render-blocking resources? And more importantly, how can you minimize them to help speed up your website’s load times?

Which resources block rendering?

Any file that needs to load, but does so before the page has finished rendering is render-blocking. Rendering just means that the page becomes visible and is ready for interaction with menus and links. If the site is busy downloading a file before it begins to paint the picture of the final website, then that produces a poor user experience. Our attention span has become so short that even a load time of a few seconds can feel like an eternity.

Imagine you are preparing to bake a pie using a recipe. If the first step of that recipe says, “Refer to Chapter 2 for a basic pie crust,” then you must leave the recipe to go read the reference. While you are doing that, the recipe will not progress. But it may be a critical step to the finished product. If you skip the step you’ll have a pie tin full of filling. If you wait until the end of the recipe, you’ll have the crust sitting on top of the filling. So it’s not always guaranteed that render-blocking resources are unnecessary.

What can you do to mitigate the impact?

Evaluate each file that is being loaded. In many cases, the render-blocking files are not even used by the finished page. In this case, it’s an obvious benefit to remove the files. If you’re using WordPress, a lot of plugins will come with their own CSS style sheets or JavaScript files. Even if you deactivate a plugin, it may not remove all of the files from the page load. Determine which plugins can be removed, and deactivate and delete them.

In some cases, render-blocking content is absolutely necessary. In that case, all you can do is try to keep the number o files to a minimum. You can also “minimize” the files, which removes all white space, comments, and makes certain functions and loops use fewer characters. Reducing the kB size of the file will make it download faster.

You can also keep the files just as they are, but load them last. Moving certain file references from the header to the footer means the whole page will load first, and only after it is almost entirely finished will it load the footer. Depending on the file, this may be perfectly acceptable. Your page could take 20 seconds to fully load, but if all of the visual and interactive elements are available after 1 second, then your load speeds are good.

Check out the blog on Measuring load speeds with Google PageSpeed Insights to see if render-blocking resources are a problem for your site. Faster load speeds can not only delight your users, but can have indirect benefits like better SEO ranking.

Best Practices

Measure load speeds with Google PageSpeed Insights

Load speeds for your website are an important metric to be aware of. The most obvious impact of a slow site is frustrated users – especially on mobile devices. However, it can also create a technical debt that can be difficult to overcome. Search engine crawlers aren’t going to wait around for your site to load so they can crawl and index it. That will indirectly impact your SEO ranking and could lead to less organic traffic over time.

Be aware of site load speeds

Behavior > Site Speed > Page Timings

There are two free tools from Google that can tell you about your site’s load speeds: Google Analytics and Google PageSpeed Insights. I like to start in Google Analytics, because you can see aggregate data over time for each and every page of your site. It might be that you have a fast home page, but a very slow blog archive. Google Analytics will also link directly to PageSpeed Insights suggestions.

Navigate using the left-hand main menu to Behavior > Site Speed > Page Timings. Here you can look for any problem child in your entire site and start your focus there. First, the average load time for all pages is show at the top of the chart. Then each page is assigned a bar chart for its deviation from the average. The red bars show the slower page and what percentage above average they took to load. This is accumulated for all users over a period of time, so may not perfectly represent a single load experience you may have had.

Average Page Load Time compared to site average

Get more detailed data on load speeds

The menu item just after “Page Timings” is “Speed Suggestions.” If you’ve determined that you have a page with a load speed problem, this is the next place to go to view suggestions. The link for suggestions will actually take you to a new window loaded with PageSpeed Insights. So you could skip right to there from the beginning if you already know you have some slow pages. Here you will see more detailed information about some timing measurements.

  • First Contentful Paint (FCP) – how long it takes your site to go from a blank screen to the user seeing something
  • First Input Delay (FID) – any delay between a user interacting with an element, say clicking a button, and the page being ready to respond
  • Largest Contentful Paint (LCP) – basically how long it takes your site to look good and as if its finished loading (even if maybe it’s still doing some work in the background)
  • Cumulative Layout Shift (CLS) – how much do items move around on the page as they are being loaded

There may be no problems with the perception of your load speed, and often times, perception is reality. Take a look at these advanced measurements and look forward to another blog describing some common problems and things you can do to speed things up!