One-click tailoring from any job page. Best for daily use — adds a small button to LinkedIn, Indeed, Glassdoor, and most ATS pages.
Also works in Brave, Opera, Edge, and other Chromium browsers.
Get the Chrome extensionNo install permission needed. Works on every browser — even locked-down corporate machines.
Drag to your bookmarks bar
Tailor Resume for this JobThen click it on any job posting to tailor your resume instantly.
javascript:void function(){var APP_URL='https://resumestailor.com';var MIN_LEN=50;var MAX_LEN=10000;var SOURCE_URL=location.href;function getSelected(){try{var s=window.getSelection();if(!s)return null;var txt=s.toString().trim();return txt.length>=MIN_LEN?txt:null;}catch(_e){return null;}}function bySelectors(selectors){try{for(var i=0;i<selectors.length;i++){var el=document.querySelector(selectors[i]);if(el&&el.innerText){var t=el.innerText.trim();if(t.length>=MIN_LEN)return t;}}}catch(_e){}return null;}var SITES={linkedin:['.jobs-description__content','.jobs-description-content__text','.jobs-box__html-content','[class*="jobs-description"]','[class*="job-details"]','.job-view-layout [class*="description"]'],indeed:['#jobDescriptionText','.jobsearch-jobDescriptionText','[data-testid="job-description"]','.jobsearch-JobComponent-description'],glassdoor:['[class*="JobDetails_jobDescription"]','[class*="jobDescriptionContent"]','[data-test="jobDescriptionContent"]','.desc'],workday:['[data-automation-id="jobPostingDescription"]','[data-automation-id="jobPostingPage"]','.PCPF.WMUX'],greenhouse:['#content .opening','#content','.app-body','[class*="job-post"]'],lever:['.posting-page .section-wrapper','.posting-page','.section[data-qa="job-description"]'],ashby:['[class*="JobPostingPage_descriptionWrapper"]','[class*="JobPosting_description"]','[class*="_descriptionText"]']};function siteExtract(host){if(host.indexOf('linkedin.com')!==-1)return bySelectors(SITES.linkedin);if(host.indexOf('indeed.com')!==-1)return bySelectors(SITES.indeed);if(host.indexOf('glassdoor.')!==-1)return bySelectors(SITES.glassdoor);if(host.indexOf('myworkdayjobs.com')!==-1||host.indexOf('workday.com')!==-1){return bySelectors(SITES.workday);}if(host.indexOf('greenhouse.io')!==-1||host.indexOf('boards.greenhouse.io')!==-1){return bySelectors(SITES.greenhouse);}if(host.indexOf('lever.co')!==-1||host.indexOf('jobs.lever.co')!==-1){return bySelectors(SITES.lever);}if(host.indexOf('ashbyhq.com')!==-1||host.indexOf('jobs.ashbyhq.com')!==-1){return bySelectors(SITES.ashby);}return null;}function genericExtract(){try{var containers=document.querySelectorAll('article, main, [role="main"], .content, #content, '+'[class*="job"], [class*="description"], [class*="posting"]');var best=null,bestScore=0;var keywords=['responsibilities','requirements','qualifications','experience','skills','about the role','what you','we are looking','you will'];for(var i=0;i<containers.length;i++){var t=containers[i].innerText?containers[i].innerText.trim():'';if(t.length<200||t.length>20000)continue;var lower=t.toLowerCase(),score=0;for(var k=0;k<keywords.length;k++){if(lower.indexOf(keywords[k])!==-1)score++;}if(score>bestScore){bestScore=score;best=t;}}if(bestScore>=2&&best)return best;var all=document.querySelectorAll('div, section, article');var largest='';for(var b=0;b<all.length;b++){var bt=all[b].innerText?all[b].innerText.trim():'';if(bt.length>largest.length&&bt.length>200&&bt.length<20000){largest=bt;}}return largest||null;}catch(_e){return null;}}function go(url){try{var a=document.createElement('a');a.href=url;a.target='_blank';a.rel='noopener noreferrer';a.style.display='none';(document.body||document.documentElement).appendChild(a);a.click();setTimeout(function(){try{a.remove();}catch(_e){}},0);return;}catch(_e){}try{location.href=url;}catch(_e){}}var jd=getSelected();if(!jd)jd=siteExtract(location.hostname);if(!jd)jd=genericExtract();if(jd&&jd.length>MAX_LEN)jd=jd.substring(0,MAX_LEN);var base=APP_URL+'/tailor?source=bookmarklet&auto=1&from='+encodeURIComponent(SOURCE_URL);if(!jd||jd.length<MIN_LEN){go(APP_URL+'/tailor?source=bookmarklet&fallback=paste&from='+encodeURIComponent(SOURCE_URL));return;}var encoded;try{encoded=btoa(unescape(encodeURIComponent(jd)));}catch(_e){go(APP_URL+'/tailor?source=bookmarklet&fallback=paste&from='+encodeURIComponent(SOURCE_URL));return;}go(base+'#jd='+encoded);}()Open any role on LinkedIn, Indeed, Glassdoor, or an ATS-hosted page from a company careers site.
We read the visible job description in your browser — no server-side scraping, no scraping the page from our servers.
Quick Tailor opens with the job description prefilled. Pick a resume, hit Tailor, download the PDF.
Site not auto-detected? Select the job description text on the page first, then click the bookmarklet — we'll use your selection.
Head to the dashboard to set a default resume — that's what the bookmarklet and extension will tailor against.