We are in the SEO industry for a while now, wearing many hats: digital marketers, tool developers, advisers, researchers, copywriters, etc. But first of all, we are, just like you, site owners. And we’ve been through ups and downs regarding organic traffic, and we were in the situation of trying to understand why the Google traffic dropped dramatically at some point as well. Having all these in mind, we’ve thought of easing your work, and we’ve put together a list with the top 16 reasons that can cause sudden traffic drop, unrelated to Google algorithm changes or penalties.
I’ve always been a believer that hard work gets the best results, and in practice it always ends up being true. On the web it’s no different. If you want more organic traffic, you have to work for it. That means giving your best effort every time, going after opportunities your competitors have missed, being consistent, guest blogging strategically, and staying on Google’s good side.
Lee Wilson is head of enterprise SEO at Vertical Leap and has been leading digital marketing teams since the early 2000’s. He has headed up the SEO department for a top 10 leading search and digital agency (Vertical Leap) from 2010 to present. In 2016, he had his first solely authored industry book published (Tactical SEO – the theory and practice of search marketing).
People find their way to your website in many different ways. If someone is already familiar with your business and knows where to find your website, they might just navigate straight to your website by typing in your domain. If someone sees a link to a blog you wrote in their Facebook newsfeed, they might click the link and come to your website that way.
I have that problem :) I read all day long sometimes, just to realize at 1 AM that I am supposed to post at 7 AM ( I try to keep the posting schedule) and I have nothing written! Do your blog posts first, if you can write a few in advance that is great, cause that way you can schedule them and feel more relaxed, not being under pressure. Then check out one of these recommended sites. With for example Yahoo answers, you can spend 10-15 minutes every day and answer 3 questions in that time. Out of those 3 one can have a link. Not too much effort but can bring nice results!

Clean, fast code is important and you need to be aware of this if you’re using WordPress themes or other CMS platforms that typically come with a lot of bloated code. Despite its chunky build, one of the key benefits of using WordPress is its structure of templates that allow you to create new pages at the push of a button and create content in a visual interface, rather than code everything yourself.


Guest blogging purely for inbound links is a flawed strategy because the value of those links are going down. However, guest blogging for traffic is still an incredibly viable strategy. While that inbound link you get at the end of a guest post doesn’t have as much SEO value as it used to, it still has the value of exposing your content to a new audience.

hey james - congrats on your success here. just a question about removing crummy links. for my own website, there are hundreds of thousands of backlinks in webmaster tools pointing to my site. The site has no penalties or anything  - the traffic seems to be growing every week. would you recommend hiring someone to go through the link profile anyway to remove crummy links that just occur naturally?

affiliate affiliate marketing affiliate marketing traffic sources affiliate traffic affiliate traffic sources buy real traffic buy traffic to website buy website traffic cheap traffic sources drive traffic focused visitors free real traffic free website traffic free website traffic sources niche online marketing page rank paid website traffic sources Pay Per Click potential customers potential sources of affiliate traffic quality traffic realtraffic real traffic real traffic for free realtrafficsource realtrafficsource.com search engine search engine ranking search engines SEO site owners site visitors social media sources of affiliate traffic targeted traffic targeted website traffic targeted website visitors targeted web traffic traffic traffic generation traffic sources websites website traffic web traffic
We are in the SEO industry for a while now, wearing many hats: digital marketers, tool developers, advisers, researchers, copywriters, etc. But first of all, we are, just like you, site owners. And we’ve been through ups and downs regarding organic traffic, and we were in the situation of trying to understand why the Google traffic dropped dramatically at some point as well. Having all these in mind, we’ve thought of easing your work, and we’ve put together a list with the top 16 reasons that can cause sudden traffic drop, unrelated to Google algorithm changes or penalties.
So I figured it's high time to break down what all those sources actually mean . Now, depending on what software you're using to measure all of these things, they may be bucketed slightly differently, but these definitions are pretty common across most tools you'll encounter. Make sure to double check on the finer points of some of them, but this should be a good starting point for you if you're new to this whole marketing measurement and analysis "thing."
The first is that it’s caused almost exclusively by users typing an address into their browser (or clicking on a bookmark). The second is that it’s a Bad Thing, not because it has any overt negative impact on your site’s performance, but rather because it’s somehow immune to further analysis. The prevailing attitude amongst digital marketers is that direct traffic is an unavoidable inconvenience; as a result, discussion of direct is typically limited to ways of attributing it to other channels, or side-stepping the issues associated with it.
For a small business, it is better to start with Organic SEO because aside from it is a low-cost investment, it will build your internet presence gradually and eventually have a solid foundation in your own niche – provided that you are doing the right way. It is not bad to invest in non-organic. You just have to make sure that you are investing on the right campaigns and not on the overly artificial ways to gain traffic and rank. Avoid investing too much on paid advertising and instead invest on creating relevant and useful content.
Hi Brankica I'm honored to be up in the same contest as you! Your article is breathtaking really! You have added so many unique factors into this one it's extremely beneficial for any blogger to read. Your covered so many are's and gave great idea's and suggestions about them. Great article! Thanks for sharing! Also THANK YOU for adding blogengage I love ya!

