Local SEO is the practice of optimizing a website for local searches and business listings.


add a google reviews badge to your wordpress site without a plugin

Add a Google Reviews Widget to WordPress Without a Plugin

This article will teach you how to leverage the Google Places API to add a Google reviews widget to your WordPress website.

Why Customer Reviews Matter

It doesn’t matter if you’re an online-only or a traditional brick-and-mortar business: customer reviews matter. Reviews are an important ranking signal for local search optimization (increasing the visibility of your business listings in services like Google My Business). In addition to getting visitors to your site, reviews provide trust and credibility that turns a casual visitor into a customer. In other words, they can influence click-through rates, bounce rates, and conversions.

If your website hosts it’s own customer reviews (in the right format), Google will show review stars as part of your organic listings.

But if you don’t have reviews built into your website, getting review stars to show up can be hard to achieve. And why add review functionality to your site when Google already provides them?

We’re going to leverage the reviews that are already on our Google My Business listings to add a reviews widget to a WordPress site.

Get a Google API Key

First, you’ll need a Google API key. Follow these instructions to create a project and create an API key, and then follow these instructions to enable the Google Places API for your new project:

  1. Go to your Google Developer Console and make sure you are on the app you just created.
  2. Click Enable API, search for the Google Places Web Service and click the link for that service.
  3. Click Enable to allow calls to the Google Places Web Service from your application.

This configuration will provide you with a key to access the Google API and query the Google Places web service.

Write WordPress Code to Pull Your Business’ Google Reviews

There is a little bit of code involved in this process, and I admittedly don’t write short code.  So rather than reproduce it here, I’ve added it to a Gift which I’ve embedded below.

This code is split up into several sections.

RWC_Google_Places Class

The RWC_Google_Places class acts as a wrapper around the Google Places web services that we need to access.

Create a new instance by passing the API key to the class’ constructor. The findPlaces() method searches the Places API for all locations that match the query. The query can be a business name or address. The method returns a PHP object built from the JSON response retrieved from the API.

The getDetails() method queries the Places API for in-depth details about a particular “place” using the ID associated with the listing. Pass it a place ID, and it will return a PHP object containing the listing’s details.

RWC_Google_Reviews Class

The RWC_Google_Reviews class leverages the wrapper class to retrieve Place details and generate the badge via the WordPress Shortcode API. Create an instance by calling the constructor and passing your Google API key. It will automatically register shortcodes with WordPress.

Displaying the Google Reviews Widget

To generate a shortcode, add the No query or placeId attributes specified on shortcode. shortcode to your page content. Of course, that’s not quite enough.  To create a badge, you’ll also have to specify one of two shortcode attributes: query or placeId. The query attribute can be used to send a query string, such as a business name or address, to Google Places, and it generates a badge for each match.  If you happen to know your business’ placeId, you can use that instead. Examples:

[google-reviews-badge query="Reich Web Consulting"]
Google Reviews Widget Without a Plugin

The shortcode output

The Code

The code is long, but it’s not complicated. You can quickly reduce this code to just a couple of lines if you don’t care about things like comments and error-checking.

If you look closely at this code, it doesn’t load any styling. That’s intentional. The HTML output is pretty raw, and I decided to leave it up to anyone who decides to use this code to make their badge match their website.

So go ahead and give it a shot. Leave a comment with any questions or feedback about the code.


My Experience with Yelp Paid Advertising

Updated May 1, 2017. The emails just keep rolling in from others who feel as if they were scammed into Yelp paid advertising. At the end of the post Jim from  Panoptic Media shares his experience with Yelp.

This post describes my experience with Yelp paid advertising from the moment I took the sales call to today, about one month from the end of my sixth month contract. If this post disappears it’s because it violated some esoteric clause in the contract. Otherwise, this is my experience with the service as honestly as I can describe it.

My Experience with Yelp’s Sales Team

I need only three words to describe Yelp’s sales tactics: polite, premature, and annoyingly persistent. Okay, that’s four words.

A representative from Yelp left me several voicemail messages in February. I ignored them. But eventually their persistence paid off and I decided it couldn’t hurt to see what they had to offer. My business is new and I’ve had a difficult time getting out in front of my more established competition. So the next time Yelp called I answered.

The Yelp salesperson was friendly. She explained the package she wanted to sell me in clear terms. The most enticing aspect of paying for ads on Yelp is that they’ll place your ad on your competition’s Yelp page. That means that when potential customers see your local competition’s profile they’ll see your ad too. A little shady? Sure. But it’s a pretty compelling feature to a new business like mine that’s fighting tooth and nail for recognition.

Yelp’s Advertising Package

The advertising package basically sold itself. Until she told me the price and the terms. Yelp charges a flat fee per-month, plus a variable pay-per-click rate. It’s not cheap, and they wanted to sign me up for a 12-month contract. I’m all for investing in my business, but a $6,000 gamble? I wasn’t ready for that.

