Affärsanalys blir snabbt rörig. En fastighet blir tio flikar, skärmdumpar från annonssajter, anteckningar i mobilen och ett ”slutligt” kalkylark som ingen litar på.
Fastighetsinvesterare märker det när de behöver agera snabbt. Portföljförvaltare fastnar i att försvara antaganden. Och fastighetsanalytiker? De lägger för många sena kvällar på att strukturera data i stället för att hitta bra affärer. Den här automatiseringen för Sheets Gmail ranking lägger in konsekventa rankingar i Google Sheets och skickar en korrekt formaterad sammanfattning via e-post.
Du får se vad arbetsflödet gör, vad du behöver för att köra det och vilka praktiska resultat du kan förvänta dig när du screenar förvärvsmöjligheter i skala.
Så fungerar automatiseringen
Hela n8n-arbetsflödet, från trigger till slutresultat:
n8n Workflow Template: Google Sheets + Gmail: ranka bostadsaffärer
flowchart LR
subgraph sg0["Schedule Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "Schedule Trigger", pos: "b", h: 48 }
n1@{ icon: "mdi:swap-vertical", form: "rounded", label: "Workflow Configuration", pos: "b", h: 48 }
n2["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Fetch Rent Rolls"]
n3["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Fetch Operating Costs"]
n4["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Fetch Utilities Data"]
n5["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Fetch Mortgage Schedules"]
n6["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/merge.svg' width='40' height='40' /></div><br/>Merge Property Data"]
n7@{ icon: "mdi:cog", form: "rounded", label: "Aggregate All Properties", pos: "b", h: 48 }
n8@{ icon: "mdi:robot", form: "rounded", label: "Rent Optimization Agent", pos: "b", h: 48 }
n9@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Model - Main", pos: "b", h: 48 }
n10@{ icon: "mdi:robot", form: "rounded", label: "Structured Output - Rent Rec..", pos: "b", h: 48 }
n11@{ icon: "mdi:wrench", form: "rounded", label: "Calculator Tool", pos: "b", h: 48 }
n12@{ icon: "mdi:wrench", form: "rounded", label: "Performance Analysis Agent T..", pos: "b", h: 48 }
n13@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Model - Performance", pos: "b", h: 48 }
n14@{ icon: "mdi:robot", form: "rounded", label: "Structured Output - Performa..", pos: "b", h: 48 }
n15@{ icon: "mdi:wrench", form: "rounded", label: "Recommendation Generator Age..", pos: "b", h: 48 }
n16@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Model - Recommendations", pos: "b", h: 48 }
n17@{ icon: "mdi:robot", form: "rounded", label: "Structured Output - Recommen..", pos: "b", h: 48 }
n18["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Calculate Performance Metrics"]
n19@{ icon: "mdi:swap-vertical", form: "rounded", label: "Format Dashboard Update", pos: "b", h: 48 }
n20["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Update Financial Dashboard"]
n21["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Fetch Market Data"]
n22@{ icon: "mdi:cog", form: "rounded", label: "Summarize Market Trends", pos: "b", h: 48 }
n23@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Route by Property Type", pos: "b", h: 48 }
n24@{ icon: "mdi:swap-vertical", form: "rounded", label: "Split Recommendations by Pro..", pos: "b", h: 48 }
n25["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Calculate ROI Projections"]
n26["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Generate Financial Reports"]
n27@{ icon: "mdi:wrench", form: "rounded", label: "Market Analysis Agent Tool", pos: "b", h: 48 }
n28@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Model - Market", pos: "b", h: 48 }
n29@{ icon: "mdi:robot", form: "rounded", label: "Structured Output - Market A..", pos: "b", h: 48 }
n30@{ icon: "mdi:wrench", form: "rounded", label: "Risk Assessment Workflow Tool", pos: "b", h: 48 }
n31@{ icon: "mdi:cog", form: "rounded", label: "Aggregate Portfolio Metrics", pos: "b", h: 48 }
n32@{ icon: "mdi:swap-vertical", form: "rounded", label: "Enrich with Market Context", pos: "b", h: 48 }
n33@{ icon: "mdi:swap-vertical", form: "rounded", label: "Format Residential Report", pos: "b", h: 48 }
n34@{ icon: "mdi:swap-vertical", form: "rounded", label: "Format Commercial Report", pos: "b", h: 48 }
n35@{ icon: "mdi:swap-vertical", form: "rounded", label: "Format Mixed-Use Report", pos: "b", h: 48 }
n36@{ icon: "mdi:message-outline", form: "rounded", label: "Send a message", pos: "b", h: 48 }
n11 -.-> n8
n2 --> n6
n0 --> n1
n21 --> n22
n6 --> n7
n9 -.-> n8
n4 --> n6
n3 --> n6
n28 -.-> n27
n23 --> n33
n23 --> n34
n23 --> n35
n1 --> n2
n1 --> n3
n1 --> n4
n1 --> n5
n1 --> n21
n19 --> n20
n35 --> n25
n8 --> n18
n8 --> n24
n22 --> n32
n7 --> n8
n7 --> n32
n5 --> n6
n34 --> n25
n25 --> n26
n33 --> n25
n32 --> n8
n26 --> n18
n26 --> n31
n27 -.-> n8
n13 -.-> n12
n31 --> n36
n18 --> n19
n30 -.-> n8
n16 -.-> n15
n12 -.-> n8
n24 --> n23
n15 -.-> n8
n29 -.-> n27
n17 -.-> n15
n14 -.-> n12
n10 -.-> n8
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n0 trigger
class n8,n10,n14,n17,n29 ai
class n9,n13,n16,n28 aiModel
class n11,n12,n15,n27,n30 ai
class n23 decision
class n2,n3,n4,n5,n20,n21 api
class n18,n25,n26 code
classDef customIcon fill:none,stroke:none
class n2,n3,n4,n5,n6,n18,n20,n21,n25,n26 customIcon
Problemet: screening av fastighetsaffärer är långsam och inkonsekvent
Att screena fastigheter låter enkelt tills du gör det på riktigt. Hyresunderlag kommer från ett ställe, kostnader från ett annat, marknadsdata från ett tredje och lånevillkor från den som senast svarade på ditt mejl. Sedan försöker du få ihop allt i ett kalkylark samtidigt som du bedömer områdetrender och risk. Ett litet misstag kan vända en ”köp” till en ”avstå”, eller ännu värre, få en svag affär att se fantastisk ut. Och ärligt talat är den större frågan mental belastning: när varje analytiker använder sin egen metod blir era rankingar en diskussion i stället för ett beslut.
Det adderas snabbt. Här är var det faller isär i det dagliga arbetet.
- Att hämta in fastighetsdata från flera källor tar några timmar per affär, och det blir värre när du jämför fem alternativ samtidigt.
- Manuell inmatning i kalkylark bjuder in småfel som är svåra att upptäcka senare, särskilt när siffror kopieras mellan ark.
- Marknadskontexten blir ofta ”magkänsla” eftersom researchen är utspridd över webbläsarflikar och anteckningar.
- Rankingarna ändras beroende på vem som gjorde analysen, så teamet tar samma diskussioner varje vecka.
Lösningen: automatiserad fastighetsanalys, rankad i Sheets och skickad via Gmail
Det här arbetsflödet gör screening av affärer till ett repeterbart system som du kan köra enligt schema. Det börjar med att hämta in fastighetsdata (detaljer från hyresunderlag, driftskostnader, förbrukning för el/vatten, lånetidslinjer och marknadsstatistik) från dina anslutna datakällor via HTTP-anrop. Därefter kombineras allt till en normaliserad datamängd, så att varje fastighet får samma ”form” på informationen innan några beslut tas. Sedan utvärderar en uppsättning specialiserade AI-agenter resultat, tar fram rekommendationer, sammanfattar marknadstrender och lägger till riskmedveten kontext. Till sist skriver arbetsflödet data som är redo för dashboard till Google Sheets och skickar en tydlig Gmail-rapport med rankingar och KPI:er på portföljnivå, så att du får en kör/stoppa-bild utan att behöva formatera om något.
Arbetsflödet startar enligt schema (eller kan anpassas till webhook-/Telegram-trigger om du föredrar). Det sammanfogar fastighetsdata, routar varje fastighet efter kategori (bostad, kommersiellt, blandad användning) och beräknar ROI-prognoser och flaggor. Slutresultatet är en rankad lista i Google Sheets plus ett mejl som du kan vidarebefordra till partners på några sekunder.
Det du får: automatisering vs. resultat
| Vad det här arbetsflödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du screenar 10 potentiella förvärv varje vecka. Manuellt kanske du lägger cirka 30 minuter på att samla in hyresunderlag och kostnadsdata, ytterligare 20 minuter på att hämta marknadsstatistik och 20 minuter på att bygga en jämförbar modell per fastighet. Det är ungefär 70 minuter per objekt, eller cirka 12 timmar i veckan innan ni ens börjar diskutera risk och rankingar. Med det här arbetsflödet startar du en schemalagd körning, väntar ett par timmar på att agenter och prognoser ska bli klara och granskar de rankade resultaten i Google Sheets plus en Gmail-sammanfattning. Du lägger främst tid på beslut, inte på att sätta ihop underlaget.
Det här behöver du
- n8n-instans (prova n8n Cloud gratis)
- Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
- Google Sheets för rankningsdashboard och uppföljning.
- Gmail för att leverera investeringsrapporter till mottagare.
- OpenAI API-nyckel (hämta den i OpenAI API-dashboarden).
Kunskapsnivå: Medel. Du kopplar konton, lägger in API-nycklar och bekräftar dina inställningar för kalkylark/rapport.
Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
En schemalagd körning drar igång allt. n8n startar arbetsflödet enligt din valda takt (dagligen, veckovis eller ”varje måndag kl 07:00”). Vill du köra det på beställning kan du senare anpassa det till en webhook eller en Telegram-trigger.
Fastighets- och marknadsdata samlas in och kombineras. Arbetsflödet hämtar hyresunderlag, driftskostnader, förbrukningsdata, lånetidslinjer och marknadsstatistik via HTTP-anrop och sammanfogar dem till en enda portföljdatamängd som faktiskt går att använda.
AI-agenter utvärderar prestanda och skriver rekommendationer. En orkestrerare koordinerar analys för ROI och kassaflöde, flaggar risk, sammanfattar marknadstrender och genererar rankade rekommendationer. Det finns också logik för att routa fastigheter efter kategori (bostad, kommersiellt, blandad användning) så att sammanfattningen passar tillgångstypen.
Resultaten hamnar i Sheets och skickas ut via e-post. Din Google Sheets-dashboard uppdateras med rankingar och KPI:er, och sedan skickar Gmail en lättläst rapport så att du snabbt kan fatta kör/stoppa-beslut.
Du kan enkelt justera tröskelvärdena för investeringskriterier så att de matchar din buy box utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: konfigurera den schemalagda triggern
Ställ in det dagliga schemat och starta initieringen av arbetsflödet.
- Lägg till och öppna Scheduled Run Starter.
- Ställ in schemaregeln så att den triggar vid triggerAtHour
6. - Koppla Scheduled Run Starter till Initialize Workflow Settings.
Steg 2: anslut portföljens datakällor
Definiera API-endpoints och hämta källdata parallellt innan ni slår ihop den.
- I Initialize Workflow Settings fyller ni i alla platshållarvärden som rentRollsApiUrl, operatingCostsApiUrl, utilitiesApiUrl, mortgageApiUrl, marketDataApiUrl och dashboardApiUrl.
- Låt performanceThreshold vara inställd på
0.85om ni inte vill ha en annan känslighet för aviseringar. - Bekräfta att Initialize Workflow Settings skickar utdata till Retrieve Rent Roll Data, Retrieve Operating Expenses, Retrieve Utility Usage, Retrieve Mortgage Timelines och Retrieve Market Statistics parallellt.
- I varje HTTP request-nod ställer ni in URL till motsvarande uttryck, till exempel använder Retrieve Rent Roll Data
{{ $('Initialize Workflow Settings').first().json.rentRollsApiUrl }}. - I Combine Property Inputs ställer ni in Mode till
combine, Combine By tillcombineByPositionoch Number Inputs till4. - Koppla Combine Property Inputs till Aggregate Portfolio Items och ställ in Aggregate Portfolio Items till aggregateAllItemData med Destination Field Name
allProperties.
<__PLACEHOLDER_VALUE__...> innan ni testar, annars kommer HTTP-anropen att misslyckas.Steg 3: sätt upp orkestreringen för AI-baserad hyresoptimering
Konfigurera AI-agenten, dess modeller och verktyg för att generera hyresjusteringar och prestandaflaggor.
- Öppna Rent Optimization Orchestrator och ställ in Text till
{{ $json.allProperties }}. - Koppla Primary OpenAI Chat Model som språkmodell för Rent Optimization Orchestrator. Inloggningsuppgift krävs: anslut era
openAiApi-inloggningsuppgifter. - Säkerställ att Parse Rent Recommendation Output är ansluten som utdata-parser för Rent Optimization Orchestrator med det manuella schemat som definieras i noden.
- Anslut AI-verktyg till Rent Optimization Orchestrator: Performance Analysis Tool, Recommendation Builder Tool, Market Insights Tool, Computation Helper Tool och Run Sub-Workflow (Configure Required).
- För AI-undernoder som Parse Performance Metrics, Parse Recommendation Output och Parse Market Insights, lägger ni till inloggningsuppgifter i respektive föräldranods modeller (t.ex. Performance OpenAI Model, Recommendations OpenAI Model, Market OpenAI Model), inte i parser-noderna.
- Inloggningsuppgift krävs: anslut era
openAiApi-inloggningsuppgifter i Performance OpenAI Model, Recommendations OpenAI Model och Market OpenAI Model. - I Run Sub-Workflow (Configure Required) ställer ni in workflowId till ert arbetsflödes-ID för riskbedömning (detta fält är för närvarande tomt).
Steg 4: konfigurera marknadskontext och rapporteringsrutter
Sammanfatta marknadsdata och routa rekommendationer till rapporter för bostäder, kommersiellt och blandad användning.
- I Condense Market Trends behåller ni Output Format som
singleItemoch verifierar att fälten sammanfattaraverageRent,medianRent,vacancyRateochmarketGrowth. - I Add Market Context mappar ni fält till uttryck som
{{ $('Condense Market Trends').first().json.averageRent }}och låter Include Other Fields vara aktiverat. - Aggregate Portfolio Items skickar utdata till både Rent Optimization Orchestrator och Add Market Context parallellt.
- Rent Optimization Orchestrator skickar utdata till både Compute Performance Flags och Split Recommendations List parallellt.
- I Split Recommendations List ställer ni in Field To Split Out till
rentAdjustmentsoch routar sedan till Route by Property Category. - I Route by Property Category bekräftar ni att reglerna jämför
{{ $json.propertyType }}motresidential,commercialochmixed-use. - Konfigurera varje formatterare: Format Residential Summary med reportType
Residential Property Analysis, Format Commercial Summary med reportTypeCommercial Property Analysisoch Format Mixed-Use Summary med reportTypeMixed-Use Property Analysis, där alla använder analysisDate{{ $now.toISO() }}.
residential, commercial eller mixed-use, uppdaterar ni switch-villkoren så att de matchar era källvärden.Steg 5: bygg ROI-prognoser och KPI-sammanfattningar
Beräkna ROI, generera rapporter och aggregera portfölj-KPI:er för leverans via e-post.
- I Estimate ROI Projections behåller ni Mode som
runOnceForEachItemför att beräkna prognoser per enhet. - Skicka alla sammanfattningar per fastighetskategori till Estimate ROI Projections och därefter till Build Financial Reports.
- Verifiera att Build Financial Reports behåller roiProjection och genererar strängen summary i JavaScript-koden.
- Build Financial Reports skickar utdata till både Compute Performance Flags och Aggregate Portfolio KPIs parallellt.
- I Aggregate Portfolio KPIs behåller ni Output Format som
singleItemoch verifierar summering avroiProjection.roiochroiProjection.additionalRevenue. - Koppla Aggregate Portfolio KPIs till Send Report Email. Inloggningsuppgift krävs: anslut era
gmailOAuth2-inloggningsuppgifter.
roiProjection och priority före aggregeringen.Steg 6: skicka uppdateringar till dashboarden
Transformera prestandaflaggor till dashboard-payload och posta uppdateringar.
- I Compute Performance Flags behåller ni tröskellogiken som flaggar
performanceScore < 0.85. - I Prepare Dashboard Payload mappar ni fält med uttryck som
{{ $json.propertyId }},{{ $json.performanceScore }}och{{ $json.timestamp }}. - I Post Dashboard Update ställer ni in Method till
POST, URL till{{ $('Initialize Workflow Settings').first().json.dashboardApiUrl }}och JSON Body till{{ $json }}.
Steg 7: testa och aktivera ert arbetsflöde
Kör en manuell exekvering för att validera datapipelinen och AI-utdata innan ni går live.
- Klicka Execute Workflow och bekräfta att Initialize Workflow Settings triggar alla fem noderna för datahämtning parallellt.
- Verifiera att Combine Property Inputs slår ihop fyra indata och att Aggregate Portfolio Items returnerar arrayen
allProperties. - Kontrollera att Rent Optimization Orchestrator returnerar strukturerad utdata som parsas av Parse Rent Recommendation Output, och att Split Recommendations List routar objekt genom Route by Property Category.
- Bekräfta att Post Dashboard Update tar emot en payload med
propertyId,performanceScoreochlastUpdated, och att Send Report Email skickar KPI-sammanfattningen. - När resultaten ser korrekta ut, växla arbetsflödet till Active för att aktivera schemalagda körningar från Scheduled Run Starter.
Vanliga fallgropar
- Google Sheets-inloggningar kan löpa ut eller kräva specifika behörigheter. Om det skapar fel, kontrollera först n8n-skärmen för Credentials och delningsinställningarna för målarket.
- Om du använder Wait-noder eller extern bearbetning kan timing variera. Öka väntetiden om efterföljande steg misslyckas eftersom data inte har kommit fram ännu.
- OpenAI-prompter är generiska från början. Lägg in dina buy box-regler och varumärkeston tidigt, annars kommer du att behöva redigera varje rekommendation senare.
Vanliga frågor
Räkna med cirka en timme om dina API:er och Google-konton är redo.
Nej. Du klistrar mest in API-nycklar, kopplar Google Sheets/Gmail och justerar några kriteriefält.
Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver också räkna med OpenAI API-användning (ofta några cent per körning) samt eventuella prenumerationer på fastighetsdata-API:er som du använder.
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, och det bör du. De flesta team justerar steget för arbetsflödesinställningar (initieringsfälten) för att sätta mål för direktavkastning (cap rate), cash-on-cash, antaganden om vakans och minsta DSCR, och förfinar sedan prompterna till AI-agenterna så att rekommendationerna matchar era exakta kriterier. Du kan också justera routningen per fastighetskategori så att bostads- och kommersiella affärer får olika poängregler, och ändra vad som skrivs till Google Sheets (extra kolumner för dina egna nyckeltal). Om du redan följer affärer i Excel kan du behålla det och synka slutresultaten till din befintliga modell.
Oftast beror det på att Google-auktoriseringen har gått ut eller att kalkylarkets ID har ändrats. Återanslut Google Sheets i n8n Credentials och bekräfta sedan att målfilen är delad med samma Google-konto. Om det bara misslyckas vid vissa körningar, kontrollera rate limits eller för stora batch-skrivningar när du uppdaterar många fastigheter samtidigt.
Många, så länge dina API:er och din server hänger med.
Ofta, ja, eftersom det här arbetsflödet inte bara är ”flytta data från A till B”. Det kedjar flera anrop, slår ihop datamängder, routar efter fastighetstyp och kör AI-analys med förgreningslogik, vilket är där Zapier och Make kan bli dyrt eller klumpigt. n8n ger dig också self-hosted-alternativet, vilket spelar roll när du vill köra fler exekveringar utan att ständigt hålla koll på task-limiter. Å andra sidan, om ditt use case bara är ”ny rad i Sheets skickar ett mejl”, är Zapier enklare. Vill du ha en second opinion, Prata med en automationsexpert så kvalitetssäkrar vi vilken väg som är bäst.
När detta väl rullar dyker rankingarna upp i Sheets och rapporten landar i inkorgen utan att någon jagar indata. Du fattar beslut snabbare och får en process som teamet kan upprepa nästa vecka utan att uppfinna den på nytt.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.