I am a rather gray-hat affiliate marketer by trade, but I"m looking more into going into local SEO and blogging ventures that I feel will be most sustainable. I am having serious moral issues with using any of my link building strategies, but the one I'm struggling morally and long-term strategy-wise is the use of a manufactured link-juice-flowing-thick private blog network. I believe the majority of these will ultimately fall by the wayside in the future when their social value and content are proven to lack substance by machine reading and advanced social metrics. 
This is a little bit on the grey hat/black hat side of the spectrum. But the fact is building a blog network with expired domains flat out works. The only issue is getting those cream of the crop domains without going broke. This video will walk you through tested strategies and techniques you can use to find powerful, yet affordable, expired domains.

By strategically buying expired domain names which have certain quality features, you can create a link "pump" to your target sites. From an SEO perspective, this can turbo charge your rankings on Google and other search engines. Also, you can make money directly by promoting products on high ranking search results. Additionally, you can make money by selling links on your network to people looking to get an SEO boost.


Now a lot of time, you'll search for things and you'll think you're getting niche website's back, but actually, in fact, because of Google's shift towards big authority websites, you'll get things like Amazon listings. So if you don't want to end up crawling those big authority websites - and you want just the smaller ones, then you can make sure that the website, you'll crawl from the search engine results, is relevant by putting in a metadata requirement here. So any results that come back from the scrape of Google for any of these search terms, here you can say that they must contain one of these things, so what you can do is you can just put that your search terms in there back into there into the metadata requirement. So then, when a result comes back from google, it will loop through these line, separated terms and it'll say this is a homepage metadata, so the title, the keyword, the description, does it contain these?

Warehousing: I have no clue to a percentage of warehoused domains but I know it happens. Tucows even admitted it on my blog “I know you don’t like that we’re allowed to select expiring names for the Tucows Portfolio rather than letting them all go to auction or drop but that seems to be something we have to agree to disagree about.” ~ Ken Schafer (1st comment) http://www.dotweekly.com/could-you-explain-tucows

