Archives for 

seo

Stop Clicking Here! 7 Superior SEO Alternatives to Generic Links

Posted by Cyrus Shepard

Ove the past year, we’ve seen a strange trend develop in the world of SEO: the rise of the “generic link.”

Generic links are bland phrases that avoid using keywords that search engines use to determine the context of what you are linking to. These include links like:

  • “Visit website”
  • “Read more”
  • “Useful site”
  • And, of course, “click here”

Google’s official SEO Starter Guide actually discourages webmasters from using generic links.

Google SEO Starter Guide

Google published this guide in 2010. Is it still relevant today?

Why some SEOs use generic links

After Google rolled out their Penguin update and over-optimization penalties in 2012, many SEOs discovered that too much exact-match anchor text was now a bad thing. Research suggests that successful backlink profiles actually contained a wide variety of anchor text including exact match, partial match, URL links, and even nofollow links.

To compensate for over-optimized backlink profiles, SEOs started to “balance” their link profiles with generic anchors like “click here.” For some, the trick seemed to work, a little.

Recently, my wife’s site was attacked by a black hat spambot. Take a look at the bot’s link distribution:

Anchor Text

The profile was exactly 30% generic links!

Yes, it’s a huge improvement on using all keyword-rich anchors, but this also creates obvious patterns that any search engine could easily sniff out. It’s also evident these links were produced at scale in a non-editorial way.

As a result, these bots must build 1,000s of links to only rank a few days at a time.

We can do better

Aside from issues of usability, the reason Google advises folks to use descriptive words when linking is because this passes relevancy signals to the page you link to. If you link to this page with the phrase “SEO“, search engines may determine this page is about SEO, and rank it higher in search results for that term.

In fact, there’s evidence through various patent filings, and the experience of countless webmasters, that links using generic or off-topic anchor text pass potentially much less value than descriptive links.


– Bill Slawski, 10 Most Important SEO Patents, Part 5

Let’s be clear: Google does likely devalue over-optimized anchor text, but there is no evidence anywhere of Google penalizing a website for not having enough generic “click here” links.

Instead, we should seek out links that enhance context and usability for not only our readers, but search engines as well. The best links are the ones where you don’t control the anchor text, but in cases where you do control the anchor text, strive for variety.

1. Related text and Co-occurrence links

Instead of requiring exact match anchor text to achieve rankings, Google has proposed many methods of passing value through anchor text that don’t require the exact keyword at all. One of these methods uses the idea of co-occurrence, documented here by Bill Slawski.

Put simply, search engines may judge relevance not only on the anchor phrase, but also on the “related phrases” found in both documents.

In Google’s own patent example, the anchor phrase “Australian Shepard” is related to several other words:

Related Text

Even though the second URL doesn’t contain the words “Australian Shepard,” it may still rank for this term if there are enough related phrases present. This helps closely related pages to pass more ranking relevance, while weakening unrelated anchor text (coincidentally, a lack of related phrases is how search engines fight Google Bombs).

2. Party at Synonym City

Search for “funny pics” and search engines return results for “funny photos” and “funny pictures” instead. This gives us several possible alternatives to exact-match links.

One great way to find synonyms is through using Google’s tilde (~) operator. The tilde tells Google to “search for pages that are synonyms or similar to the term that follows.”

tilde operator

When combined with other operators, such as the negative (-), this gives you a powerful keyword research tool. In the example above, the search query “~inexpensive -inexpensive” returns “low cost”, “cheap,” and “affordable.” All are synonyms for inexpensive.

Use synonyms in your anchor text for greater meaning.

3. Partial match – Variation for the reader

A partial match anchor uses at least one of your main keywords, without using the whole phrase. Matt Cutts gives a hilariously bad example of how not to construct text. In short, what he describes is…

Link Spam

Consider this anchor text: “Best Car Accident Law Firm Fort Worth.” If we saw this on a page, we would cringe in embarrassment for the SEO.

Natural anchor text is not stuffed with keywords, but is instead useful for the reader while accurately describing what the text links to.