I told them no. It was too expensive and too much of an unknown. The sales person pushed. We played the “How Much is a New Client Worth to You?” game, and after several innings I lost. Her insistence and my naiveté about Yelp won.

I negotiated the cost down with fewer features and a 6 month contract. My sales package included ads that would be seen on competitive Yelp pages for six months, and a $150 CTM budget. I could configure ads for desktop and for mobile.  I dropped the expensive video service that they originally included in their quote and that reduced my cost significantly. For me the advertising package was still insanely expensive but it was a cost I could live with losing if it didn’t pan out.

So far it hasn’t.

I’m at the end of my six-month contract and I won’t renew it. Let me break down the reasons why.

Yelp Paid Ads are Expensive

As I said, Yelp’s paid placement isn’t cheap. While I did negotiate a better price than I was initially quoted, by the time my six month contract expires my experiment with Yelp will have cost me around $1,000.  $50 in highly targeted Facebook ads and $100 in AdWords spend have been far more effective.

My Ads Have Performed Poorly

I’ve got some experience with Google AdWords and I understand that it can take a month or so to optimize your ads and start getting more and higher quality conversions.  I will say that Yelp worked with me and provided some advice on optimizing my profile.  But the conversions never came.

In 6 months time I’ve had around 60 views to my Yelp profile. In this time Yelp reports that it has generated 6 calls to my business, 6 clicks to my website, and 2 clicks to the Calls to Action on my ads.

Keep in mind that these numbers are not broken down based on whether they came from an ad or organic Yelp traffic. The only two clicks that I know were ad traffic are the clicks to the ad CTA’s.

But it doesn’t matter where the clicks came from. Of the $1,000 I’ve spent and the 14 clicks that I’ve received, no one has converted to a paying customer.

I can’t blame Yelp completely. Maybe those 6 clicks to my website bounced because my website is awful or something. Or maybe they just didn’t find what they needed fast enough.  But I can blame Yelp for the phone calls.

All the Phone Calls Generated by Yelp Were Unsolicited Sales Calls

Of the six phone calls Yelp has generated for my business all of them have been sales calls. How can I tell? It’s easy.  Yelp records the date and time when a click-to-call event occurs.  By comparing this to the log in my phone, I know exactly what call that click generated.

Every single call Yelp generated was another business calling me to sell me services. That’s annoying.  But when you consider the fact that I’m paying a CPC rate for those calls when they arrive through my ads, it’s downright infuriating.

Yelp Isn’t Popular in my Area

Yelp isn’t popular in my area. I thought I did my due diligence before purchasing by studying the profiles of my nearest competition. I saw that they had a few reviews and good ratings, but I didn’t see that their handful of reviews spanned over 5 years. Yelp just simply hasn’t been tapped as a resource in central Pennsylvania.  Given that there just isn’t anyone using Yelp in my area, how could I have any expectation of success with Yelp paid advertising?

I guess I can’t blame Yelp completely. It’s a sin of omission on their part.  But I do feel like they sold me an ad package they should have known would not perform well.

I Have Had No Yelp Review

I can’t blame Yelp for my lack of reviews. I’m a new business and as I already mentioned Yelp isn’t popular in my geographic area. My client base is small, and Yelp discourages you from asking your customers to leave reviews. Yelp reviews won’t arrive organically as their sales team promised. The one review I received was marked as Not Recommended for who knows what reason.

Update: a reader named Sean pointed out that there is a reason why Yelp! marks some reviews as “not recommended.”  I think at the time I was too angry with Yelp to give them credit for doing anything right, but Sean has a point:

You said that a client left a comment on your Yelp page, but Yelp labeled it as “not recommended”. Yelp does this if the Yelper leaving the comment has only had a very small history of making Yelp comments like three or less. This is so when someone wants to blast a business with negativity but they otherwise have never made a quote on Yelp it just won’t hold up and I noticed that after a year or so they will actually remove those comments. – Sean Denlinger, Reader

The whole point of Yelp is user reviews. When Yelpers Yelp, they’re looking for which business has a high rating with lots of positive reviews. I knew this would be a problem when I signed up, but the salesperson assured me that the reviews would come organically, and in time.  Again I feel like Yelp committed a sin of omission.  They should have had a good idea that I would struggle for success with the ad package they sold me before I had a Yelp history established.

Looking Ahead

As I said: I won’t be renewing my Yelp Paid Ads when my six-month term expires. Yelp proved an expensive gamble.  I bet my money on a horse named Yelp, and she broke her leg exiting the gate.

My failure to see conversions through my paid Yelp ads lies on both our shoulders. I did myself a disservice by failing to research my local Yelp community and activity before I signed the agreement. Yelp’s sales team did me a disservice by selling me a very expensive ad package prematurely. They were privy to all factors working against me and aggressively sold me their advertising package anyway.

If Yelp had suggested ways to bolster my profile, reviews and ratings, they could have sold me a far more robust and successful ad package down the line. Instead they played the short game and we’ve both lost.

