Behöver ert företag hjälp med att implementera AI? Kontakta oss och få prisoffert här →
AI Skolan
januari 22, 2026

Google Sheets + Gmail: fånga IPA-storleksbloat snabbt

Rickard Andersson Partner, Nodenordic.se

Din iOS-apps storlek exploderar sällan på en gång. Den smyger sig upp. Ett nytt SDK, några bilder, en “snabb” funktion – och plötsligt är din IPA 40 MB tyngre och ingen kan säga exakt när det hände.

iOS-utvecklare känner av det här under releaseveckan. DevOps-team dras in när nedladdningar börjar tajma ut. Produktteamet märker det senare, när ni redan diskuterar “storleksbudgetar”. Den här automatiseringen för IPA-storleksvarningar gör att du ligger steget före.

Du får se hur workflowet loggar varje builds storlek i Google Sheets, jämför den med senast kända build och mejlar dig bara när förändringen faktiskt är värd din uppmärksamhet.

Så fungerar automatiseringen

Hela n8n-workflowet, från trigger till slutresultat:

n8n Workflow Template: Google Sheets + Gmail: fånga IPA-storleksbloat snabbt

Problemet: uppblåst IPA-storlek upptäcks för sent

Att spåra IPA-storlek låter enkelt tills du faktiskt försöker göra det konsekvent. Någon laddar ner en artifact, kollar filstorleken, lämnar en notis i Slack och sedan… ingenting. En vecka senare är releasekandidaten enorm, uppladdningen till App Store tar längre tid och ni gissar vilken merge som orsakade svällningen. Än värre: manuella kontroller är lätta att hoppa över när det är mycket, så din “historik” får luckor precis när du behöver den som mest. Och om du underhåller flera appar eller varianter (dev/staging/prod) blir den mentala belastningen en tyst skatt du betalar varje dag.

Det eskalerar snabbt. Här är var det brukar fallera i riktiga team.

  • Artifact-storlek kontrolleras bara när någon kommer ihåg det, vilket betyder att du upptäcker problem efter att de hunnit byggas på.
  • “Historiken” finns i utspridda meddelanden och gamla nedladdningar, så att jämföra dagens build med förra veckans blir detektivarbete.
  • Små förändringar slinker igenom, och en dag ligger ni över en storleksbudget och alla är stressade.
  • Om du larmar vid varje körning slutar teamet att läsa larmen helt.

Lösningen: daglig IPA-loggning + smarta Gmail-varningar

Det här workflowet körs på ett dagligt schema (standard är 09:00 UTC) och kontrollerar IPA-filernas storlek för en app eller flera appar som du definierar. För varje konfigurerad IPA-nedladdnings-URL hämtar det filen, beräknar storlek i byte/KB/MB och skriver en tidsstämplad rad i en Google Sheet-flik som heter “IPA Size History”. Sedan jämför det den senaste mätningen med den föregående och avgör om förändringen är meningsfull. Om storleken ökat eller minskat över din tröskel (standard är cirka 10 %) skickar det en formaterad Gmail-varning till rätt personer. Och om du vill testa säkert först låter DRY_RUN-växeln dig köra allt utan att mejla någon.

Workflowet startar med en schematrigger och en enkel konfigurationskarta för dina appar. Det laddar ner varje IPA, loggar mätningen i Google Sheets och gör först därefter trendanalys så att du alltid behåller den råa historiken. Till sist styr en If-villkor noden för notiser så att inkorgen förblir användbar.

Vad du får: automatisering vs. resultat

Exempel: så här ser det ut

Säg att du spårar 3 iOS-appar och att någon varje morgon laddar ner IPA:n, kontrollerar filstorleken och uppdaterar ett ark. Även om det bara tar ungefär 10 minuter per app landar du på cirka 30 minuter per dag, vilket är ungefär 2,5 timmar i veckan. Med det här workflowet lägger du kanske 5 minuter en gång på att lägga till apparna i APP_CONFIGS, sedan kör det utan tillsyn. Du får bara ett mejl när något rör sig över tröskeln, vilket oftast innebär att du reagerar på verklig svällning i stället för att “gissa och hoppas”.

Det här behöver du

  • n8n-instans (prova n8n Cloud gratis)
  • Självhosting om du föredrar det (Hostinger fungerar bra)
  • Google Sheets för att lagra historiken över IPA-storlek.
  • Gmail för att skicka varningar om storleksförändringar.
  • Google OAuth-uppgifter (skapa dem i Google Cloud Console).

Kunskapsnivå: Nybörjare. Du klistrar in ett Sheet-ID, lägger till app-URL:er och kopplar Google-konton.

Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).

Så fungerar det

Ett dagligt schema startar allt. Vid tiden du väljer (mallen använder 09:00 UTC) startar n8n en körning så att du inte är beroende av att någon blir påmind.

