Regarding my statement above, “Any domain name that reaches expired status and is not renewed by the owner will be auctioned by an auction service.”–it did overstretch. I’ve modified it to be: “A domain name that reaches expired status and is not renewed by the owner will be listed at an auction service (see FAQ for exception to this rule).” Then I added a FAQ to clarify. Please check my thinking:
The second option requires a bit more time and effort than a 301 redirect. You could do a mini overhaul of the site and turn it into a microsite for your main domain. This option is good for exact-match domains for your targeted keyword, and there are other reasons for going the microsite route that Rand's highlighted in his post about root domains, subdomains, subfolders and microsites. This strategy also works better if the old domain has decent rankings for the keywords you're targeting.
i had a backorder for a domian that was registered at godaddy. The backorder of the domain says the domain expires feb 23, 2015. However, when i check the whois on different websites, it now says the domain is registered through feb 2016. However, GODADDY back ordering still has the domain with the expiration date of feb 23, 2015. Why would they be showing 2 different dates? The domain is not even in an auction, so the 2016 seems like the new correct date?
No, no, no. ToysRUs made a perfectly logical decison that most any business would do and Google tanked them for it. ToysRUs wanted the url to direct to their site.  They're all about toys and they simply bought a url that described their business and told the url where to take people.  Google tanked them in the rankings because came with link juice. Google assumed that was doing this to manipulate the search engines but there is just, to my knowledge, ZERO evidence of this.  This is another case of Google caring more about the possible spam threat than the actual rankings for searchers.

What I like to do is sort by DP which stands for domain pop, and this is basically the number of linking root domains. So, BL is the number of back links. As you know that can be somewhat misleading if they have a lot of site wide links or multiple links from the same domain. I like to sort by domain pop. What that does is it brings up the sites with the most amount of referring domains.
It is very possible that the owner has a recurring payment in place, or that the owner renews after it expires. Because GoDaddy gives a redemption period like all registrar, many domain name investors will actually allow their domains to go through auction to see what the “market value” is of a domain name and THEN renew it. It sucks if you’re the buyer thinking you won the auction. It happens often, unfortunately.
Lets look at some settiings, so you could enter a list of websites to crawl for expired domains on, or you can enter a search query say you're looking to form a pbn to boost your money site, that's about horse riding or something you could put horse riding down there and then it'll search, Google for horse riding and then crawl all the domains that Google brings back to you. Then we've got endless crawl and you basically you put in a few seed websites and then it will just crawl endlessly from those websites. So it will take all the domains off those websites. First they'll check whether they're expired or not. If they're not expired, then it'll start crawling them and then it will crawl the ones it finds from them and so on so on and so on. It will just keep going ok.
!function(n,t){function r(e,n){return,n)}function i(e){return void 0===e}if(n){var o={},u=n.TraceKit,s=[].slice,a="?";o.noConflict=function(){return n.TraceKit=u,o},o.wrap=function(e){function n(){try{return e.apply(this,arguments)}catch(e){throw,e}}return n},{function e(e){a(),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(,2)))}catch(e){t=e}if(t)throw t}}function u(e,n,t,r,u){var s=null;if(w)o.computeStackTrace.augmentStackTraceWithInitialElement(w,n,t,e),l();else if(u)s=o.computeStackTrace(u),i(s,!0);else{var a={url:n,line:t,column:r};a.func=o.computeStackTrace.guessFunctionName(a.url,a.line),a.context=o.computeStackTrace.gatherContext(a.url,a.line),s={mode:"onerror",message:e,stack:[a]},i(s,!0)}return!!f&&f.apply(this,arguments)}function a(){!0!==d&&(f=n.onerror,n.onerror=u,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,,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"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 u=/(.*)\:\/\/([^:\/]+)([:\d]*)\/{0,1}([\s\S]*)/.exec(t);u&&u[2]===o&&(i=e(t)),j[t]=i?i.split("\n"):[]}return j[t]}function u(e,n){var r,o=/function ([^(]*)\(([^)]*)\)/,u=/['"]?([0-9A-Za-z$_]+)['"]?\s*[:=]\s*(function|eval|new Function)/,s="",l=10,c=t(e);if(!c.length)return a;for(var f=0;f0?u: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,u=n.length;or&&(i=u.exec(o[r]))?i.index:null}function h(e){if(!i(n&&n.document)){for(var t,r,o,u,s=[n.location.href],a=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"),a=[],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=u(g.url,g.line));var k=s(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",,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=u(i.url,i.line)),i.context||(i.context=s(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,s=/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!{if(r={url:null,func:a,args:[],line:null,column:null},[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===a&&(r.func=u(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",,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=u,v.gatherContext=s,v.ofCaller=b,v.getSource=t,v}(),o.extendToAsynchronousCallbacks=function(){var e=function(e){var t=n[e];n[e]=function(){var,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"))}});

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.
Everybody going to start using old domains should also know how to get them, I'm going to post soon article about it on seomoz as there are several ways starting from online rankings and lists up to dedicated seo tools that you can run on your computer and get precise and actual data on demand for any domains lists. Anybody intersting in such tools please visit our website:
Although I have one query (this answer does answer it, but I have a doubt)… I just bought a domain which had the creation date as 2010 but after acquisition upon checking I found that it has been reset to 2014. So, from what I understand from your article, this could not be undone anyways because this particular domain’s status said as ‘Expired’ and I got it for under $10 from godaddy?
Great article on what to look for when buying expired domains! I’ve looked at the domain and page authority of expired domains but haven’t checked if they are blocked by Google like you’ve listed. I haven’t pulled the trigger yet to purchase one (probably good that I didn’t since I didn’t do all my homework) but this will make it easier to finally go. Thanks for the great info!
There is no easy way to explain “all” things about expired domain names. As you stated Michael, Network Solutions domain names go to the partnered domain auction service BUT, not “all” do… NSI customers have the option to opt-out of having expired domains go to auction. If a customer picks this option, the domain name would go through the drop process and go PendingDelete around the 71st day after the expire date. When it is released from the registry, the domain name is fair game to the major dropcatching services and the private ones. This still doesn’t mean anybody would grab it, and the domain may become available to hand register.
.ac .ae .af .ag .am .ar .as .at .au .aw .ax .be .bg .bi .bj .bn .bo .br .bw .by .bz .ca .cc .ch .ci .cl .cn .co .cr .cx .cz .de .dk .dm .do .ee .es .fi .fm .fo .fr .gd .gg .gi .gl .gs .gy .hk .hn .hr .ht .hu .id .ie .il .im .in .io .iq .ir .is .it .je .jp .ke .kg .ki .kr .ky .kz .la .lc .li .lt .lu .lv .ly .ma .md .me .mg .mk .mn .ms .mu .mx .nl .nc .nf .ng .no .nu .nz .om .pe .pf .pl .pm .pr .pt .pw .qa .re .ro .rs .ru .rw .sb .sc .se .sg .sh .si .sk .sm .sn .so .st .su .sx .tc .tf .th .tl .tn .to .tr .tv .tw .ua .ug .uk .us .uy .uz .vc .wf .yt .za