The "Direct Session" dimension, not to be confused with the default channel grouping or source dimension, is something different. It can tell you if a session was genuinely from its reported campaign (reported as No), or if it was simply bucketed there due to the last non-direct click attribution model (reported as Yes). I didn't mention this dimension in the article because it has some flaws which can cause brain bending complexities, plus it goes a little beyond the scope of this article, which I tried to gear more towards marketers and non-expert GA users. It's certainly an interesting one, though.


Keywords research is a very important process for search engine optimization as it can tell you the exact phrases people are using to search on Google. Whenever you write a new blog post, you have to check the most popular keywords, but don’t be obsessed by the search volume. Sometimes, long tail keywords are more valuable, and you can rank for them more easily.


!function(n,t){function r(e,n){return Object.prototype.hasOwnProperty.call(e,n)}function i(e){return void 0===e}if(n){var o={},s=n.TraceKit,a=[].slice,u="?";o.noConflict=function(){return n.TraceKit=s,o},o.wrap=function(e){function n(){try{return e.apply(this,arguments)}catch(e){throw o.report(e),e}}return n},o.report=function(){function e(e){u(),h.push(e)}function t(e){for(var n=h.length-1;n>=0;--n)h[n]===e&&h.splice(n,1)}function i(e,n){var t=null;if(!n||o.collectWindowErrors){for(var i in h)if(r(h,i))try{h[i].apply(null,[e].concat(a.call(arguments,2)))}catch(e){t=e}if(t)throw t}}function s(e,n,t,r,s){var a=null;if(w)o.computeStackTrace.augmentStackTraceWithInitialElement(w,n,t,e),l();else if(s)a=o.computeStackTrace(s),i(a,!0);else{var u={url:n,line:t,column:r};u.func=o.computeStackTrace.guessFunctionName(u.url,u.line),u.context=o.computeStackTrace.gatherContext(u.url,u.line),a={mode:"onerror",message:e,stack:[u]},i(a,!0)}return!!f&&f.apply(this,arguments)}function u(){!0!==d&&(f=n.onerror,n.onerror=s,d=!0)}function l(){var e=w,n=p;p=null,w=null,m=null,i.apply(null,[e,!1].concat(n))}function c(e){if(w){if(m===e)return;l()}var t=o.computeStackTrace(e);throw w=t,m=e,p=a.call(arguments,1),n.setTimeout(function(){m===e&&l()},t.incomplete?2e3:0),e}var f,d,h=[],p=null,m=null,w=null;return c.subscribe=e,c.unsubscribe=t,c}(),o.computeStackTrace=function(){function e(e){if(!o.remoteFetching)return"";try{var t=function(){try{return new n.XMLHttpRequest}catch(e){return new n.ActiveXObject("Microsoft.XMLHTTP")}},r=t();return r.open("GET",e,!1),r.send(""),r.responseText}catch(e){return""}}function t(t){if("string"!=typeof t)return[];if(!r(j,t)){var i="",o="";try{o=n.document.domain}catch(e){}var s=/(.*)\:\/\/([^:\/]+)([:\d]*)\/{0,1}([\s\S]*)/.exec(t);s&&s[2]===o&&(i=e(t)),j[t]=i?i.split("\n"):[]}return j[t]}function s(e,n){var r,o=/function ([^(]*)\(([^)]*)\)/,s=/['"]?([0-9A-Za-z$_]+)['"]?\s*[:=]\s*(function|eval|new Function)/,a="",l=10,c=t(e);if(!c.length)return u;for(var f=0;f0?s:null}function l(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#]/g,"\\$&")}function c(e){return l(e).replace("<","(?:<|<)").replace(">","(?:>|>)").replace("&","(?:&|&)").replace('"','(?:"|")').replace(/\s+/g,"\\s+")}function f(e,n){for(var r,i,o=0,s=n.length;or&&(i=s.exec(o[r]))?i.index:null}function h(e){if(!i(n&&n.document)){for(var t,r,o,s,a=[n.location.href],u=n.document.getElementsByTagName("script"),d=""+e,h=/^function(?:\s+([\w$]+))?\s*\(([\w\s,]*)\)\s*\{\s*(\S[\s\S]*\S)\s*\}\s*$/,p=/^function on([\w$]+)\s*\(event\)\s*\{\s*(\S[\s\S]*\S)\s*\}\s*$/,m=0;m]+)>|([^\)]+))\((.*)\))? in (.*):\s*$/i,o=n.split("\n"),u=[],l=0;l=0&&(g.line=v+x.substring(0,j).split("\n").length)}}}else if(o=d.exec(i[y])){var _=n.location.href.replace(/#.*$/,""),T=new RegExp(c(i[y+1])),E=f(T,[_]);g={url:_,func:"",args:[],line:E?E.line:o[1],column:null}}if(g){g.func||(g.func=s(g.url,g.line));var k=a(g.url,g.line),A=k?k[Math.floor(k.length/2)]:null;k&&A.replace(/^\s*/,"")===i[y+1].replace(/^\s*/,"")?g.context=k:g.context=[i[y+1]],h.push(g)}}return h.length?{mode:"multiline",name:e.name,message:i[0],stack:h}:null}function y(e,n,t,r){var i={url:n,line:t};if(i.url&&i.line){e.incomplete=!1,i.func||(i.func=s(i.url,i.line)),i.context||(i.context=a(i.url,i.line));var o=/ '([^']+)' /.exec(r);if(o&&(i.column=d(o[1],i.url,i.line)),e.stack.length>0&&e.stack[0].url===i.url){if(e.stack[0].line===i.line)return!1;if(!e.stack[0].line&&e.stack[0].func===i.func)return e.stack[0].line=i.line,e.stack[0].context=i.context,!1}return e.stack.unshift(i),e.partial=!0,!0}return e.incomplete=!0,!1}function g(e,n){for(var t,r,i,a=/function\s+([_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*)?\s*\(/i,l=[],c={},f=!1,p=g.caller;p&&!f;p=p.caller)if(p!==v&&p!==o.report){if(r={url:null,func:u,args:[],line:null,column:null},p.name?r.func=p.name:(t=a.exec(p.toString()))&&(r.func=t[1]),"undefined"==typeof r.func)try{r.func=t.input.substring(0,t.input.indexOf("{"))}catch(e){}if(i=h(p)){r.url=i.url,r.line=i.line,r.func===u&&(r.func=s(r.url,r.line));var m=/ '([^']+)' /.exec(e.message||e.description);m&&(r.column=d(m[1],i.url,i.line))}c[""+p]?f=!0:c[""+p]=!0,l.push(r)}n&&l.splice(0,n);var w={mode:"callers",name:e.name,message:e.message,stack:l};return y(w,e.sourceURL||e.fileName,e.line||e.lineNumber,e.message||e.description),w}function v(e,n){var t=null;n=null==n?0:+n;try{if(t=m(e))return t}catch(e){if(x)throw e}try{if(t=p(e))return t}catch(e){if(x)throw e}try{if(t=w(e))return t}catch(e){if(x)throw e}try{if(t=g(e,n+1))return t}catch(e){if(x)throw e}return{mode:"failed"}}function b(e){e=1+(null==e?0:+e);try{throw new Error}catch(n){return v(n,e+1)}}var x=!1,j={};return v.augmentStackTraceWithInitialElement=y,v.guessFunctionName=s,v.gatherContext=a,v.ofCaller=b,v.getSource=t,v}(),o.extendToAsynchronousCallbacks=function(){var e=function(e){var t=n[e];n[e]=function(){var e=a.call(arguments),n=e[0];return"function"==typeof n&&(e[0]=o.wrap(n)),t.apply?t.apply(this,e):t(e[0],e[1])}};e("setTimeout"),e("setInterval")},o.remoteFetching||(o.remoteFetching=!0),o.collectWindowErrors||(o.collectWindowErrors=!0),(!o.linesOfContext||o.linesOfContext<1)&&(o.linesOfContext=11),void 0!==e&&e.exports&&n.module!==e?e.exports=o:"function"==typeof define&&define.amd?define("TraceKit",[],o):n.TraceKit=o}}("undefined"!=typeof window?window:global)},"./webpack-loaders/expose-loader/index.js?require!./shared/require-global.js":function(e,n,t){(function(n){e.exports=n.require=t("./shared/require-global.js")}).call(n,t("../../../lib/node_modules/webpack/buildin/global.js"))}});
Implementing structured data markup (such as that from schema.org) might seem like a one-time project, but that “set it and forget it” mentality can land you in hot water. You should be monitoring the appearance of your rich snippets on a regular basis to ensure they are pulling in the correct information. As you change the content on your website, this can alter the markup without warning.

This is the number of views that you can test each month on your website.It's up to you how you choose to use them, either by allocating all the views to one test or to multiple test, either on one page or on multiple pages. If you have selected the 10.000 tested views plan and you run an experiment on your category page which is viewed 7000 times per month, then at the end of the month 7000 is what you'll be counted as tested views quota.
×