Better, more appropriate partial match anchors might include:

Like anything else, partial match anchors can be abused quickly. Use with care.

4. Company names and brands

Company and branded names make great links when called up. People can link to SEOmoz, Molly Moon’s Ice Cream, or Lava Lamp all day long!

However, be careful when your business name matches highly commercial anchor text, such as “Los Angeles Flowers,” for example. In this case, there’s almost no line between branded anchor text and over-optimized, exact-match anchor text. This might send confusing mixed signals to search engines – as if you’re trying to game the system.

If you’re a smaller company without much branded visibility, it might be best to stick to other methods until you can build your brand credibility.

5. Get personal with names

Dan Shure provides the next tip from his NoBoard SEO series: link to people.

People’s names (like your CEO, for instance) are rarely overused. Dan suggests attracting named-based links by creating strong “about” and profile pages for people in your company.

Dan’s best quote: “People like to link to people.”

6. URL links

In general, URLs are NOT ideal anchor texts. They’re non-descriptive, clumsy to write, and pass very few relevancy signals to search engines.

That said, it’s possible to use URLs for perfectly normal reasons, such as when you describe changing a website address, i.e. “The new URL is http://www.seomoz.org.” URL links don’t always include the full address:

  • www.seomoz.org
  • seomoz.org/blog/top-tips
  • seomoz.org

Although they don’t pass few relevancy signals, URL links do offer marginally more value than generic anchors, so are offered here as a measure of last resort.

7. Link for the most important person – The reader

This post offers a number of linking examples, but for the most part the links flow as a natural part of the text, without artificial manipulation. The #1 priority of good content is not trying to outsmart the search engines, but creating usefulness and usability.

Shortcuts taken by scaling and repeating the same anchors over and over – even when they’re partial match or otherwise – are bound to get you in trouble.

Instead, craft each and every link you write to be as unique as the content holding it.


Sign up for The Moz Top 10, a semimonthly mailer updating you on the top ten hottest pieces of SEO news, tips, and rad links uncovered by the Moz team. Think of it as your exclusive digest of stuff you don’t have time to hunt down but want to read!

Continue reading →

Use Google Docs to Manage your Digital Projects, from Freelance to Large Agency

Posted by Alex Moss

This post was originally in YouMoz, and was promoted to the main blog because it provides great value and interest to our community. The author’s views are entirely his or her own and may not reflect the views of SEOmoz, Inc.

In July 2012 I launched 3 Door Digital alongside my three co-founders. The launch was part of a merging process between two existing companies (Pleer, based in Manchester, UK and Matan Media based in Tel Aviv, Israel). Along with the merger came some potential operational hazards that we had to make sure we were on top of prior and post launch. Part of my responsibility was to find and apply the best project and time management process for our campaigns moving forward.

In the past few years I have used numerous task management tools and decided to put a few to the test to see which one would work for us. In the end we found that Google Docs was actually the best platform for us to use. This may seem like an uncommon choice but with the correct setup it has proved to be extremely successful.

I’m going to share how we manage to stay on top of over 30 client projects at any one time whilst making sure we don’t miss tasks or lose track of the hours we’ve spent.

Before covering all this, there was a second choice…

In the end we had a decision between two platforms – Basecamp and Google Drive (formerly Google Docs). Basecamp was great for us but there was something missing (which I’m sure will eventually be added at some point) – the ability to quickly browse tasks, task owners and time management all in one easy-to-read page. This is where Google Docs won. Don’t get me wrong – Basecamp is a fantastic choice for some companies – it just wasn’t the best solution for us.

So, there were a few reasons why we chose Google Docs and I’ll go through why, feature by feature. As well as this I’ll share a template document that you can copy as your own to tweak as you wish.

Google Docs Spreadsheets FTW

Before 3 Door Digital was born, I had two concurrent jobs: the Head of SEO at a search agency in Manchester and another running my own company with my wife and business partner. Because, at the time, there were only two of us it was quite easy to keep track of each other’s work using an Excel document within a Dropbox shared folder. Once 3 Door Digital started trading, it became obvious that this wasn’t going to be the best solution.

