$50K/Monat Lead-Gen-Automation mit n8n: Intent-basiertes Outreach-System
Haupterkenntnis: Statt generischer Zielgruppen-Filter (Jobtitel, Firmengröße) sollte man Intent-Signale wie aktive Stellenausschreibungen nutzen, um warme Leads zu identifizieren – und den gesamten Prozess per n8n vollautomatisieren.
Creator:Clarence Nap Branche: Marketing Bereich: Automation
Clarence Nap zeigt seinen vollautomatisierten n8n-Workflow, mit dem er monatlich >$35k Profit generiert – von LinkedIn-Job-Scraping über E-Mail-Finder bis hin zu KI-personalisiertem Cold-Outreach.
Langbeschreibung
Der Workflow besteht aus fünf Segmenten: (1) Scraping von LinkedIn-Stellenanzeigen (z. B. SDR-Rollen) via Apify-Actor und API-Trigger mit Polling-Loop, (2) Extraktion der Unternehmenswebsite aus der LinkedIn-Profilseite per LLM-Prompt, (3) E-Mail-Adressen-Suche via Hunter.io (EmailFinder) auf Basis der Domain, (4) Lead-Enrichment durch Homepage-Scraping und GPT-4o-mini-Analyse (Testimonials, Wachstum, Success Stories) sowie Bereinigung des Firmennamens und Extraktion des Vornamens aus der E-Mail-Adresse, (5) Befüllen eines fest vorgeschriebenen E-Mail-Templates durch das LLM – nur die Personalisierungs-Platzhalter werden gefüllt, die Struktur bleibt kontrolliert für A/B-Testing. Der Kerngedanke: Wer aktiv einen SDR sucht, hat bereits einen bewussten Schmerz und ist empfänglich für ein Cold-Outreach-Angebot einer Sales-Agentur.
Stichpunkte
Intent-Signal statt Demografie: Firmen, die SDRs suchen, wollen ihre Sales-Pipeline ausbauen – perfektes Timing für Sales-Agenturen
Apify als Scraper-Marktplatz: LinkedIn-Job-Scraper, Apollo-Scraper, Instagram-Scraper u. v. m. per API steuerbar
Polling-Loop in n8n: HTTP-POST (Trigger) + HTTP-GET (Datenabruf) + Code-Node (Status prüfen) + IF-Node + Wait-Node, bis Scraper-Daten bereit sind
Domain-Extraktion: LinkedIn-Firmen-HTML scrapen → HTML bereinigen → LLM extrahiert Website-URL
E-Mail-Finder (Hunter.io): Domain-Suche liefert alle verknüpften E-Mail-Adressen (bis 1.000 Ergebnisse)
Homepage-Enrichment mit GPT-4o-mini: Testimonials, Wachstum, Success Stories als Personalisierungsbasis
Firmennamen-Bereinigung: „Ltd.”, „Inc.”, „Limited” entfernen für menschlich klingende Ansprache
Template-Kontrolle: LLM füllt nur Platzhalter – Struktur bleibt konstant für reproduzierbare Metriken und A/B-Tests
Ergebnis laut Creator: 0→35k/Monat Profit in 6 Monaten, 3–4 Arbeitsstunden/Tag
Zitate
“Instead of casting a wide net, focus on companies that are already showing signs of a specific need.”
“If you constantly let the LLM write the entire email, you can be sure that each and every email is going to be completely different – so there aren’t any consistencies to test.”
“There’s no human that can compete with a flow like this.”
Action Items
Apify-Account anlegen und LinkedIn-Job-Scraper-Actor suchen (Scraper-ID notieren).
n8n-Workflow aufbauen: HTTP POST (Apify-Trigger) → HTTP GET (Datenabruf) → Code-Node (Status-Check) → IF-Node → Wait-Node → Loop bis Daten bereit.
LinkedIn-Firmen-HTML per HTTP-Node abrufen → HTML-Bereinigung per Code-Node → LLM-Prompt zur URL-Extraktion.
Hunter.io-API-Key besorgen und Domain-Suche in n8n integrieren.
Homepage der Firma scrapen → HTML bereinigen → GPT-4o-mini mit Enrichment-Prompt (Testimonials, Wachstum, Success Stories).
Firmennamen-Bereinigung (Ltd./Inc./Limited entfernen) per LLM-Node.
Vornamen aus E-Mail-Adresse per LLM extrahieren.
Eigenes Cold-Email-Template mit Platzhaltern schreiben (Opener, Personalisierung, CTA).
LLM nur die Platzhalter befüllen lassen – Template-Struktur nicht dem LLM überlassen.
E-Mail-Versand-Node anschließen und Workflow als geplanten Schedule-Trigger aufsetzen.
Full Transcript
Hi, my name is Clarence. I run a lead generation agency that brings in over 35,000inprofiteachmonth,butthere′sevenakicker.Idon′tspendhoursgrindingawayatmydesktomakethishappen.Instead,I′vebuiltanautomatedsystemusingN8Nthatfindswarmleads,personalizedoutreach,andbooksclientsformeatscale.Intoday′svideo,I′mgoingtopullbackthecurtainandshowyouexactlyhowthesystemworksandhowyoucanuseittotransformyourbusinessto.Letmestartwithaquestion.Haveyoueverfeltlikefindingqualityleadsisoneofthehardestpartsofgrowingyourbusiness?Well,you′redefinitelynotalone.Like,manybusinesseswastehours,evenweekschasingcoldprospectswhowereneverreallyinterestedintheirservicestobeginwith.Traditionalmethodslikeblastinggenericemailstomassivelistsjustdon′tworkanymore.I′mnotsureifthey′veeverworked.However,they′retime−consuming,inefficient,andlet′sfaceit,theyoftenleadtosmallresults.I′vebeenthere,butthegoodnewsisthere′samuchsmarterwaytodothings.WhatI′venoticedisthatalotofpeopleapproachleadgenerationallwrong.They′lltargetverygenericandthey′lltargetprospectsbasedonservicelevelmetricslikejobtitlesorcompanysize.Forexample,theymightdecidetoreachouttoallmarketingdirectorsatcompanieswithover500employees.Youmightbewondering,"Well,what′swrongwiththat?"Well,theproblemisthatthisapproachdoesn′ttakeintoaccountwhetherthesebusinessesactuallyneedyourservices.Meaning,youendupspendingtimeandresourcesonpeoplewhodon′tevenknowtheyhaveaproblemorworsearen′tinterestedinsolvingit.So,ofcourse,you′rewondering,"Well,howdoIfixthis?"Or,"Youfixthisbyflippingthescript."So,insteadofawhitenet,focusoncompaniesthatarealreadyshowingsignsofaspecificneed.I′llshowyouwhatImean.Ifyourunasalesagency,justlikeIdo,don′tjusttargetdecisionmakers,buttargetbusinessesthatareactivelyhiringforsalesdevelopmentrepresentativeslikeSDRs,becauseyouknowthey′reonthelookouttoexpandtheirsalesteam.Whydothis?Well,becausecompaniesinvestingintheserolesareclearlyfocusedonimprovingtheirsalesprocess.They′remuchmorelikelytoseevalueinwhatyouoffer.It′sallaboutidentifyingpainpoints.Forinstance,acompanyhiringasanSEOspecialistislikelystrugglingwithwebsiteperformance.ThesamegoesforabusinesslookingforanewCTO.Theymayhavetechnicalinfrastructurechallenges,whichifthat′swhatyousolve,that′saperfecttimetostepin.ByfocusingonthesesignalslikejobpostingsonLinkedInorindeed,youcantailoryouroutreachtoaddresstheirspecificneeds.Thismakesyourmessagenotjustrelevant,butitmakesitirresistible.Okay,youguysprobablyhavehadenoughofmerambling.Let′sdiveintotheworkflow.WhatyoucanseeonscreenisaworkflowthatI′vepersonallyusedtothisdaytogetmequitealotofclients.BecauseasIsaid,I′mtargetingpainpoints.I′mtargetingpeoplewhoareactivelylookingtomakeachangeoractivelylookingtohirepeopletodothethingsthatIcandoforthem.Sothat′stheperfecttimetostepin.Theworkflowisquitelong.That′sbecausetherearesometrickyparts.That′swhyI′vetriedtobreakitdownintofivedifferentsegments.First,we′llscrapecompanieswhoareactivelyhiringforcertainroles.Well,inthiscase,I′musingSDRasanexample.Thenwe′llhavetofindtheiremailaddressbecausethatisn′tpartofthejobapplication.We′llhavetoenrichtheleadanduseARtopersonalizeandthenlastlywriteanemailandsendtheemail.Let′sstartatthebeginning.WescrapeforcompanieshiringforSDRs.WescrapeLinkedInbecauseLinkedInisoneoftheplatformsjustlikeindeedwheremostcompaniespostjobapplicationsiftheyhavesome.Butasyoucansee,thereare3000UnitedStateslookingforanSDR.Soplentyofpeopleforustoreachoutto.Theproblemwithdoingthismenulistisgoingtobeverytimeconsuming.That′swhywemadethispartoftheautomationtoscrapethelistofcompaniesandjobsyoujustsaw.Iuseascraper,whichcanbefoundonApeFi.Forthosewhoaren′tfamiliar,ApeFiisagiantmarketplaceforscrapers.You′veseenavideoofmeusingitforanApolloscraper,butyoucanalsohaveanInstagramscraper,Facebookpostscraper,stereoscraper,G2scraper,crunchbasescraper.Younameit.It′sprobablyonhere.Sohowtogetthescrapertoworkisactuallyquitesimple.Itshouldhaveonlytakentwonotes,whichisthisHTTPnote,whichissettopostandthisone,whichissettoget.ButtherearesomeotherthingsIhadtoaddtothisflowtomakeitworkwithoutanymanualinput.I′llgettothatinasecond.First,letmeshowyouhowyoucanactuallytriggerthescraper.Totriggerthescraper,weuseanAPIforthosewhoaren′tfamiliar.AnAPIissimplylikeabridgebetweentwosystems,whichletsonesystem,whichisourautomationtalkwithanotherone,whichisthescraper.Forthat,allweneedisaURL.IfoundyoucanfindthisURLontheAPIdocumentation.It′sverystraightforward,soIwon′tgooveritinanydetail.Athingtonoteisthatwhatyouseehere,I′llhighlightitforyou,istheIDofthescraper.SoeachscraperhastheirownID,ofcourse,andthisjusttellstheAPI,whichactorithastocommunicatewith.Soonceyou′vesentthetriggertothescrapertostartrunning,allwehavetodoisretrievethedata,retrievethedataset.Forthat,weuseavariable,whichisalsoanID.Youcanseeit,it′sthisnumber.It′savariablebecauseeachrunofthescraperyoudo,thedatasetIDisgoingtobedifferent.Soitneedstobeavariable.Youcanseethatonlyonthefirstandsecondrun,therewasnoinformationtobeoutput,meaningdatawasn′treadyyet.Onlythethirdrun,thereactuallywassome.SooncethisHTTPnoteisdone,whichliterallytakesasplitsecondbecauseallithastodoissendatriggertoaURL.Thisnoteisimmediatelyactivatedandistoldtoretrievethedata,butnineoratentimesthedataisn′tgoingtobereadyinasplitsecondbecausethescraperneedstostartrunningandneedstofinish,whichcantakeawhiledependingonwhatyou′reaskingfromit.That′swhythesefournoteshereareinplace.SoasIjustshowedinsideofthisHTTPnote,youcouldseethatthefirsttworunsweredots.Soifthat′sthecase,thiscodenotejustchecksifthere′sanoutput.Ifthereisn′tone,it′llsendoutnotready.Asyoucansee,thestatusisnotready.Thenitgoestothisifnote,whichchecksifnotreadyispresent.Well,ifitisn′tpresent,it′stoldtowaitandthenreruntheflowuntilthere′sactuallysomedatatoberetrievedandwecancontinueon.Inthiscase,youcanseeittooktworoundsorthreetriesactuallybeforethedatawasready.SonowyouknowwhyeventhoughtriggeringanAPIandretrievingthedataisverystraightforward,thereweresomenecessaryadditionstothispartoftheflow,whichalsoconcludesthefirstsection.Don′tworry,theotheroneswon′ttakeaslong.Nowweneedtofindtheemailaddress.WefindtheemailaddressbyusingsomeveryusefulsoftwarecalledEnemailFinder.EnemailFinderisaccessiblealsothroughanAPI,whichiswhywecanlinkittoourworkflow.WhatEnemailFinderdoesisbasedonadomain,itcanfindemailaddresses,whicharelinkedtothatdomain.Sosincewedon′thavetheemailaddresstothepersonwhopostedthejobapplicationonLinkedIn,we′llhavetojustdoadomainsearchandfindallemailaddresseslinkedtothatcompany.Letmequicklyshowyouwhatweactuallydidretrievebecausethat′swhatIforgotjustnow.Sohereyoucanseethedatasetandwhatitcontained.I′llshowyouinaschema.Soit′sclearerforeveryone.SowehavethepostIDoftheapplicationwhenitwaspublished.Inthiscase,thesalaryisn′tpresent.Weseethecompanyname.WealsohavethecompanyURL,whichisn′ttheURLtothecompanywebsite,butthisistheURLtothecompanyLinkedInpage.Well,thejobwaspostedonLinkedIn.Andthenlastlyhere,itsaysposterfullname.Insomecases,thereisanameactuallyhere.Butinmostcases,Iwouldsay9outof10timesthereisn′taposterfullname.Ithinkthat′sduetoprivacyreasonsorjustbecauseitisn′tlikerequired.Andtheposterfullname,notbeingpresentjustmakesourjobalittlebitmoredifficult,butit′sstilldoable.AndI′llshowyouhow.SonowyouactuallyknowwhatwasretrievedbythescraperfromtheLinkedInjobpost,whichbringsusontofindingtheemailaddress.Well,tofindtheemailaddressandtotriggertheAPI,asIjustshowed,weneedadomain.Wehaven′tfoundthedomainyetbecauseitwasn′tpartoftheretrievedinformation.SowehavetoscrapethecompanyLinkedInprofiletofindadomain.HowwedothatisbyusingalsoHTTPnote.ThisHTTPnotegetsthecompanyLinkedInprofileHTML.Soit′sjustItookthisfromtheleftandpasteditoverthere.AnditretrievedustheHTML.Asalways,wewanttocleanthisbecausethiscontainsalotofcodeandalotofunnecessarystuffwhichjustincreasestheamountofinputtokensintotheLM,whichissomethingwedon′twant.That′swhythiscodeispresent.AllthiscodedoesisfilteroutHTML.Asyoucanseeontheleftside,itwasverydirtyasIliketocallitandontheleftontherightside,allthatremainsisplaintextreadableforusandalsoeasierfortheLLM.Thensomewhereonthepage,sosomewherewithinthislineoftext,thereisn′treallysomewhereinhere.ThereisthedomainnameandURLofthecompany.SowhatI′vedoneisI′vewrittenaprompttokindofanalyzethistextandbasedonthecompanyname,findmethemostlikelyURL.ThepromptisverystraightforwardbasedontheprovidedLinkedIncontent,identifythecompanynameandlocatethewebsiteURL,onlyoutputtheURL.Asinputwe′vegivenittotheplaintextfromtheleftsideanddragitinonceagain.AndyoucanseeontherightsidetheoutputsidethatithasfoundforustheURLtothecompanyhomepage,whichwecannotonlyusetoenrichbutweactuallyneedtofindemailaddresseslinkedtothisdomain.SoasImentionedbefore,insomecases,theLinkedInapplicationispresent.Inmostcases,itisn′t.Ifitispresent,itjustmakesyourlifeabiteasierbecauseyoucandoamorespecificsearchusinganemailfinder.Ifitisn′tpresent,allwehavetoworkwithisthedomain.Sowhatwedoiswetakethedomain,whichwasht.com,whichwastheresultfromthelargelanguagemodel.Youcanseeoverhere,inputitanditreturnsusalloftheemailaddresseswhicharelinkedtoorareusingthisdomain.Youcanseetheentirelist.There′satotalofathousand.Nowthatwe′vefoundalloftheseemailaddressesthatkindofconcludesthesecondpartandallthat′sleftistoenrichthelead.Sogivethelargelanguagemodelssomeinformationaboutthecompany,writealittlepersonalizationandcleanupthecompanynameifnecessaryandthenlastlysendanemailtotheperson.Howdoweenrichthelead?Well,weenrichtheleadwiththeonlyinformationwehaveatthispoint,whichistheirwebsiteURL.SowefetchalloftheHTMLthistimeinsteadoffromtheLinkedInProvapage.Wedothisfromthecompanywebsitefromtheirhomepage.ThisisthesamecodeasI′veinputitoverhere.ItjustfilterstheHTMLandreturnsplaintextasyoucansee.Sothisiswhat′sontheirhomepage.Foranalyzingthehomepage,IjustusechatGPT40mini.Ithinkit′smorethancapableandit′sveryinexpensive.Peoplehavetoldmeaboutdeepseat,butIhaven′thadthetimetoexperimentwithit.ThisisaverygenericpromptIwrotewiththeassistanceofchatGPT,butyoucanusethisasafoundationbecauseitworksperfectlyfine.AndthenontothequestionsthatI′maskingittoanswer.SoI′maskingittoextractandorganizethefollowinginformation,testimonials,recentgrowthandsuccessstoriesandontherightsideyoucanseewhattheoutputis.Well,apparentlytherewerenotestimonialsonthehomepage.Therewassomerecentgrowthandthereweresomesuccessstories,whichismorethanenoughforustowriteapersonalization,whichwecanuseastheemailopener.Andthenonceagain,asinput,asI′veprobablyalreadymentioned,Itakeaplaintextfromtheleft.Soyoumightbewondering,whyareyoucleaningthecompanyname?Andwhatdoesthatmean?Well,insomecases,thejobapplicationpostonLinkedIncontainsthecompanyname,whichislikefollowedbylimitedorbyink,forexample,howthey′reregistered.Thethingisyouneverwanttousethatinacalledemailbecauseitdoesn′tsoundhumanatall.Iwouldneverreferencetoacompanysayingdeslaink,forexample,that′swhyweusethis.Whenthiscasehatchwasalreadycleaned,butifthatisn′tthecase,itwouldjusttakeitout.Solet′ssayLLL,shewaspresentorinkwaspresentorlimited,asIjustsaid,itwouldjustcleanthecompanynamesowecanuseacleanversionofitintheemail.Thenwe′reontothesecondtolastlargelanguagemodel.Whydon′tweneedtogetthefirstname?Well,ifyourememberbacktowherewefoundtheemailaddresses,theemailaddressescontainthefirstname,alastname,andthemainname,wewanttogivethelargelanguagemodeltheeasiestjobpossibletomakeitoutputasconsistentaspossible.That′swhyweneedthisextrasteptotakewhatwejustgot.Sowetaketheentireemailaddress,whichisonceagaininputfromtheleftside,whichthisvariableactuallytranslatesintothis,andwejustaskittoreturnthefirstname.Ifit′spresent,ifitisn′t,leavethefieldempty,becauseyou′drathersayhitosomeone,thensayhiasdumbatwhatever,becausethenyoualreadyknowthey′renotgoingtorespondtoyouremail.Andthenyoucanseetheoutputissteward,becausehisemailaddresswassteward.mechiver,sothiswasaveryeasycleanup,whichbringsusontowritingtheemail.Whilewritingtheemailmightbegivingitabitmorecreditthanitdeserves,becauseIalwaysjusttelltheLLMtofillinapre−writtentemplate.WhydoIchoosetopre−writeanemailtemplateinsteadofletchatGPTwriteeverything?That′sbecauseinmyopinion,chatGPTorclothorwhateveryouuseisn′tgoodenoughtowriteanentireemail.That′saprettybigpartofit.Theotherpartofitisthatifyou′redoingcoldoutbound,ifyou′redoingcoldemailing,orifyou′redoinganyoutreachasabusiness,youconstantlywanttoimprove.Andhowdoyouimprove?Youimprovebyswitchingupvariables.Well,ifyouconstantlylettheLLMwritetheentireemail,youcanbesurethateachandeveryemailisgoingtobecompletelydifferentfromtheonebefore.Sotherearen′treallyanymetricstotest,becausetherearen′tanyconsistenciesbetweentheemail,soyoucan′treallytestyouroffer,youcan′ttestthelayout,becauseyouhavenosayoverit,becausetheLLMisfillingthatinforyou.That′swhyIwanttotakeawaythatpoweroftheLLM,keepittoourselvesandjustletitwrite,letitfillinthevariablesorletitfillintheblanks,whichitisreallygoodat.SobeforeIgoovertheconclusionofthisentireworkflow,letmeshowyouwhattheinputwas,sotheinputwasthefirstname,thecompanyname,andtheresult.Theresultissimplywhatweextractedfromthehomepage.Andhereistheprompt,asIalreadysaid,Iwantedtofillinatemplate,usingplaceholderforpersonalization,andIjustgaveitsomenotesonthetone,whichbringsustowhatyouguyshaveopenwaitingfor,probablyistheresultofallofourhardwork,whichisafilledinemailtemplate,andI′lljustreadittoyouguysbriefly.HeyStuart,whichisthefirstnameweretrieved.AfriendmentionedHatchrecently,andI′vebeenmeetingtoreachout,soundlikeyou′remakingbigmoves.Andthenhereitisfollowedbythepersonalization,congratsontheinitiativesrelatedtodecarbonizationandengineeringsolutionsforthebetterlifecycle,bytheway,whichisprobablysomethingHatchisinvolvedwith.Well,itmustbebecauseitwasontheirwebsite.Soyou′vegotsomeSDRrollsopenandfiguredI′ddropyouanod.Thisisthebestpartoftheemailbecausetheyactuallyhavesomejobsopenbecausewe′veverifiedthem.Soweknowthey′relookingforthis.Soweknowthisemailisrelevanttothem.Andthenwejusttalksomethingaboutourselves.Irunanagencyspecializingincoldoutbound,andwecanhandleoutreachat50timessincethebaseofit,theQSDR,whichistrue.There′snohuman.Wecancompetewithaflowlikethis.Furthermore,withresponseratesconsistentlyoutperformingindustryaverages,we′vehelpedcompanieslikeBoltandLiverpoolcreateover8millioninpipeline,we′dlovetoexploreifwecoulddothesameforyou.Freeforaquickchatthisweek,cheers,Clarence.ThisisoneofthebestemailtemplatesI′veeverwritten,andthisisonewhichworkslikeacharm.Iwouldhighlysuggesttojustcopythisone,useitforyourself,andseethepositiverepliesflowin.Andletmetellyouthatusingthissystemcompletelychangedthegameforme.Usingthisexactsystem,Igrewmyagencyfrom0 a month to $35,000 in monthly profits within
just six months. And the best part of it all is because AI does all the heavy lifting. I now work
just three to four hours a day because this system handles everything. It resulted in me not having
to worry about where my next lead or my next payment is coming from because I have a consistently
lead with this constantly updating, with ready to buy Clarence who are interested in my services.
So if you’re tired of outdated methods that waste your time and bring in little to no results,
it is time to take action because there are possibilities. You can start by building this automated
workflow today and unlock a whole new level of efficiency for your business. If anything was
unclear or if you got any questions, drop them in the comments below. I’d love to help you out,
dive deeper into any part of the system you’re curious about. And hey, if you found this video helpful,
don’t forget to like, subscribe, and turn on the notification bell so you never miss out on
actionable strategies to grow your business with automation ever again. I want to thank you guys
very much for watching and I’ll see you guys on the next video. Thank you. Bye.