Din applista läses från ett enkelt konfigurationsblock. Du definierar varje övervakad app med namn, versions-/build-etikett och en direkt URL för IPA-nedladdning, och sedan loopar n8n igenom listan.

IPA:n laddas ner och mäts. En HTTP-request hämtar binärfilen, och sedan beräknar ett kodsteg storlek i byte, KB och MB och stämplar raden med aktuellt datum/tid.

Google Sheets blir din “source of truth”. Workflowet lägger till en ny rad i fliken “IPA Size History”, jämför den aktuella raden med föregående build och använder ett If-villkor för att avgöra om Gmail ska skicka en varning.

Du kan enkelt justera larmtrösklar så att de matchar din storleksbudget utifrån dina behov. Se den fullständiga implementeringsguiden nedan för anpassningsalternativ.

Steg-för-steg-guide för implementering

Steg 1: konfigurera schematriggern

Ställ in arbetsflödet så att det körs dagligen med det inbyggda schemat och skicka in initiala appinställningar i flödet.

  1. Lägg till noden Daily Size Trigger och ställ in schemaregeln så att den körs varje dag.
  2. Ställ in cron-uttrycket till 0 0 0 * * * för att trigga vid midnatt varje dag.
  3. Koppla Daily Size Trigger till App Settings Map.

Steg 2: koppla appinställningar och ladda ner IPA-filen

Definiera appens metadata och ladda ner IPA-filen för att beräkna dess storlek.

  1. I App Settings Map ställer ni in app_name till APP_NAME, version till 1.0.0, build_number till 1 och ipa_url till ENTER_IPA_FILE_DOWNLOAD_URL.
  2. Öppna Retrieve IPA Package och ställ in URL till ={{ $json.ipa_url }}.
  3. I Retrieve IPA Package ställer ni in svarsformatet till File för att ladda ner IPA-filen som binärdata.
  4. Koppla App Settings MapRetrieve IPA Package.

Om nedladdnings-URL:en för IPA-filen kräver autentisering, uppdatera Retrieve IPA Package så att den inkluderar headers eller query-parametrar vid behov.

Steg 3: konfigurera filstorleksbearbetning och trendanalys

Beräkna filstorleksmått från den binära IPA-filen och utvärdera storlekströsklar för att avgöra larmstatus.

  1. I Compute File Metrics behåller ni den angivna JavaScript-koden för att beräkna file_size_bytes, file_size_kb och file_size_mb.
  2. Säkerställ att Retrieve IPA Package är kopplad till Compute File Metrics.
  3. I Evaluate Size Patterns behåller ni tröskellogiken eller justerar konstanterna (SMALL_APP, MEDIUM_APP, LARGE_APP) så att de matchar era förväntningar på appstorlek.
  4. Koppla Append Sheet RecordEvaluate Size Patterns för att utvärdera trender efter loggning.

⚠️ Vanlig fallgrop: Om IPA-filen inte laddas ner som binärdata kommer Compute File Metrics att ge nollstorlekar. Bekräfta att svarsformatet är inställt på fil.

Steg 4: koppla loggning till Google Sheets

Lägg till varje storleksmätning i ert spårningskalkylark.

  1. Lägg till Append Sheet Record och ställ in Operation till append.
  2. Ställ in Document ID till ENTER_SHEET_ID och Sheet Name till ENTER_SHEET_NAME.
  3. Inloggningsuppgifter krävs: Koppla era googleSheetsOAuth2Api-inloggningsuppgifter.
  4. Koppla Compute File MetricsAppend Sheet Record.

Steg 5: konfigurera larmlogik och e-postaviseringar

Filtrera fram larm och skicka e-post när storlekströsklar överskrids.

  1. I Alert Condition Check ställer ni in villkoret till notEquals med Left Value ={{ $json.trend_status }} och Right Value STABLE.
  2. Koppla Evaluate Size PatternsAlert Condition Check.
  3. I Dispatch Alert Email ställer ni in Send To till [YOUR_EMAIL].
  4. Ställ in Subject till =IPA Size Alert: {{ $json['App Name'] }} - {{ $json.trend_status }}.
  5. Ställ in Message till =🚨 IPA Size Alert App: {{ $json['App Name'] }} Current Size: {{ $json['Size(Bytes)'] }} MB Previous Size: {{ $json['Size(Bytes)'] }} MB Trend: {{ $json.trend_status }} Time: {{ new Date().toLocaleString() }} This is an automated alert from your IPA Size Tracker..
  6. Inloggningsuppgifter krävs: Koppla era gmailOAuth2-inloggningsuppgifter.
  7. Koppla Alert Condition CheckDispatch Alert Email.