To start, I simply uploaded the spreadsheet template I’d been using for Pleer into Google Documents and added the additional clients from Matan Media into the new 3 Door Digital template. Simple!

“Simple” I thought – it wasn’t so simple. Although I was well aware that I was now planning out 20+ retainer clients, 10+ one-off clients as well as other internal tasks. It was time to roll out the “super template” that would make it easy to navigate these 30+ clients whilst being easy to read for all consultants, account managers and directors. Most of all, it had to be workable so that tasks were not missed out (the main personal downfall of mine for Basecamp’s GUI).

The Super Template

Marc and I took a day out to create this super template by discussing how both teams work between offices in two countries on various tasks. Each row would represent a different task, no matter how small. What we needed to do is select columns. For each task, we covered the following:

  1. Client Name
  2. Platform Name (because some clients have various sites and platforms, some of which may have different account managers)
  3. Account Manager
  4. Task Name
  5. Owner (if not the account manager)
  6. Deadline
  7. Budgets
  8. Actual Hours Undertaken
  9. Completed (this uses a tick, exclamation point or cross – more on this later)
  10. Notes

Project Management Google Doc

The “Summary Row”

Each client and platform is split by a few empty rows and a total time allowance is provided within a chosen “Summary” row. In this row we can use equations to calculate total hours spent on a platform and time left for the month. Scripts for time management are then applied in order to enable email notifications (covered later in this post).

Google Doc Summary Row

 

Using other Tools to Compliment Google Docs

Even after all this, we were well aware that more information was needed dependent on the task. There is some information that you simply can’t illustrate well in a spreadsheet. Because more information is sometimes needed, or at least you need a separate area to work with for a specific task, we used other online collaborative tools and resources to help us with specific tasks – using the notes column as the point of reference.

Before Going Elsewhere, use the Comment function

This feature is easy to use. Right click a cell and you can add a comment. You can tag a user of the doc with the @ or + sign, and they will be notified by the email and directed straight to the comment itself. Once commented, a small orange label appears in the top right of the cell. Hovering over that cell shows the comments as a popup.

Google Spreadsheet Comment Popup

You will also notice a “Resolve” button at the top right of the popup. Clicking this, tags the comment thread as resolved, removes the orange marker, and hides the comments from the cell itself. If you want to access all comments within the document you can access them by clicking the Comments button at the top right of the screen (next to the Share button):

Google Docs Comment Threads

Use other Google Docs

Sometimes the commenting feature is never going to cover everything that needs to be covered. Some projects may need a separate document or spreadsheet or have more dialogue with more limited access. Let’s say for example that this whole task document is viewable to the whole company but one task only the Account Manager and one Director want to see details of this specific task. Here, we would create a new document and only give the Account Manager and Director access rights. In the task sheet you simply link to that separate document.

For Even Larger Tasks that Require a Folder Structure

Sometimes a task or project needs its own file and folder structure consisting of a lot of different types of files. Within the company we use Dropbox for collaborative filesharing. We used the share option within Dropbox to link to the specific folder or noted down the folder location for anyone to access. Here’s an example of where an image is entered within the notes column for other people to click and view:

Share a file to Dropbox

Dropbox image preview

Dropbox URL from spreadsheet

Tasks that Require a More Visually friendly UI

One example of this could be a web build. We use Trello – a fantastic task management tool that I have been personally using for years and can’t recommend enough. I don’t want to talk about Trello in this post, however, sign up (it’s free), and get to know it well – and be comforted in the knowledge that they have an iPhone, Android and Windows 8 app and are currently developing their iPad app.

Trello Google Docs
 

Trello Board

Paddy Moogan of Distilled wrote a great post about using Trello to Manage Projects for SEO – go and check it out.

Conditional Formatting FTW

