JC Hart Website Photo

Property Management Company Gets 20 Localized Websites

J.C. Hart’s Website Challenge

The J.C. Hart Company, an Indiana property management company with over 20 multi-family apartment communities, was spending too much time managing their websites and needed a better website solution so they could focus on other, more lucrative marketing initiatives. Their solution criteria included:

A central interface so they could make changes across 20 websites at once and reduce time spent on maintenance.

Unique, individualized content for each community’s website.

Fresh design that was fast and mobile responsive.

Tight integration with their current scheduling software, LeaseHawk, as well as their resident management software, ResMan.

The Integrated Website Solution

Having worked with Flint Analytics before on analytics projects, and knowing they had a multi-location website capability, J.C. Hart turned to them for help on their website redesign and relaunch.

“There are plenty of companies that know what they’re talking about. The big differentiator with Flint Analytics is that they know what they’re talking about and execute in a timely manner.” -Mark Juleen, J.C. Hart V.P. of Marketing

Together they worked on a website solution and design that would give J.C. Hart the ability to manage websites through a central interface and still have the flexibility to make changes at the property level. They could create a new page once and have it populated across all sites with each property’s unique information, name, and copy instead of having to do each page one at a time.

Branding was important, and J.C. Hart retained brand control over the sites while still having unique logos, photos, and copy for each property. Ryan Cox, J.C. Hart Digital Marketing Manager said, “One of the challenges was that a job this big (20 individual websites) is really 20 different brands, while carrying through one brand identity.”

Other website features included:

●      The ability to quickly add new websites for properties that J.C. Hart had built or acquired

●      Prospects could schedule tours directly on the website with custom LeaseHawk API integration

●      Resman custom API integrations including floor plans, pricing, and resident services

●      Strong call to actions on mobile and desktop

●      Photo galleries, floor plan, amenities, testimonials, and more

●      Automated social media integration with Instagram

Website Results

More Scheduled Tours and Better User Experience

The ability to easily schedule tours on their website was important, as J.C. Hart has learned that prospects who schedule tours are more likely to lease. Within the first couple of months they’ve had an uptick in scheduled tours, due to the strong CTAs on the website as well as the LeaseHawk integration. This was especially true for their apartments that cater to students and young professionals who are more likely to schedule online rather than call.

The J.C. Hart team has been pleased with the user experience on their sites.

“I think on mobile they are ten times better than previous mobile sites. The way that they render on mobile is just so much better, and the way that people can navigate and calls to action on mobile are better.”

-Mark Juleen

Reduced Maintenance

J.C. Hart reported reduced maintenance on their sites.

“A centralized hub for mass-changes, and a decentralized exact-hub for individual properties is an excellent feature. Additionally, better websites (speed, content, layout, usability, UX, functionality) mean I’m having to make changes less, and the maintenance is definitely, significantly reduced.”

– Ryan Cox

With their new websites, J.C. Hart has been able to begin focusing on other marketing initiatives while increasing their scheduled tours, reducing their time spent maintaining websites, and creating a better user experience, especially on mobile.

Math for Marketers: Quadratic Trendlines

Math for Marketers: Quadratic Trendlines

Disclaimer: We’re going to be using some calculus and linear regression here. The math can be a bit boring, so bear with me. We’ll get to the fun applied part after getting through some of the need-to-knows. If you’d like to skip the theory and go straight to the application, click here.


At Flint Analytics, we specialize in hyper-local marketing strategies for multi-location businesses. What that means is that we utilize geographic siloing to a large degree: every city we’re marketing to kind of exists in its own little strategy bubble.

While this detailed level of attention yields fantastic results for our clients, it can make my job as an analyst very difficult. Things may look great for the client as a whole, but how do we sift through the data quickly and efficiently to know when things might be going wrong in, say,  just the Oklahoma City market?

There are several different methods for accomplishing this goal. Today we’re going to discuss how to use quadratic trendlines and their mathematical properties to quickly and efficiently identify potential problems in your multi-location data.


What is a Quadratic Trendline?

Generally, a quadratic trendline is a second-order polynomial which attempts to best fit a set of data. The equation will look something like this:

In our application, the x-value will be a measure of time like {1, 2, …, n}, and the y-value will be our KPI (sessions, leads, organic traffic, etc). The most important part of this equation is or the quadratic term within the equation, as it allows us to do some interesting analysis with regards to current trends and changes over time.

Let’s say you’re analysing traffic trends over a period of 60 days and your best fit quadratic trendline is:

In your data, the x-values are days {1, 2, …, n}, and your y-values are the actual session counts for each day. Graphing this equation alongside the actual data looks like this:


The blue line is the actual day-to-day data, and the red line is the quadratic trendline. You can easily notice two things:

  1. The day-to-day data fluctuates periodically every 7 or so days, suggesting some weekly trends.
  2. The trend line hits a low point somewhere in the late 20s or early 30s.

With the periodicity of the day-to-day data, it’s very difficult to visualize whether things are trending in a good direction over time. One thing we could do is find the slope of the best fit line without a quadratic term. In this case, our equation would be:

The slope tells us that things are technically trending positively over 60 days, but the coefficient .00286 is practically 0, which doesn’t really give us a lot to work with. This basically says “things are going up…barely.” The reason the quadratic equation gives us so much more to work with is that it has a critical point.

Warning: Calculus Ahead Let’s bring back the quadratic equation and take its first and second derivatives:

From the first derivative, we can find that there is a critical point somewhere around day 30:

From the second derivative, we know that the equation is convex. Recall these basic rules:

If y’’ > 0, y is convex

If y’’ < 0, y is concave

A concave function looks like a sweet Peyton Manning touchdown pass (it goes up then comes down), while a convex function is like a skater dropping into a halfpipe (you get it). Or, more precisely:



So we know that our trendline is convex and that it has a critical point around day 30. What that means from an analytics standpoint is that during the 60 day period of analysis, things had started off trending in a negative direction before they began trending positively around day 30. Maybe we started a new ad campaign on day 30? Maybe our luck turned around? The answer is irrelevant to the issue at hand: what’s important is that we now have a mathematical way of breaking out trends into two date ranges separated by a critical point.


Interpreting Trends with Convex and Concave Curves

At any specific point in time, a quadratic trend can exist in 1 of 6 states, visualized below.



If a trend is in the Negative, Decreasing state, it is losing value over time but at a decreasing rate. This is important, because it tells us that each successive day is losing less value than it lost the day before and the trend is approaching a critical point. When the trend passes the critical point, it will generally move into the Positive, Increasing state, which is commonly referred to as hockey stick growth.

If a trend is in the Positive, Decreasing state, it is experiencing diminishing returns. A value in this state should be monitored for future changes, as passing the critical point will take it into the Negative, Increasing state. In the latter state, value is diminishing at an increasing rate overtime, resembling a nosedive.

If your trend is in the Minima state of a convex curve, it is expected to begin hockey stick growth the next day. If your trend is in the Maxima state of a concave curve, it will begin its nosedive the next day.


Translating the Math to Google Sheets or Excel

Let’s take our data and create a report like this in Excel or Google Sheets:


This report allows us to quickly visualize the trends of our target cities. Each individual location will require the same analysis that I outline below, so as you’re reading, keep in mind that you will have to replicate this process multiple times.

Recall that we will need the actual day-to-day data, a set of days relative to 1, and the squared days. So, our data may look like this, where the grey-shaded cells correspond to the cell column and row references:

data_tableData Table

In another table, we will estimate the quadratic trendline using the linest() function, as well as perform the calculations necessary to find the critical point and the trend. Let’s say that we’re placing our data manipulations on the same sheet as the data table, starting at row 5. Our output for, say Oklahoma City, will look like this:

data_manipulationsData Manipulations

Before getting into the calculations, let me explain the data contained in each column.

  • x2 – the coefficient on the quadratic term in the linear regression
  • x – the coefficient on the x term in the linear regression
  • CP – the critical point calculated from the linear regression
  • Shape – whether the curve created by the linear regression is convex or concave
  • Trend State – whether we are currently seeing the metric of interest increase or decrease and the acceleration of the change

Now, let’s look at how to generate these calculations.

The Linear Regression (Columns B and C)

Here we use the linest() function to generate a regression equation in which Total Traffic is the dependent variable and Day and Day2 are the independent variables. The linest() function spreads each coefficient across several cells, so in order to contain our output to the first two coefficients, we use the index() function as such:

Cell B6


Cell C6


The Critical Point (Column D)

Return to the general form of our quadratic equation:

In order to find the critical point for this equation, you need to take the derivative, set the derivative equal to 0, and solve for x. Generally, this will always look like this with any second order polynomial:

In our application, this general form translates to:


In order to simplify analysis down the line, I like to add the round() function to this equation:

Cell D6


Curve Shape (Column E)

Curve shape is determined entirely by the sign of the quadratic term, and can be calculated very simply with a nested IF statement:

Cell E6


Note that we have added the condition Linear as well. It’s very rare that trend data will be absolutely flat, but this would occur if the coefficient on the quadratic term was 0. This is a catchall for that extremely rare case only, and in practice, you will most likely never see any truly linear trends with this method.

Trend State (Column F)

Finally, we get to the point of this entire debacle: estimating the trend state of our data. Recall the 6 states we can be in, depending on the shape of the curve:

  1. Negative, Decreasing
  2. Positive, Increasing
  3. Minima
  4. Positive, Decreasing
  5. Negative, Increasing
  6. Maxima

These states are based entirely on the current time relative to the critical point and the sign of the coefficient on the quadratic term. We have calculated all of this data, so now we can simply use a sequence of if statements to determine the state.