⚠️ Vanlig fallgrop: E-postmallen refererar till $json['App Name'] och $json['Size(Bytes)']. Säkerställ att er sheet-mappning eller kod ger ut exakt de nycklarna, eller uppdatera uttrycken så att de matchar app_name och file_size_mb.

Steg 6: testa och aktivera ert arbetsflöde

Kör ett manuellt test för att bekräfta att IPA-nedladdningen, loggning i sheet och larmvillkoren fungerar som förväntat, och aktivera sedan för daglig övervakning.

  1. Klicka på Execute Workflow för att köra ett manuellt test från Daily Size Trigger.
  2. Verifiera att Append Sheet Record lägger till en ny rad med filstorleksmått.
  3. Om storleken överskrider trösklarna, bekräfta att Dispatch Alert Email skickar larmmeddelandet.
  4. När allt är verifierat, växla arbetsflödet till Active för att möjliggöra daglig körning.
🔒

Lås upp fullständig steg-för-steg-guide

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Google Sheets-uppgifter kan gå ut eller kräva specifika behörigheter. Om något slutar fungera, kontrollera först n8n:s credential-koppling och åtkomsten till målarket.
  • Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
  • Gmail-sändning kan misslyckas om 2FA är aktiverat utan app-lösenord, eller om din “From”-adress inte matchar det autentiserade kontot. Kontrollera Gmails säkerhetsinställningar och avsändarkonfigurationen i workflowet.

Vanliga frågor

Hur lång tid tar det att sätta upp den här automatiseringen för IPA-storleksvarningar?

Cirka 30 minuter om dina Google-konton är redo.

Behöver jag kunna koda för att automatisera IPA-storleksvarningar?

Nej. Du kopplar främst Google-konton och klistrar in ditt Sheet-ID och dina IPA-URL:er.

Är n8n gratis att använda för det här workflowet för IPA-storleksvarningar?

Ja. n8n har ett gratis alternativ för självhosting 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 in eventuella lagrings-/bandbreddskostnader för att hosta och ladda ner stora IPA-filer.

Var kan jag hosta n8n för att köra den här automatiseringen?

Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller självhosting på en VPS. För självhosting är Hostinger VPS prisvärd och hanterar n8n bra. Självhosting ger obegränsade körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här workflowet för IPA-storleksvarningar för flera appar och olika trösklar?

Ja, och det är den del som de flesta team justerar först. Lägg till fler poster i APP_CONFIGS-arrayen i noden “App Settings Map” för att övervaka flera appar eller miljöer. Justera sedan SIZE_INCREASE_THRESHOLD, SIZE_DECREASE_THRESHOLD och LARGE_APP_WARNING så att de matchar er interna storleksbudget. Du kan också redigera Gmails ämnesrad/brödtext för att inkludera variabler som appnamn, aktuell storlek, tidigare storlek och procentuell förändring så att varningen läses som en minirapport.

Varför misslyckas min Gmail-anslutning i det här workflowet?

För det mesta handlar det om autentisering. Om Gmail-kontot har 2FA aktiverat kan du behöva ett app-lösenord, och avsändaradressen bör matcha vad Gmail tillåter att du skickar från. Bekräfta också att n8n-credential fortfarande är ansluten och inte har återkallats i dina Google-säkerhetsinställningar.

Hur många IPA-filer kan den här automatiseringen för IPA-storleksvarningar hantera?

Dussintals per dag är vanligt, så länge din server och din nedladdningsbandbredd hänger med.

Är den här automatiseringen för IPA-storleksvarningar bättre än att använda Zapier eller Make?

Ofta, ja, eftersom den här uppgiften innebär att ladda ner en stor binärfil, beräkna mätvärden, hålla en strukturerad historiktabell och fatta villkorade beslut baserat på tidigare körningar. n8n är bekvämt med den typen av “riktigt workflow”, särskilt om du kör självhostat och inte vill betala per körning medan du itererar. Zapier och Make kan fungera, men hantering av stora filer och fler-stegslogik kan bli klumpigt eller dyrt. Om ditt behov bara är “logga en siffra någonstans” kan de verktygen vara tillräckliga. Om du är osäker, prata med en automationsexpert och få en snabb rekommendation.

När det här väl rullar slutar storlekssvällning att vara en överraskning. Du får en strukturerad historik i Sheets, en lugn inkorg och en snabbare väg till “vad ändrades?” när IPA:n plötsligt sticker iväg.

Kontakta oss

Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.

×

Använd mall

Få direkt tillgång till denna n8n-arbetsflödes JSON-fil

Få prisoffert redan idag!
Få prisoffert redan idag!

Berätta vad ni behöver hjälp med så hör vi av oss inom en arbetsdag!

Få prisoffert redan idag!
Få prisoffert redan idag!

Berätta vad ni behöver hjälp med så hör vi av oss inom en arbetsdag!

Launch login modal Launch register modal