I’ve never been at a level with spreadsheet production that I would call myself advanced, but when I learn something new in it I realise how versatile it is and how it can display information. One thing I’m a fan of is colour coding as I like to see the status of multiple tasks without always reading each row in any detail. To achieve this, I used conditional formatting in two columns:

Completed

Google Docs Conditional FormattingFor completed tasks I knew that there were only three options that we would need to choose:

  1. Incomplete
  2. Hurdle
  3. Complete

The “Hurdle” option is when something outside our control is stopping us from completing the task. When this happens, we add notes into the notes column where we can make efforts to complete the task as soon as we can. Using conditional formatting I have made the three different statuses with three different backgrounds for us to easily identify. As well as this, we used the Data Validation option to ensure that only these three option can be selected by a dropdown. This is set by right clicking the column/cells and selecting Data Validation. We used the following configuration for status:

Google Docs Data Validation

This then allowed us to select an option rather than type the words manually. This is done when you select the cell and you will notice a dropdown option that opens a popup for you to make the relevant selection:

Originally in Microsoft Excel, I used a different system whereby each task is set to 0 by default for incomplete, 1 for hurdle and 2 for completed. In Microsoft Excel (version 2010 or newer) you can use conditional formatting using the tick/exclamation/cross Icon Set, which is what I use when not using Google Docs (if you work for Google and you’re reading this please forward that as a feature request ). This is the specific conditional formatting we used for the Status Column:

Google Docs Conditional Formatting with Data Validation

Deadline

This column used more sophisticated conditional formatting. We wanted to have different colour coding dependent on how many weeks or days there were to the task’s deadline. These were as follows:

  • If more than a week away, we’re good
  • If within the next week, turn orange
  • If within the next 2 days, turn red
  • If in the next 24 hours, turn even deeper red
  • If deadline has passed, turn black

Timeline Conditional Formatting

This conditional formatting is somewhat limited in Google Docs when it comes to timescales (another feature request :P) so we used the conditions above, the setup of which looks like this:

Date conditional formatting setup

Keeping the Document Tidy

After a while you may find that the document becomes crowded. To eliminate this, you could hide rows where the tasks are confirmed as completed. Hiding a row (different than deleting a row) means that all data is still stored for future reference; as well as it keeping other formula data such as time management.

Hiding rows

We choose not to hide rows, as we personally like to see all tasks regardless of its completion. Instead, we split our tasks into worksheets separated by month. At the end of each month, we copy the existing month’s worksheet as a new worksheet and delete all completed rows. This then leaves us with only incomplete tasks, which are then added to as the month progresses. If we want to refer to a previous month, we simply refer to the relevant month’s worksheet. This way we can easily see every task over the course of the whole year.

Duplicate worksheet

Getting More Technical with Time Management Scripts

One thing I found that Basecamp lacked apart from its UI was the lack of time management connectivity. Relevant Managers want to be notified via email if a client is running out of management time for that month. Within the email we can include information from anywhere else in the spreadsheet. In our example, we have used the Client Name and the amount of hours left.

If this method isn’t your cup of tea, other online tools such as Toggl and Harvest will help you with time management.

Managing Account Hours

To begin, let’s use a sample client. This client has three platforms and has a number of tasks within each platform. Each platform therefore has its own set time allowance for the month. We now have the following time data:

  • Total allowance for the month
  • Total estimated time for each incomplete task (if you want to be that detailed)
  • Actual Hours Undertaken

We use this data to perform the following equation to find how many hours left there are for a platform:

Time left=SUM(Allowance-(SUM of all actual hours undertaken))

Here’s one example:

Google Docs Time Formulas

Column I, the number of hours left, is updated as the document is edited and is the number we need in order to see how many hours are left for the month. What we needed was a way to be emailed once this approached a low number.

Creating Scripts

David Sottimano of Distilled shared a script with me that emailed a chosen recipient if the number of a specific cell reached a specific number. From here, I took that script and integrated it into our Task Document.