Cell F6 =if(and(E6=“Convex”,60<D6),“Negative, Decreasing”,

if(and(E6=“Convex”,60>D6),“Positive, Increasing”,


if(and(E6=“Concave”,60<D6),“Positive, Decreasing”,

if(and(E6=“Concave”,60>D6),“Negative, Increasing”,


Note that I’m using the number 60 as a placeholder for the current date, since we are using rolling 60-day data for this example. This can be replaced with any variable that suits your analysis.

I spend the majority of my days staring at spreadsheets trying to figure out better ways of organizing and visualizing complex marketing data. If you have an analysis problem you’d like more help on, feel free to email me at patrick@flintanalytics.com or call (317) 993-3411.

How Local Content Marketing Helps Franchises Succeed

To understand the importance of local content marketing, let’s take a pop quiz.

Homeowner A needs a new roof on his house.  So does Homeowner B.

You, being the business owner that wants to sell each of them a new roof, can broadcast your company’s well-researched, broad-based marketing campaign at both of them, and hopefully land both sales.


Not really.

Because Homeowner A lives in Pasadena, California and Homeowner B lives in Newark, New Jersey. Homeowner A needs to make sure his shingles won’t melt and he’ll still have room for solar panels. Homeowner B just wants to know his roof won’t collapse under two feet of snow come January.

Since your well-researched, broad-based marketing campaign focuses on your lifetime warranty, proven craftsmanship, and decades of professional service as a company, you might miss out on BOTH sales.

See, as meaningful as your umbrella message is, it doesn’t mean something specific to the unique local needs of Homeowner A or Homeowner B.

So how does a franchisee – or a franchisor – avoid this pitfall?

For Multi-location Businesses Serving A Wide Geography, Your Company’s Message May Not Be Enough

So what can multi-location businesses do to secure those sales in both Pasadena and Newark? The onus is on both the franchisee and the franchisor to deploy local content marketing strategies that serve individual locations equally well, so both can capture sales.

The Local Franchisee Challenge – Own Your Space, Focus On Local Content

Some new business franchise owners come into the job believing that all of their marketing will be taken care of “by corporate.” And while it’s true that franchisees do get some help in that area, at least compared to independent small businesses, the most successful marketing campaigns have work put in by both sides.

Own Your Own Space

The first responsibility franchisees have in digital marketing is in owning their own space. A business’s physical brick and mortar location is unique unto itself; it has specific needs to maintain its curb appeal, interior design and product layout – all ways in which it attracts and retains local customers. Why should their online presence be any different? A franchise website has its own needs for local prominence that may be neglected.

“But corporate set us up with a website and it looks fine,” a local franchisee say.

Looking presentable and being effective in leading customers through a sales funnel are two completely separate things. All too often, franchisors roll out a suite of websites for each of their locations, only for every one to give mediocre performances when it comes to driving organic web traffic or conversions. Though made with the best of intentions, these sites serve up duplicate content, recycled images, and vaguely audience-targeted messaging. In trying to capture every customer, they usually capture none.

When a single location in a multi-location business is able to own their online space, however, the benefits are undeniable. Any unique content, be it in copy, photos or beyond, is proven to be incredibly helpful to SEO performance. That unique content is also able to target the unique local needs of their specific customer base, something that might not be feasible for a nationwide cookie-cutter marketing campaign.

Let’s take a deeper dive into the need to focus on the local when it comes to local content marketing.

Focus on Local Content

With that owned space comes the next responsibility: focus on local content. Even if all the marketing efforts thought to be handled on the corporate end came through, they still might not be doing much for local franchisees.

Like with the roofing example discussed at the beginning, all the great features of a product or service pales in comparison to customers’ unique needs – those are the things your customers are going to be looking for when they open up their search engine. The search engines know this as well, and tend to reward local content with higher rankings on results pages.

Luckily, franchisees have something that corporate doesn’t in their corner: knowledge of your local customer base. They know who their prototypical customer is, what products they’re interested in, why they choose that particular company, and a slew of other useful information.

When forming a marketing strategy, multi-location businesses are able to use that knowledge to tailor their content in multiple ways:

  • Geographic targeting – Use geomodifiers often to appeal both to search engines and individuals. A geomodifier is a location-specific keyword, such as a city, state, or region that you want to target. Knowing how one’s customers talk about where they live can help better capture potential leads–for example targeting customers interested in a “Brooklyn plumber” versus a “New York City plumber.”
  • Address specific issues – What are the customers’ primary needs? Are they unique in any way, especially to their location? Going back again to our first roofing example, a headline of “What Newark Homeowners Can Do To Protect Their Home From Winter Storms” is typically more effective (and pleasing to search engines) than “Stansbury Roofs Can Stand Up To Anything.” Not only does it stress a product benefit over a feature, but it targets a benefit unique to a local service area.

These are some of the more straightforward and salient methods of doing so, but are by no means the only ones.

Franchises, Start Working Towards Digital Marketing Success

If you’re ready to leave cookie-cutter design, duplicated content and vague marketing messages in your rear-view mirror, Flint Analytics can help you get started. As is our philosophy, to make the right decisions you need the right data, so let’s start talking about putting the numbers together to find a solution that will start you on the path to local content marketing success.

Photo Credit: 123rf.com/ramcreative
13 Fans Will Be Arrested If The Steelers Win This Weekend

13 Fans Will Be Arrested If The Steelers Win This Weekend

We can’t tell you which teams will win this weekend’s AFC and NFC championship games, but we can tell you how many people we think will be arrested at each. In Atlanta, if the Falcons win, 1 fan will be arrested. If Green Bay wins, 3 fans will be arrested. In Foxborough, if the Patriots win, 11 fans will be arrested. And if the Steelers win, 13 fans will be arrested.

How We Made These Predictions

In a grad level econometrics class at Purdue, my classmates and I were tasked with presenting statistical findings from socioeconomic data. While most economists are busy figuring out how to predict the next financial crisis, solve poverty, or predict how many people will buy their company’s next product, I was more interested in what I might be able to learn about my favorite rowdy NFL fans from the Washington Post’s NFL arrests dataset.

Kent Babb and Steven Rich of the Washington Post organized public record requests from police departments that oversaw NFL stadium security between 2011 and 2015, and they provided the total number of arrests made at each game along with other game-specific stats like the time of day that the game was played, the final scores of the home and away team, and whether or not it was a division game or went into overtime. Of the 31 jurisdictions in which there is an NFL stadium (note that the Giants and the Jets reside in the same jurisdiction), Cleveland and New Orleans were the only precincts that did not submit any data at all. Buffalo, Miami, and Oakland provided only partial records and had to be omitted from the data set, which honestly kind of sucks, because we know Oakland would have the GOAT arrest totals. Precincts in Detroit, Minneapolis, and Atlanta also excluded parking lot arrests, which means we might be missing a few booze-fueled tailgating arrests from this study.

I wanted to create a model to predict the chances of getting arrested at an NFL game. The Washington Post data set gave me a few of the pieces of the puzzle in knowing whether or not the home team won and the time of the game, but I had a few other questions.

  1. Did higher attendance relative to stadium capacity lead to rowdier fans, and, more arrests?
  2. Did people tend to drink more on a hot day and find themselves in the tank more often than cold days?
  3. Did controlling for local crime rates change the probability of being arrested?

In order to answer these questions, I merged data from Pro-Football Reference.com on game attendance, NFL stadium seating capacity from Wikipedia, game time weather from NFLSavant.com, and the FBI’s Uniform Crime Report with the Washington Post dataset to come up with the best overall look at local conditions during an NFL game that I could.

The Model

The model I generated from this data tells us that the probability of being arrested at an NFL game is higher if:

  1. The home team loses
  2. The game starts later
  3. Attendance is low relative to stadium capacity
  4. The weather is hot
  5. The local violent crime rate is high
  6. The local property crime rate is low 

If the model relied on factors 1, 3, and 4 alone, Jacksonville would have this one in the bag!


I’ll explain the math used with broad strokes here, but if you really want the details, here’s the original term paper I submitted to Purdue. It should be noted that I received a 98% on the paper, which is enough of a confidence boost for me to publicly reveal this model. It should also be noted that my mom has yet to hang this term paper on the fridge.

The model was estimated using linear regression, and here is the primary equation:

arrest2attend = .0023167 – .000024hometeamwin + .0001295gametime – .000265attend2capac + .0000514ltemp + .0000508lhomeviocrmrt – .0003217lhomepropcrmrt

Let’s also take a second to explain each variable in the model:

  1. arrest2attend = total arrests at an NFL game divided by the total attendance for that game
  2. hometeamwin = 1 if the home team won, 0 if they lost
  3. gametime = the local time that the game was played expressed as a fraction of 1 (i.e. if the game had started at noon, it would be represented as .50 because noon is half way through the day)
  4. attend2capac = total game attendance divided by the stadium’s capacity
  5. ltemp = the natural log of the temperature (in Fahrenheit) during game play
  6. lhomeviocrmrt = the natural log of the local violent crime rate
  7. lhomepropcrmrt = the natural log of the local property crime rate

For the stats nerds out there, this model had an R-Squared of .2885, and the heteroskedastic robust standard errors for each independent variable implied statistical significance to at least the 10% level. For those who hated stats, this model was, scientifically speaking, not bad.


The implications of the model actually make sense. If the home team loses, and we assume the majority of the crowd at any game is there to support the home team, we can expect a few upset fans to act irrationally, or, criminally. If the game starts later, there’s more time for tailgating and all the fun that comes with that.

The fact that lower relative attendance implied a higher probability of arrests may not reveal anything about social conditions at a game, but more about the nature of statistics. Let’s say 5 people each are arrested at 2 different games attended by 40,000 and 50,000 people, respectively. The chance of being arrested (arrests divided by attendance) at the game with lower attendance is 25% higher than that at the higher attended game, even though the total number of arrests was the same.

The weather is another interesting factor. Anecdotally, sun and heat lead to day drinking (naturally, Green Bay residents may be the exception). Heat can lead to higher instances of dehydration, which may lead to higher cases of public intoxication. But, this could also be a testament to regional cultures. Perhaps police forces in the south, where it’s warmer, are more likely to make arrests than in the north. Or maybe fans in warmer regions really are just rowdier than the north (though, back to our data omissions, we’d really like to officially verify this against Oakland and Buffalo).

With crime rates, one might attribute the difference in violent crime rates and property crime rates to police force allocation. In a region with high relative violent crime rates, precincts may be more likely to send officers into stadiums in an attempt to curb violence (our model thanks Philadelphia for not making the playoffs this year). In an area with higher relative property crime rates, precincts may be more likely to keep officers on the streets to deter theft and vandalism while the city is otherwise preoccupied with the game.

It should be noted that while the Washington Post’s data set included data from 2011-2015, I was only able to retrieve weather data from 2011-2013. So, this model is based on game data that is several years old, and should be taken with a grain of salt. That said, we used this model to predict the number of arrests that might occur this weekend at each conference championship game.

Predicting the Number of Arrests at This Weekend’s AFC and NFC Championship Games

We had to look at two outcomes for each game: one where the home team won, and one where they lost. From there, we just filled in the blanks on the model provided above. Green Bay at Atlanta is set to start at 3:05pm local (.628 in our time units), and Pittsburgh at New England is set to start at 6:40pm local (.778). Being conference championship games, we expect sellout crowds, so we set the attendance-to-capacity parameter to 1. The current game time forecast (as of the morning of January 19th, 2017) for Atlanta is 68 degrees Fahrenheit, and the same for Foxborough is 47. In Atlanta, the average violent crime rate for the last 4 years has been 399.3 for every 100,000 residents, and the property crime rate has been 3,374.4 out of 100,000. In Boston, the violent crime rate has been 507.3 out of 100,000, and the property crime rate has been 2,208 out of 100,000.

Plugging all of these numbers into the model above, and multiplying the expected probability of being arrested at each game by the expected attendance, we arrived at the predictions stated in the intro.

The results table looks something like this:



More than likely, the arrest figures we predicted here will not hold since we’re using regular season data obtained from 2011-2013 to predict events at postseason games played in 2017. In actuality, arrests may be higher due to the playoff atmosphere and likely larger security and police presence. Further, linear regression is not a perfect science, and this model cannot account for unexpected events like fan rioting, or some goofball in a hat and a red shirt showing up. Regardless, since the variables in the model make sense from a socioeconomic standpoint, it will be interesting to see how our predictions for this weekend’s game time arrests hold up in practice!

Google My Business Best Practices For Franchises

Best Practices For Managing Google My Business Listings For Multiple Locations

As a business with multiple locations, you want your locations to succeed in their local marketing, and one of the best online local marketing tools around is Google My Business. But to be successful at GMB, you need to not only create listings for all of your locations but also stay on top of keeping their information accurate. Managing one location isn’t that hard, but when you’re a franchise or multi-location business with dozens of locations, managing these can seem overwhelming. That’s why we’ve put together these tips to help franchises manage their Google My Business listings for multiple locations without being overwhelmed.

1. Set your account up the right way

The first step is to ensure that you meet the qualification guidelines set by Google to create and manage a Google My Business listing. Next, make sure that you’ve set up your account correctly so that you can manage your listings from one central location. If you have lots of locations that have never been centralized with Google My Business, you might have a mess at first because some of the locations may have great listings while others haven’t even claimed their business yet.

For consistency and brand control, we recommend that the corporate office retains ownership of the Google My Business account and manages all of the locations. You can do this either in house or by hiring a marketing agency to manage your listings for you. While you can give your locations access to update their own Google listings, you’ll be at risk of them making changes to the account, and so you may want to restrict them to be a communications manager.
If you don’t already manage your Google My Business listing, the first thing you need to do is set up an account. Create a Google account with your business name as the domain, for example, manager@acme.com. Next, you’ll need to create a Google business account, if you don’t already have one. This will be the main account that you manage all of the locations.

As the business owner or manager, it’s important that you retain primary ownership of your Google My Business Account. You can add other managers and owners (either marketing agencies, third parties, or local owners) to your listings as needed. If you’ve worked with an agency in the past and they’re the primary owner, you have the right to ask for ownership of the account. This means that even if you change agencies, you’ll still retain control of your account.

Some of your locations may already have listings they’ve claimed and manage. Request access and ownership to these listings by following these instructions.

2. Gather Account Information From Each Location Into One Place

It’s important that the information such as name and address that is on your location’s website matches their Google My Business listing and is consistent across all of your locations. If each of your location has the same name, i.e. “Sally’s Flower Shop” in each city, that is the name that should be on the Google My Business listing. You’ll also want to be consistent with address terms such as using “st” or “street” across all websites and local listings. This helps search engines recognize that it’s the same business and location across the web and ensures you’re listings aren’t competing against each other, resulting in lower search placement.

The easiest way to collect this information is through a spreadsheet. If you qualify for a bulk upload (see below) you can download a spreadsheet to use directly from Google My Business. You’ll need at least the store ID (for internal use only), company name, website page to link to, physical address, phone number, and service category for each location. We recommend adding additional information such as hours of operation, business description, AdWords extensions, and more to give your customers more details about your business. Here’s a list of the different fields you can create in your Spreadsheet.

If some of the information (such as hours) is different for each store, you can build a Google Form that feeds into your spreadsheet and send it to each store. You’ll just need to keep on top of your locations to make sure they fill out the necessary information.

3. Add New Business Locations In Bulk (If You Qualify)

There are two ways to add new businesses to your account: via bulk upload and by adding each listing individually. New businesses you could add include locations that were just opened* or locations that have never been claimed.

If you have more than ten locations, you can choose to use the bulk uploader. You’ll use the spreadsheet you already created (or use the one Google provides) and check that all the information is correct. Then you’ll upload it at once. Google will let you know if there’s any discrepancies or errors in the information.

There are some drawbacks to using the bulk upload method. First, there’s a character limit in the name and description field which can cut off text. Also, service area providers (where there isn’t a main physical location and services are provided at customer’s location) aren’t eligible for bulk verification.

After you’ve uploaded your information, you can request bulk verification. Bulk verification is a lot faster than manual verification. For manual verification, each location is mailed a postcard with a code that you’ll need to enter into their business listing. This can take time, especially if locations accidentally throw away their postcard and it needs to be resent. But with bulk verification, all of the locations are verified at once through sending a verification form to Google through your account. You’ll need at least ten locations to be able to request bulk verification, and it may take up to a week to get processed and approved.

*Never open a Google My Business account for a location that hasn’t opened yet. Your account could be disabled.

4. Update Business Information Easily

You can update information such as addresses, phone numbers, descriptions and more in bulk if you have at least ten locations. This is helpful if some of your locations already have listings, but they aren’t consistent with your other listings or have different information than their website.

You’ll need to download your location information, make changes in the spreadsheet, and then upload them again to Google. By downloading the information, you can also see if there’s errors that Google has found or any updates Google made on their own. Follow these instructions on how to make edits.

5. Hire Help As Needed

Business owners and managers should stay informed and actively participate with their business listings, but using listing tools or hiring experts can help your listings perform better and take some of the workload off your shoulders.

Local listing tools like Yext can help you manage your Google My Business account along with other local directory listings through one interface. If you want an even more hands off approach, hire a marketing agency.

Marketing agencies can enhance your local listings and manage your photos, reviews, ad extensions, and more so that your listing shows up for customers looking for your services. Another benefit of hiring help is agencies can manage your local listings across many services such as Yelp, Bing, and other directories. Look for marketing agencies that have experience with local listings, communicate well about accounts and changes, and adhere to Google’s guidelines.

Get Started With Local Listings Today

If you’re a franchise or multi-location business that needs help with your Google My Business or other local listing directories, give us a call at 317-576-2855 for a free consultation. We’ll manage your local listings for you so that customers can find your local stores while you focus on other aspects of your company.


Photo Credit: 123rf.com/abscent

How to Troubleshoot Poor PPC Performance

How To Troubleshoot Poor PPC Performance

Perhaps you’ve just started a ppc account for your business or you’ve been utilizing ppc as a marketing channel for a while. At some point, you’ll likely experience less than stellar performance – and that’s okay as long as you know what steps to take to right the ship.

In paid search, there are endless factors that can have an affect on your account’s performance: competition and industry bid costs, seasonality, world events, low account Quality Score, a new account that needs to build history, ineffective ad copy and landing pages, and the list goes on. Below, we’ve outlined a series of steps you can follow to start pinpointing when and how your account took a turn for the worse.


Step 1: Determine the time frame that your PPC account hasn’t been performing at an ideal level.

Start by running reports that compare this time frame to previous similar periods (week-over-week, month-over-month and year-over-year as available). It can also be helpful to know if your account typically performs consistently based on the day of the week so that you can spot emerging issues as they occur. When running your reports, you can start at the top level (think: campaigns or accounts if necessary) and work your way down to trouble ad groups and keywords. By looking at key metrics across various time frames such as: clicks, position, average cost-per-click, impression share, click-thru rate and conversion rate you can start to figure out if your issue stems from bids, new ad copy, an emerging competitor, or perhaps a landing page issue.

It also helps to dig in to your change history or notes to see what major tests or seemingly small changes you made that actually had a larger than expected impact. You can easily adjust or reverse these changes if you find them directly in Adwords.


Step 2: Utilize Analytics 

If your conversion rates have stalled or even been declining, it can be helpful to dig in to analytics and see what you can discover about how your ppc users are navigating your pages. One place to start in all of the analytics data available to you would be your landing page bounce rate. Some bounces are fine and to be expected, but if your rate is exceptionally higher than average on some page or has been increasing, it could be cause for concern. Figuring out which landing pages and more specifically, keywords, have high bounce rates can help you determine where to focus your optimizations. To decrease bounce rates, you can implement strategies such as: better directing keywords to pages that match a user’s search query, implement a more logical and functional path to conversion, and/or test your page’s call-to-action. In addition to these higher-level findings, be sure to drill in to deeper insights such as how your traffic is performing by device type.


Step 3: Check Conversion Tracking

A more obvious step in the process is to check on conversion tracking. If you have many conversion points on your site such as call tracking, a form, email links, and secondary/tertiary “soft” conversion points like clicks to specific pages, etc. you’ll want to know how to check in on these points when something seems off. For Adwords conversion tracking, a quick look under the conversion section (Tools > Conversions) of your account will help you identify any conversion points that haven’t recently been seen or fired on your website. Navigate to the Tracking Status column to see how each one is performing. If the status shows unverified or tag inactive, you likely have an issue. You can follow these steps to troubleshoot the tracking issue. An easier way (especially if you’re an agency or a representative of a company) to implement and keep tabs on conversion tracking is to utilize Google Tag Manager or GTM. This tool is especially helpful when your marketing, development and client teams are working toward similar goals but separated from one-another. You can easily use Google’s Tag Assistant to check that pixels are firing as they should when goals are completed. Google Tag Manager is also especially helpful in multi-site situations, such as multiple locations or multiple brands under the same umbrella.


Step 4: Check Your Automation

PPC automation can be a very helpful tool, but it can also work against you if left unchecked. You can set up your automation to email you every time the system makes a scheduled change, but this can still cause an out-of-site-out-of-mind mentality. By periodically checking in on automated rules or rules set within 3rd party bid management software that are intended to control bids and make changes based on performance you can avoid this mentality.


Step 5: Be proactive and keep tabs on your account’s trends and Quality Score over time.

Lastly, I recommend finding a way to be proactive when it comes to emerging ppc trouble. Find a reporting method that works for you and keep tabs on your accounts on at least a weekly basis and compare your performance week-to-week so you can predict when your cost-per-lead is going to spike or leads will be below a needed threshold. The main way to see how your efforts are paying off involves Quality Score. You can’t see your historical Quality Score, so it’s a good idea to find a way to keep tabs on it. Adwords offers many scripts to improve your ppc and reporting such as Quality Score tracking.


Photo Credit: 123rf.com/bplanet

Creating a Custom Facebook Audience by Passing Variables from Your Website with Google Tag Manager


Let’s say your company owns 10 car dealerships in 3 different cities. Dealerships A, B, & C are located in City 1, Dealerships D, E, & F are located in City 2, and Dealerships G, H, I, & J are located in City 3. Each of these dealerships offers 3 types of car: Trucks, Sedans, and Minivans.

Let’s say a potential customer visits Dealership A’s website and looks at a Sedan, but does not convert. We might assume that the user is looking for a Sedan in City 1, but has not yet made a decision on which Sedan to buy. Using a custom Facebook audience, we could show this user an ad containing links to the different Sedan offerings at Dealerships A, B & C, since they are all located in City 1. Using the Data Layer and Facebook’s Conversion Pixel, this is actually a fairly simple setup.

Define Variables with Data Layer and Google Tag Manager

For our example, we really only need to know two things:

1. The city where the dealership is located
2. The car type that the user viewed

Let’s define these variables as dealerCity and carType. You will need to pass these variables to the data layer, which is a subject you can learn more about here.

Now you will need to create these variables within Google Tag Manager. Navigate to the User-Defined Variables box in the Variables tab, and click New. Assuming that the values of these variables will be available in your site’s data layer, you can choose the Data Layer Variable configuration type, and simply input the variable name in the field.

Note: If you are having trouble getting your data layer to populate properly, but you can define either of these variables with URL information (such as a query string containing something like ?dealerCity=Indianapolis&&carType=Sedan), then you might try creating a lookup table instead of a data layer variable. You can read more about the lookup table macro here and here.

Facebook Pixel Tag

If you have not yet created your Facebook pixel, read how to do so here.

Now you’ll need to add your Facebook Pixel as a tag in GTM. Create a new tag and name this tag Facebook Pixel All Pages, or, whatever naming convention you’d like to use to indicate that this is your base tag for Facebook. Paste the code generated by Facebook into a Custom HTML Tag Configuration, and set this tag to fire on all pages. This will ensure that Facebook’s pixel is always active and ready to pass data back to your Facebook Ad Account.

Tag for Custom Facebook Event

Now we want to create a custom event tag that passes your custom data into Facebook. Facebook uses the fbq call to indicate data arrays, and the trackCustom call for passing non-standard arrays (Facebook supports 9 standard data types, which you can read about here).

The code below is intended to send a City_Cars event array to your Facebook conversion pixel, containing the variables dealerCity and carType. Within Facebook, the variables dealercity_id and cartype_id will carry the data layer values in {{dealerCity}} and {{carType}}.

Note that you must define these variables in both the fbq call and the query string on the URL within the <noscript> section. The number contained in id=1111111111111111 will be equal to the ID number in your standard Facebook conversion pixel. Set ev= to the name of the event (City_Cars in our case), and then follow the format &cd[variable_id]={{GTM variable name}} for all values contained within the fbq array.

Under Tag Sequencing, make sure that your Facebook Pixel All Pages tag is firing first. This is important, as your Facebook Pixel must be active before data can be passed through it.

Set Up Custom Audience in Facebook

Let’s now create the remarketing list for potential customers looking for Sedans in City 1.

Go to the Audiences section of your Ads Manager and click Create Audience. Under the Website Traffic dropdown, choose Custom Combination. Then, under the Include drop-down, choose Event, and enter City_Cars in the Choose an event field. Now you will be able to add the individual parameters dealercity_id and cartypes_id and choose the values City 1 and Sedan, respectively.

Now you can use your new audience to target potential buyers who are interested in finding a Sedan in City 1. You can also set up an audience for each city and car type combination, and set up ads that target each unique pairing.


Photo Credit: 123rf.com/graphiqa
Local directory listings for franchises

The 5 Ws Of Local Directory Listing For Franchises And Multi-location Businesses

Your customers use local directory listings every day. And most likely, you do, too. If you’ve never heard of the term — no worries. This article is a quick overview of the who, what, where, when, why and how of local directory listings.

Who Uses Local Directory Listings? (Hint, hint: your potential customers)

Almost any online search for a local product or service will pull up a local directory listing result. To see how this works, let’s talk about a woman named Susan. Susan had just moved into a new home and wanted to redo her flooring. But since she was new to the area, she didn’t know what flooring stores she should choose. So she went online to Google and typed in “Flooring in Carmel, IN.” This was her result.

Indiana Local listing directory results for flooring

At the top she saw ads for local area providers, but what really drew her attention was the map which showed her where flooring stores in her local area were. This was very helpful because she could see which stores were closest to her, customer reviews for the stores, and the hours which they were open. She also could click through to a store’s website and learn even more about their flooring products and services. So she browsed through a few flooring websites and then went to bed.

The next day, after work, Susan was on her mobile phone and again typed in “Flooring in Carmel, IN.” She saw the store that was closest to her work, and remembered that she liked what they had on their website. So she clicked on “Get Directions” and showed up in their showroom minutes later.

The local flooring business gained Susan as a lead simply because they had a local directory listing with Google which they optimized to draw more customers into their store.

What Is A Local Directory Listing?

A local directory listing is a listing of your company’s basic NAP information – name, address, phone number – with a directory like Google, Bing, Yelp, or even smaller directory services. It’s similar to the old phone book listings, but it’s online where most people go to search for products. It can also include additional information such as hours of operation, website links, customer reviews, photos and more if you add those features. When customers search for local products and services these directory listings will pop up. Some people also go directly to the directory (like Yelp) and search through the listings there.

Local directory listings aren’t just for local mom-and-pop stores. National brands and franchises compete with local stores for customers’ attention and business. So you want to make it easy for customers who are searching online for your local services to contact you through local listings.

Where Should My Stores Be Listed?

You’ll want to start off by listing your stores on the major directories like Google and Bing. Then, depending on your industry, you’ll want to find the smaller directories that cater to your products. If you’re a restaurant, you’ll want to be included on Yelp, and touristy directories like TripAdvisor. In order to rise to the top of the listings, you’ll want to optimize your listings for the directories.

When Should I Start Creating And Optimizing My Local Directory Listings?

If you don’t currently have directory listings with the major publishers, then it’s time to get started. Sometimes the verification process can take a couple of weeks, and so the earlier you start, the better. And if you have lots of stores that need directory listing, that takes time as well. If you’re already listed on the major directories, look through your listings to see what you can do to optimize them and show up higher on the search list.

It’s possible for your business to show up in a local directory listing even if you haven’t officially registered it. However, you’ll see a lot more benefits after you’ve claimed your listing such as the ability to display your hours, link to your website, have customer reviews, and more.

Why Should My Stores Have Local Listings?

Local directory listings put your company’s information right in front of your customers when they’re searching locally for your products and services. For multi-location businesses, local listings are crucial for your store’s local marketing success.

Local listings can also improve your store’s website’s SEO value. One of our clients had a local store that didn’t verify their address with Google Places for months and months. We finally got them to verify their location and their SEO traffic doubled in one month. That’s the power of local listing, especially with Google.

Bonus: How Do I List My Store On Local Directories?

Listing your stores on local directories can be hard and take time. One of the biggest challenges is making sure that you are consistent with how you format your name, address, phone number, etc., across all of your locations. The first place we recommend listing is with Google My Business. If you are listing more than ten stores at once and you meet their guidelines, you may be able to do a bulk upload of the store’s information. If you don’t meet their guidelines, you’ll need to input the store’s information one by one. So we recommend creating a spreadsheet of all the information you’ll need from each store and then contacting the stores to get all of the information.

Google My Business (also known as Google Places) will send out a postcard with a verification code to each store’s physical location. So make sure that your stores are on the lookout for the postcard and that they contact you with the information so that they can be verified and claim their local listing.

Once you’ve listed your stores on Google, hit the next major listings. Each of these directories will have a different way of verifying your location such as email, phone call or mail.

After you’re on the major directories, start looking into smaller directories. You can use directory services like Moz, Yext, or work with an agency like Flint Analytics to manage these directory listings. Some of these services let you list your business from one interface to over 50 different directories and keep your listings consistent.

Local directory listings are an important part of local online marketing success and can increase your online visibility with customers. If you want to know more about local directory listing for your multi-location business, contact us today.


Photo credit: 123rf.com/denchik