How You Can Find Success at Yelp

With all that in mind, there’s no reason to extrapolate my experience and assume it would be representative of your own.  If Yelp is popular in your geographic area then Yelp Paid Ads could increase visibility, and if it’s already highly rated then sending it more traffic via ads will be more effective than sending those clicks to a profile that lacks reviews

My suggestion would be to keep in mind that Yelp’s sales team is pretty aggressive. Friendly, but aggressive. They will have answers to your questions. Those answers will sound compelling. If you say no they will re-frame the problem and restart the conversation. Don’t hit the “Launch” button right away. End the call. Think about it. Do some research and find out if Yelp is popular in your area. See what you can do to enhance your Yelp profile organically before paying for ads. (I have a pinboard setup with some great suggestions.)

If your Yelp profile is already positioned for success through paid advertising, hedge your bets and see if they’ll agree to a short trial period instead of their standard 12-month agreement.

Blog subscribers are beginning to send me their own Yelp horror stories. I think it’s important for anyone interested in this article to understand that my story is far from unique. With that in mind, I’ll be sharing them here.

This was an expensive error that I wish I could tell every business owner I come into contact with about. If I could rate the experience on Yelp, I would give it zero stars. The ad budget that I gave- $450 PER MONTH did not result in ANY increase in business or increase in web traffic to my site. Additionally, $75 additional dollars for an enhanced listing did not improve any incremental traffic to our site. I am now over $1000 in expenses – WITH NO SALES ATTRIBUTABLE TO YELP. (This has been verified via my Google Analytics and Webmaster tools. The Yelp explanation on the sign up page should say “WE WILL BILL THIS AMOUNT MONTHLY NO MATTER WHAT” regarding the monthly budgeted amount- and if Google works differently in the CPC, then Yelp should have made it abundantly clear. If this was coming from a customer of mine regarding my business, this would have appeared on my business’s public review where any potential client could see it. Is there anywhere where I can review YELP! on YELP! so that other businesses could see my displeasure and maybe avoid a $1000 waste of money? Is there anywhere on YELP! where I could lambast Yelp and create pressure for a refund/resolution – the way that Yelp encourages other clients to do to their advertisers? When I called the advertising line to complain, I was told by the representative that I should have used the Managed Advertising Campaign- but that since there was nothing for him to help me with and he transferred me over to another department.The representative in that department, who was very nice and professional, told me that my only recourse is to provide feedback was to send an email. I am frustrated and angry with them. It would be interesting to look on Yelp for an attorney that does class action on contingency.

Vic Levinson

I also got suckered into a YELP campaign that was totally ineffective, in spite of the sales person’s conviction that it would be a boon for my video production business, Panoptic Media. We do corporate and government work, not weddings. We got nothing at all from the very expensive YELP ad. If YELP had a place for it in their universe (which of course they don’t), I’d rate their value to professional services a big zero…

Jim Prues, Panoptic Media

How to Add a Business to CitySearch

I’m in the process of doing some link-building for my business, and I noticed that some of my local competitors are listed in city and business listings that I’m not.  One is called CitySearch.

I debated whether or not it was worth the effort to get listed in this type of local business directory. In the end I decided I should. First off, my competition is there and I’m not.  Second, there is some SEO benefit to being listed in business and location-specific directories, since they often manage to rank higher for key search terms than the businesses in the listings they provide. So if folks search for “computer repair in mifflinburg” and get local business directories first, I probably want to be there.

CitySearch doesn’t have an Add Your Business button. So How, pray tell, do you get into their business listings?

How to Add a Business to CitySearch

According to CitySearch’s FAQ (now hidden away at the bottom of their About Us page),

Citysearch partners with InfoUSA for local business data. They offer an Express Update service that allows merchants to update their listing data as well as add new businesses. Once you’ve added your business please allow 1 – 2 months for the information to be on Citysearch. Find out more at: http://www.expressupdateusa.com. CitySearch FAQ

Once you discover this little nugget of truth, getting listed is actually pretty easy.  Follow the instructions below.

  1. Go to ExpressUpdate and create an account. If you’re like me and totally distrust services like this you’ll be wise to use a junk email account to register. Don’t worry: you can associate a different email address with the actual business listing.
  2. After you’ve registered go back to the home page and search for your business. If it finds it, great! Claim your business and make any changes it requires to keep it current. If not, follow along.
  3. If the search didn’t find your business, you’ll see a link to Add it Now. Click that link and you’ll be provided with a form to add all of you business information. Once that’s completed, you’ll have to verify via phone that you have permission to manage the directory listing for this business.
  4. After phone verification your listing will go into a verification state. Mine took a few hours, but eventually it was ready for me to claim.
  5. Go back to ExpressUpdate, login, and on your dashboard you’ll see a table of business listings you manage. Go ahead and click Claim. It will give you a phone number to call to complete the process.

Portfolio Items