Here's an old post on search engine roundtable that claims google's policy is to discount previous backlink juice when a domain changes ownership.  I'm not convinced whether this is actually true or something Google says to discourage excessive domain buying / 301 redirecting for SEO benefit.  The comments above seem to give varying opinions on this matter. Would be great to get to the bottom of that one!
Yes, I know, it seems backwards that you’d have to compete in an auction for a domain name that may never be caught. Other people feel the same way and many don’t compete as a result of that. But that’s the way the drop catching service was set up. Who knows, it may mean less competition for you since others do not like that model, which benefits the company rather than the user.
When the domain drops, the minute it drops, literally, they will try to get it and if you can get it, it’s yours. So, that’s it for expired domains. You can see it’s a little bit complicated and it takes some leg work, but if you’re interested in building a publisher network or a private blog network, this is a great way to find sites that have a great link profile without you having to actually build any links. So, that’s it for this video. I’ll see you in the next one.
Yes, we port in all of the domains from NameJet, SnapNames, etc. There are a lot of great deals to be found. Some are absolute trash of course but if you can sift through them and put some time in (hopefully that is what we are trying to do with our tools is save time and give some value add with the SEO metrics, alerts, etc.) then you can find some great bargains.
Let's face it, if you want to make money off the internet, you have to wrap your mind around one central rule: no traffic means no money. Making money online is all about being able to generate traffic from social media sites, search engines, and all other sources of online traffic. It's impossible to make money as an affiliate if you don't have traffic to convert into cold hard dollars. There are, of course, many ways to generate traffic. You can write content and organically attract search engine traffic. You can post a unique blog post on willing third party blogs and enjoy direct traffic along with SEO benefits. You can also promote affiliate links on social media platforms and get traffic that way. In fact, if you really think about it hard enough, generating traffic is really not that difficult.
The biggest advantage of using expired domain names to earn cash online is that they belonged to a website that had already establish, registered with several search engines companies and has existing backlinks and traffic. In general, by making use of expired domain names you tap into the resources that were created by someone else to get rich within a short time unlike when you do all the dirty work to get your website recognized immediately.
If your domain name was in fact stolen from you, please go file a police report as soon as possible. If, instead, you allowed your domain name to expire through carelessness or ignorance, then you’ve learned a valuable lesson: domains have value. I’m not saying this to be a jerk, I’m saying this because words matter and saying something was “stolen” when in fact it was allowed to expire is not truth. I’m happy to share my knowledge as clearly as possible for others to benefit from, and all I ask is that others do the same.
(function(){"use strict";function u(e){return"function"==typeof e||"object"==typeof e&&null!==e}function s(e){return"function"==typeof e}function a(e){X=e}function l(e){G=e}function c(){return function(){r.nextTick(p)}}function f(){var e=0,n=new ne(p),t=document.createTextNode("");return n.observe(t,{characterData:!0}),function(){t.data=e=++e%2}}function d(){var e=new MessageChannel;return e.port1.onmessage=p,function(){e.port2.postMessage(0)}}function h(){return function(){setTimeout(p,1)}}function p(){for(var e=0;et.length)&&(n=t.length),n-=e.length;var r=t.indexOf(e,n);return-1!==r&&r===n}),String.prototype.startsWith||(String.prototype.startsWith=function(e,n){return n=n||0,this.substr(n,e.length)===e}),String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}),String.prototype.includes||(String.prototype.includes=function(e,n){"use strict";return"number"!=typeof n&&(n=0),!(n+e.length>this.length)&&-1!==this.indexOf(e,n)})},"./shared/require-global.js":function(e,n,t){e.exports=t("./shared/require-shim.js")},"./shared/require-shim.js":function(e,n,t){var r=t("./shared/errors.js"),i=(this.window,!1),o=null,u=null,s=new Promise(function(e,n){o=e,u=n}),a=function(e){if(!a.hasModule(e)){var n=new Error('Cannot find module "'+e+'"');throw n.code="MODULE_NOT_FOUND",n}return t("./"+e+".js")};a.loadChunk=function(e){return s.then(function(){return"main"==e?t.e("main").then(function(e){t("./main.js")}.bind(null,t))["catch"](t.oe):"dev"==e?Promise.all([t.e("main"),t.e("dev")]).then(function(e){t("./shared/dev.js")}.bind(null,t))["catch"](t.oe):"internal"==e?Promise.all([t.e("main"),t.e("internal"),t.e("qtext2"),t.e("dev")]).then(function(e){t("./internal.js")}.bind(null,t))["catch"](t.oe):"ads_manager"==e?Promise.all([t.e("main"),t.e("ads_manager")]).then(function(e){undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined}.bind(null,t))["catch"](t.oe):"publisher_dashboard"==e?t.e("publisher_dashboard").then(function(e){undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined}.bind(null,t))["catch"](t.oe):"content_widgets"==e?Promise.all([t.e("main"),t.e("content_widgets")]).then(function(e){t("./content_widgets.iframe.js")}.bind(null,t))["catch"](t.oe):void 0})},a.whenReady=function(e,n){Promise.all(window.webpackChunks.map(function(e){return a.loadChunk(e)})).then(function(){n()})},a.installPageProperties=function(e,n){window.Q.settings=e,window.Q.gating=n,i=!0,o()},a.assertPagePropertiesInstalled=function(){i||(u(),r.logJsError("installPageProperties","The install page properties promise was rejected in require-shim."))},a.prefetchAll=function(){t("./settings.js");Promise.all([t.e("main"),t.e("qtext2")]).then(function(){}.bind(null,t))["catch"](t.oe)},a.hasModule=function(e){return!!window.NODE_JS||t.m.hasOwnProperty("./"+e+".js")},a.execAll=function(){var e=Object.keys(t.m);try{for(var n=0;n=c?n():document.fonts.load(l(o,'"'+o.family+'"'),s).then(function(n){1<=n.length?e():setTimeout(t,25)},function(){n()})}t()});var w=new Promise(function(e,n){a=setTimeout(n,c)});Promise.race([w,m]).then(function(){clearTimeout(a),e(o)},function(){n(o)})}else t(function(){function t(){var n;(n=-1!=y&&-1!=g||-1!=y&&-1!=v||-1!=g&&-1!=v)&&((n=y!=g&&y!=v&&g!=v)||(null===f&&(n=/AppleWebKit\/([0-9]+)(?:\.([0-9]+))/.exec(window.navigator.userAgent),f=!!n&&(536>parseInt(n[1],10)||536===parseInt(n[1],10)&&11>=parseInt(n[2],10))),n=f&&(y==b&&g==b&&v==b||y==x&&g==x&&v==x||y==j&&g==j&&v==j)),n=!n),n&&(null!==_.parentNode&&_.parentNode.removeChild(_),clearTimeout(a),e(o))}function d(){if((new Date).getTime()-h>=c)null!==_.parentNode&&_.parentNode.removeChild(_),n(o);else{var e=document.hidden;!0!==e&&void 0!==e||(y=p.a.offsetWidth,g=m.a.offsetWidth,v=w.a.offsetWidth,t()),a=setTimeout(d,50)}}var p=new r(s),m=new r(s),w=new r(s),y=-1,g=-1,v=-1,b=-1,x=-1,j=-1,_=document.createElement("div");_.dir="ltr",i(p,l(o,"sans-serif")),i(m,l(o,"serif")),i(w,l(o,"monospace")),_.appendChild(p.a),_.appendChild(m.a),_.appendChild(w.a),document.body.appendChild(_),b=p.a.offsetWidth,x=m.a.offsetWidth,j=w.a.offsetWidth,d(),u(p,function(e){y=e,t()}),i(p,l(o,'"'+o.family+'",sans-serif')),u(m,function(e){g=e,t()}),i(m,l(o,'"'+o.family+'",serif')),u(w,function(e){v=e,t()}),i(w,l(o,'"'+o.family+'",monospace'))})})},void 0!==e?e.exports=s:(window.FontFaceObserver=s,window.FontFaceObserver.prototype.load=s.prototype.load)}()},"./third_party/tracekit.js":function(e,n){/**

1. Some domain names don’t go to auction and are instead held by the registrar in their own portfolios (you called this “warehousing” by the registrar). This is probably less than 0.001% of the domain names….actually, probably even less. I suspect it would only be premium domain names with massive exact match local search quantities. Not surprisingly, I cannot find any information from registrars about their procedure, quantities of domains their keep, or ICANN’s rules (if any) about this.
Alternatively, you can monitor a domain name for free at a number of locations. DomainTools.com offers a free domain name monitor tool, as does DomainHole.com (both available with free member registration). Once you receive an email notification that a domain has changed status from active to expired, you can follow the process listed above to enter a bid at the auction partner site.

Hello, since many years now my domain name has been stolen from me. Now it’s for sale but for $3000 and I don’t have that kind of money. My question is, if I backorder it, won’t this trigger the owner to keep on renewing it each year hoping that one day I will buy it from him? Isn’t there a way to reserve my domain name or get notified when it goes back to sell without the seller to know?


A brand new domain, for instance, will have to wait for a few days before getting indexed by Google and other search engines, and then its owner will need to go through the tedious process of search engine optimization, which takes time and financial resources. High authority expired domain names on the other hand, offer a short cut and allow you to get down to business straight away.
For many reasons, these domain names expire and become available to the market. Perhaps the domain renewal fees are unpaid. The owner no longer needs the domain or business came to a halt. With the large pool of domain names that become invalid daily, investors who are looking to cash in on the traffic that they generate have to do extra work to find the most profitable every day. The trick is to find expired domains.
I don't necessarily agree with some that dropped domains don't have value for SEO purposes but either way one thing you can do is to check out our tool for finding auction domain names (the tool has a database of domains available buy from GoDaddy and SEDO and also give additional SEO criteria to look up for the domains like backlinks, Compete data, CPC, Google stats, Alexa stats, etc. and there is also an option to schedule auction domain alerts so that you can be notified via email if a domain name meeting criteria you specify gets put up for sale) or you could use our tool fo domains dropping soon that shows all domains dropping in the next 5 days that way you can be ready to snap them up right away.
At the end of the day, this article is geared to startups, business entrepreneurs, webmasters and marketing professionals who need to understand the process, and I guestimate that the process listed in the article above accounts for 99%+ of all expired domain names. All of your points are valid and appreciated, but if someone is interested in buying a good, brandable domain name for their business, they should follow the instructions above to have the best chance of grabbing it.
(function(){"use strict";function u(e){return"function"==typeof e||"object"==typeof e&&null!==e}function s(e){return"function"==typeof e}function a(e){X=e}function l(e){G=e}function c(){return function(){r.nextTick(p)}}function f(){var e=0,n=new ne(p),t=document.createTextNode("");return n.observe(t,{characterData:!0}),function(){t.data=e=++e%2}}function d(){var e=new MessageChannel;return e.port1.onmessage=p,function(){e.port2.postMessage(0)}}function h(){return function(){setTimeout(p,1)}}function p(){for(var e=0;et.length)&&(n=t.length),n-=e.length;var r=t.indexOf(e,n);return-1!==r&&r===n}),String.prototype.startsWith||(String.prototype.startsWith=function(e,n){return n=n||0,this.substr(n,e.length)===e}),String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}),String.prototype.includes||(String.prototype.includes=function(e,n){"use strict";return"number"!=typeof n&&(n=0),!(n+e.length>this.length)&&-1!==this.indexOf(e,n)})},"./shared/require-global.js":function(e,n,t){e.exports=t("./shared/require-shim.js")},"./shared/require-shim.js":function(e,n,t){var r=t("./shared/errors.js"),i=(this.window,!1),o=null,u=null,s=new Promise(function(e,n){o=e,u=n}),a=function(e){if(!a.hasModule(e)){var n=new Error('Cannot find module "'+e+'"');throw n.code="MODULE_NOT_FOUND",n}return t("./"+e+".js")};a.loadChunk=function(e){return s.then(function(){return"main"==e?t.e("main").then(function(e){t("./main.js")}.bind(null,t))["catch"](t.oe):"dev"==e?Promise.all([t.e("main"),t.e("dev")]).then(function(e){t("./shared/dev.js")}.bind(null,t))["catch"](t.oe):"internal"==e?Promise.all([t.e("main"),t.e("internal"),t.e("qtext2"),t.e("dev")]).then(function(e){t("./internal.js")}.bind(null,t))["catch"](t.oe):"ads_manager"==e?Promise.all([t.e("main"),t.e("ads_manager")]).then(function(e){undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined}.bind(null,t))["catch"](t.oe):"publisher_dashboard"==e?t.e("publisher_dashboard").then(function(e){undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined}.bind(null,t))["catch"](t.oe):"content_widgets"==e?Promise.all([t.e("main"),t.e("content_widgets")]).then(function(e){t("./content_widgets.iframe.js")}.bind(null,t))["catch"](t.oe):void 0})},a.whenReady=function(e,n){Promise.all(window.webpackChunks.map(function(e){return a.loadChunk(e)})).then(function(){n()})},a.installPageProperties=function(e,n){window.Q.settings=e,window.Q.gating=n,i=!0,o()},a.assertPagePropertiesInstalled=function(){i||(u(),r.logJsError("installPageProperties","The install page properties promise was rejected in require-shim."))},a.prefetchAll=function(){t("./settings.js");Promise.all([t.e("main"),t.e("qtext2")]).then(function(){}.bind(null,t))["catch"](t.oe)},a.hasModule=function(e){return!!window.NODE_JS||t.m.hasOwnProperty("./"+e+".js")},a.execAll=function(){var e=Object.keys(t.m);try{for(var n=0;n=c?n():document.fonts.load(l(o,'"'+o.family+'"'),s).then(function(n){1<=n.length?e():setTimeout(t,25)},function(){n()})}t()});var w=new Promise(function(e,n){a=setTimeout(n,c)});Promise.race([w,m]).then(function(){clearTimeout(a),e(o)},function(){n(o)})}else t(function(){function t(){var n;(n=-1!=y&&-1!=g||-1!=y&&-1!=v||-1!=g&&-1!=v)&&((n=y!=g&&y!=v&&g!=v)||(null===f&&(n=/AppleWebKit\/([0-9]+)(?:\.([0-9]+))/.exec(window.navigator.userAgent),f=!!n&&(536>parseInt(n[1],10)||536===parseInt(n[1],10)&&11>=parseInt(n[2],10))),n=f&&(y==b&&g==b&&v==b||y==x&&g==x&&v==x||y==j&&g==j&&v==j)),n=!n),n&&(null!==_.parentNode&&_.parentNode.removeChild(_),clearTimeout(a),e(o))}function d(){if((new Date).getTime()-h>=c)null!==_.parentNode&&_.parentNode.removeChild(_),n(o);else{var e=document.hidden;!0!==e&&void 0!==e||(y=p.a.offsetWidth,g=m.a.offsetWidth,v=w.a.offsetWidth,t()),a=setTimeout(d,50)}}var p=new r(s),m=new r(s),w=new r(s),y=-1,g=-1,v=-1,b=-1,x=-1,j=-1,_=document.createElement("div");_.dir="ltr",i(p,l(o,"sans-serif")),i(m,l(o,"serif")),i(w,l(o,"monospace")),_.appendChild(p.a),_.appendChild(m.a),_.appendChild(w.a),document.body.appendChild(_),b=p.a.offsetWidth,x=m.a.offsetWidth,j=w.a.offsetWidth,d(),u(p,function(e){y=e,t()}),i(p,l(o,'"'+o.family+'",sans-serif')),u(m,function(e){g=e,t()}),i(m,l(o,'"'+o.family+'",serif')),u(w,function(e){v=e,t()}),i(w,l(o,'"'+o.family+'",monospace'))})})},void 0!==e?e.exports=s:(window.FontFaceObserver=s,window.FontFaceObserver.prototype.load=s.prototype.load)}()},"./third_party/tracekit.js":function(e,n){/**

That’s it for deleted domains which you can just pick up by heading over to your favorite registrar and registering it right away as long as it says, free and green here. If it says registered it’s obviously taken. This is obviously a cheap way to get some great links because let’s say, you know, this site we saw is not bad. It doesn’t have page rank, but that could be just because there was no content on the site. If it has a solid link profile, you can be sure that the page rank will come back and you can pick it up for about $10.
If you are pursuing option 1, then you will want to use an automated service for the reasons mentioned in the article. Follow the process in the article to see which registrar the domain name is located at. If it’s at a Auction House like GoDaddy, NameJet or SnapNames, I believe they publicly share if there is a backorder on a domain name but not who placed that backorder. (Any interest in a domain name may be enough for someone else to place a backorder, thereby driving interest in the domain name that may be visible to the registrant.) So if the domain is at a registrar partnered with one of these companies, then you’ll have to monitor it manually (via calendar entries based on the whois expiration data) to maintain your distance.
I'm running the new Mac edition of Domain Ronin and I have to tell you it's extremely stable. I'm getting about 250k pages every 5 minutes which equates to about 2700 checked domains. At the moment it's only using about 1 gig of memory for 100 threads. I've got the page count and other settings to the max. The builtin features like TF and spam checking on the fly are wicked helpful.
1) pending delete auctions.  These are domains that were not renewed and are going through a pretty complicated drop process.  You can backorder these names at the auction venues and then each attempts to "catch" the dropping domain.  If one is successful you win the domain at $59 if you're the only one to backorder the name.  If more than one person backordered the domain a 3 day private auction is held.  Once the domain goes through the drop process, the back links have pretty much zero SEO benifit to the new domain owner.
At the end of the day, this article is geared to startups, business entrepreneurs, webmasters and marketing professionals who need to understand the process, and I guestimate that the process listed in the article above accounts for 99%+ of all expired domain names. All of your points are valid and appreciated, but if someone is interested in buying a good, brandable domain name for their business, they should follow the instructions above to have the best chance of grabbing it.
Hi Kulwant, these are great tips as usual. I particularly like the way to tell us to check the google pagerank in case the domain has been banned – that could lower the usefulness of the domain quite a bit. One thing though, don’t you think that buying domains is sometimes immoral? Like sometimes you accidentally buy a domain of somebody elses website who forgot to renew.

Hundreds of thousands of domains expire everyday. While most of them are trash, quite a few are aged domains having excellent backlinks. These can be easily filtered using metrics from Majestic (Trust Flow) & Moz (Domain Authority). These are great for your money sites or for building private blog networks. Some of these domains have natural organic traffic, that can be determined by their SEMrush rank or the SimilarWeb data. These are great for domain parking or for promoting affiliate offers.

×