The script runs every time the document is edited (or opened, depending on how you configure it) and is triggered if the “Time Left” figure for the platform reaches 2 or less than 2 (i.e. 2 hours). Once triggered, the script collects the Platform name and emails the person responsible for receiving the alerts with an email that the platform has run out of account hours. To install the script you will need to configure

  • The column that contains the Platform name
  • The column that contains the “Time Left” formula
  • An integer that triggers the alert (we chose 2)
  • The email(s) to send the alert to
  • The column to set the notification integer (otherwise you’ll get a LOT of emails :P)

To include the script, you can use the script manager tool and set the trigger in there:

Script Editor


And here is the script itself (highlighting the five variables you can configure above):

function notifyManagement() {
// Update & Edit values below ###############

var testing = false; // false = Live emails … true = Browser popup…

// The Column for the task name
var taskColumn = “
B“;

// The Column for Time Remaining
var timeLeftColumn = “
I“;

// Number of Hours (less than X) that you want to be notified
var HourTrigger = “
3“;

// Column for notifications
var managementNotifiedColumn = “
O“;

// Emails addresses in array format [”,”,”]
var managementEmails = [“
joe@bloggs.com“,”someone@else.com“];

// Stop Editing values here ##################

var sheet = SpreadsheetApp.getActiveSheet();
var lastRow = SpreadsheetApp.getActiveSheet().getMaxRows();
var row = 0;

 // loop through the timeleft column
for(row=1; row < lastRow; row++){
   var cell = timeLeftColumn + row;
   var managementCell = managementNotifiedColumn + row;
   var taskCell = taskColumn + row;

   // let us get all the values ready for checking
   var timeLeft = sheet.getRange(cell).getValue();
   var notified = sheet.getRange(managementCell).getValue();
   var taskName = sheet.getRange(taskCell).getValue();

       //check to see if we should send an email
   if ((timeLeft < HourTrigger) && (!notified) && (isInt(timeLeft))) {  
     // Set the notified cell
     sheet.getRange(managementCell).setValue(“1”);
     // email management
     for (var i = 0; i < managementEmails.length; i++) {
       if (testing) { Browser.msgBox(“Email to ” + managementEmails[i] + “\n” + taskName + ” time managementccccss warning!”); }
       else {
          MailApp.sendEmail(managementEmails[i], taskName + ” time managementccccss warning!”, taskName + ” has ” + timeLeft + ” hours remaining”);
       } // end testing check
     } // end of send emails loop
   } // end of checking if we should notify
} // end of for loop of all rows
} // end of mailMe function

function isInt(n) {
  return typeof n === ‘number’ && n % 1 == 0;

}

Internally, we also created a similar function to email us when budgets were too low using the same template as above and changing the variables at the beginning to focus elsewhere in the document.

Triggering the Script

Once you’ve created your script you can set triggers for each one. To do this, select the “Current script’s triggers…” within the script editor:

Script Trigger option

Here, we have decided to trigger the scripts on edit so we have live notifications sent to us and not just when the next person opens the document:

Google Doc Script Triggers

Too Much for You? No Problem!

This post either may be too technical for you, or will take you too long to implement. That’s fine – I’m a nice guy. I’m a guy who’d be kind enough to share a canvas template for you with the script installed, conditional formatting set up, scripts running (with a fake email) and even included some sample data 🙂

Digital Management Google Doc

Known Bugs

Sometimes we have found when adding rows or editing the doc with new information, some of the rows or columns begin to look messed up. A simple refresh of the document usually fixes this and your updates should be all good!

An Added Note

This is an awesome document and works for us better than anything else we’ve used, but this may not be for you or your agency. We all have our own preferences, although I am pretty sure at some point we may need to invest in our custom management toolset.

This doc isn’t the only thing I use to manage my own time – I also have my own personal Trello board and can’t live without the traditional email inbox to keep me from going insane.

I’d love to know what other tools and resources you use for your own project management…


Sign up for The Moz Top 10, a semimonthly mailer updating you on the top ten hottest pieces of SEO news, tips, and rad links uncovered by the Moz team. Think of it as your exclusive digest of stuff you don’t have time to hunt down but want to read!

Continue reading →