E-Mail-Adressen aus Gmail in eine Tabelle exportieren (4 Wege)

8apps-Team·

Gmail hat keinen Button zum Exportieren von Adressen. Hier sind die vier Wege, die funktionieren – Weitere Kontakte, Kontakte-Export, Takeout und Apps Script.

Gmail findet exakt die richtigen Nachrichten. Google kann alles exportieren, was dir gehört. Nichts verbindet die beiden.

Es gibt nirgends in Gmail einen Button "diese Suchergebnisse auswählen, Absender in eine Tabelle exportieren". Das ist der ehrliche Ausgangspunkt, und deshalb wird diese Frage so oft gestellt.

Die Frage lautet also nicht wie drücke ich den Button. Sie lautet: welcher von vier Umwegen passt zu dem, was du tatsächlich vorhast.

WegGut fürKostet dich
Weitere KontakteAlle, denen du je geschrieben hastDrei Klicks, aber überhaupt keine Filterung
Kontakte-ExportEine saubere CSV gespeicherter KontakteNur Kontakte, keine Korrespondenzpartner
Google TakeoutEin vollständiges Postfach-ArchivEine Archivdatei, keine Liste
Apps ScriptAdressen aus einer bestimmten SucheEinen Nachmittag, und es läuft in die Zeitüberschreitung
Ein Add-onDasselbe, ohne den NachmittagKostenlose Tarife sind gedeckelt

Arbeite diese Tabelle der Reihe nach ab. Die meisten, die mit dieser Frage hier landen, suchen Zeile eins und haben nie davon gehört.


1. Weitere Kontakte – die kostenlose Antwort, die kaum jemand findet

Wenn du jemandem geschrieben und die Person nie gespeichert hast, hat Google sie vermutlich längst für dich gespeichert. Google Kontakte nennt das Weitere Kontakte, und es ist mit Abstand der schnellste Weg.

  1. Gehe auf contacts.google.com
  2. Klicke in der linken Seitenleiste auf Weitere Kontakte

Googles eigene Beschreibung: "If you email someone but you haven't added them as a contact, Google Contacts automatically saves their email address in your 'Other contacts' group."

Zwei Dinge, die niemand erwähnt.

Es gibt das nur am Desktop. Google sagt klar, dass du Weitere Kontakte auf iPhone, iPad oder Android überhaupt nicht siehst.

Und es lässt sich abschalten – an zwei getrennten Stellen. In deinem Google-Konto unter Personen und Freigaben → Kontakte → Aus Interaktionen gespeicherte Kontaktdaten und in Gmail unter Einstellungen → Kontakte für die automatische Vervollständigung erstellen, wo eine der Optionen "Ich füge Kontakte selbst hinzu" lautet.

Ist Weitere Kontakte leer, liegt es an einer dieser beiden Einstellungen. Das lohnt sich zu prüfen, bevor du die Funktion für kaputt hältst.

Der Haken: Weitere Kontakte ist alles, in einem einzigen undifferenzierten Haufen. Keine Filterung, kein Zeitraum, kein "nur Personen aus diesem Label". Willst du einige deiner Korrespondenzpartner statt aller, lies weiter.


2. Kontakte als CSV exportieren

Sobald die gewünschten Personen tatsächlich in Kontakte stehen:

  1. Gehe auf contacts.google.com
  2. Hake die gewünschten Kontakte an. Für alle: einen beliebigen Kontakt anhaken, dann oben links Auswahlaktionen → Alle
  3. Oben rechts Weitere Aktionen → Exportieren
  4. Wähle Google CSV
  5. Klicke auf Exportieren

Diese CSV öffnet sich direkt in Google Tabellen oder Excel.

Die Einschränkung ist real, und es ist dieselbe wie oben. Exportiert werden Kontaktdatensätze. Was in deiner Mail steht, weiß dieser Export nicht – er kann also "alle, denen ich in den letzten sechs Monaten unter label:kunden geschrieben habe" nicht beantworten. Kontakte und Gmail sind getrennte Produkte, die sich zufällig ein Konto teilen.


3. Google Takeout – der Weg, der richtig klingt und es nicht ist

Takeout auf takeout.google.com exportiert Gmail in drei Schritten: Daten auswählen → Archiv anpassen → Archiv erhalten. Zurück kommen Nachrichteninhalte, Header und Anhänge – das ganze Postfach, in einem Mail-Archivformat, das für den Import in ein anderes Mailprogramm gebaut ist.

Als Sicherung ist das wirklich gut. Als Adressliste ist es schwach:

  • Keine Spaltenstruktur. Es ist keine Tabelle und wird auch keine. Adressen herauszubekommen heißt, das Archiv selbst zu parsen.
  • Keine Entdopplung. Ein Kontakt, der in 40 Threads vorkommt, kommt 40-mal vor.
  • Keine echte Eingrenzung. Du kannst wählen, welche Labels enthalten sind, aber nicht "nur die letzten sechs Monate" oder "nur von diesem Absender".
  • Nicht sofort. Google merkt an, der Export "could take from a few minutes to a few days", je nach Kontogröße. Verschlüsselte Nachrichten bleiben verschlüsselt.

Takeout ist das richtige Werkzeug, um ein Postfach zu sichern oder umzuziehen. Für den Aufbau einer Liste ist es das falsche.


4. Apps Script – volle Kontrolle und eine Sechs-Minuten-Wand

Das ist der Selbermach-Weg und der erste, der wirklich zur Aufgabe passt. Der Gmail-Dienst in Apps Script gibt dir alles Nötige: deine Mail durchsuchen, die passenden Threads durchlaufen, die Felder From, To und Cc jeder Nachricht auslesen, die Ergebnisse in eine Tabelle schreiben.

Die Eingrenzung passiert in der Suchzeichenfolge – und dieselbe Zeichenfolge funktioniert im Gmail-Suchfeld, in Apps Script und in der Gmail API, du lernst sie also nur ein einziges Mal:

label:kunden newer_than:6m has:attachment

Die Operatoren, die man kennen sollte

OperatorWas er tutBeispiel
label:Grenzt auf ein Gmail-Label einlabel:kunden
from:Ein Absender oder eine ganze Domainfrom:@acme.com
to:Nachrichten an eine Adresseto:vertrieb@deinunternehmen.de
cc:Nachrichten, bei denen eine Adresse in Kopie standcc:me
newer_than:Relative Aktualitätnewer_than:6m
older_than:Alles vor einem Zeitpunktolder_than:2y
after: / before:Absolute Datumsgrenzenafter:2026/01/01
has:attachmentNur Nachrichten mit Dateianhanghas:attachment
list:Eine Verteilerlisten-Adresse-list:news@example.com
category:Eine von Gmails Posteingangs-Kategoriencategory:primary

list: ist der unterschätzte Operator. Mit einem Minus davor ist er der saubere Weg, einen Newsletter loszuwerden, den du versehentlich immer wieder einsammelst.

Kombiniere frei. label:konferenz-2026 newer_than:3m has:attachment ist eine echte, nützliche Liste. in:anywhere ist es nicht – das zieht Spam und Papierkorb mit herein.

Prüfe die Trefferzahl in Gmail, bevor du eine Zeile Code schreibst. Liefert die Abfrage 4.000 Threads, ist sie zu locker, und die Tabelle wird Rauschen, egal wie gut das Skript ist.

Drei Dinge werden dich beißen

  • Die Adressfelder sind Zeichenfolgen, keine Arrays. getTo() und getCc() geben eine einzige kommagetrennte Zeichenfolge zurück, und jeder Wert kommt als "Anzeigename" <adresse@example.com> an. Du teilst, trimmst und parst, bevor du irgendetwas Brauchbares hast.
  • Sechs Minuten. Apps Script beendet jede einzelne Ausführung nach sechs Minuten. Ein großes Postfach braucht Stapelverarbeitung mit gespeichertem Cursor und einem zeitgesteuerten Trigger – das ist der größte Teil des Nachmittags, den dieser Weg kostet.
  • Tägliche Lesekontingente. 20.000 bei einem privaten Gmail-Konto, 50.000 bei Google Workspace.

Nichts davon ist ein Ausschlusskriterium. Es ist der Grund, warum dieser Weg einen Nachmittag statt zehn Minuten dauert.


Wo Contact Extractor hineinpasst

Contact Extractor ist Weg vier ohne den Nachmittag. Es läuft als Apps-Script-Add-on in deinem eigenen Google-Konto, nimmt dieselbe Gmail-Suchsyntax und schreibt die Ergebnisse entdoppelt in eine Tabelle.

Es existiert wegen genau der Lücke, die diese Seite beschreibt: Takeout gibt dir ein Archiv, und Kontakte kann deine Mail nicht sehen. Diese Lücke ist das ganze Produkt.

Schritt 1: Die Abfrage in Gmail testen

Baue die Suche zuerst in Gmail, wo du die Ergebnisse siehst, bevor du dich auf etwas festlegst – genau wie oben.

Schritt 2: Das Add-on in der Zieltabelle öffnen

Erstelle oder öffne die Google-Tabelle, in der die Liste landen soll:

Erweiterungen → Contact Extractor by 8apps → Open App

Schritt 3: Die Suche als Filter nachbauen

Gib denselben Umfang ein, den du gerade getestet hast – Gmail-Label, Von, An, Betreff, Datum ab/bis, dazu beliebige weitere Operatoren unter Advanced Options.

Während du tippst, wird eine lauffähige Gmail-kompatible Abfrage zusammengesetzt, und Verify öffnet sie in Gmail, damit du bestätigen kannst, dass du dieselbe Nachrichtenmenge vor dir hast, die du getestet hast. Dieser Schritt fängt einen Fehler ab, bevor er zu einer Tabelle mit 4.000 Zeilen wird.

Schritt 4: Wählen, aus welchen Feldern gelesen wird

Statt ganze Nachrichten abzukippen, wählst du, welche Teile jeder Nachricht gelesen werden. Jeder Treffer liefert die E-Mail-Adresse und den zugehörigen Namen:

FeldNimm es, wenn
VonDu die Menschen willst, die dir geschrieben haben
AnDu die Menschen willst, an die eine Nachricht gerichtet war
CCDu alle willst, die in einen Thread einbezogen wurden – oft das weiteste nützliche Netz
BCCDu deine eigene gesendete Mail durchgehst
Antwort anAbsender Antworten an eine andere Adresse leiten, als sie senden
BetreffzeileAdressen in Betreffs stehen, etwa bei weitergeleiteten Anfragen
NachrichtentextAdressen in Signaturen oder im Nachrichtentext geschrieben stehen

Fang eng an. Von und CC decken die meisten realen Fälle ab. Nachrichtentext dazuzunehmen erweitert den Fang erheblich, holt aber auch jede No-Reply-Adresse herein, die in eine Fußzeile geschrieben wurde.

Schritt 5: Die eigene Domain ausschließen

Trag deine eigene Domain in das Feld Exclude domains ein – nur deinunternehmen.de, keine vollständige Adresse. Ohne das besteht ein großer Teil der meisten Exporte aus den eigenen Kolleginnen und Kollegen.

Schritt 6: Speichern und extrahieren

Die Adressen werden in die Tabelle geschrieben und dabei entdoppelt. Wer in 40 Threads vorkommt, kommt einmal vor.

Wenn die zugrunde liegende Nachrichtenmenge weiter wächst – ein aktives Label, ein gemeinsamer Alias, eine laufende Kampagne –, stelle die Aufgabe auf stündlich, und die Tabelle bleibt von allein aktuell.


Die Tabelle aufräumen

Welchen Weg du auch gegangen bist, ein Aufräumdurchgang lohnt sich:

  • No-Reply-Adressen herausfiltern. =FILTER(A2:A, NOT(REGEXMATCH(A2:A, "(?i)no-?reply|donotreply")))
  • Nach Domain gruppieren, um zu sehen, welche Unternehmen tatsächlich vertreten sind: =ARRAYFORMULA(IFERROR(REGEXEXTRACT(A2:A, "@(.*)$")))
  • Erneut auf Duplikate prüfen, wenn du mehrere Exporte zusammengeführt hast: =UNIQUE(A2:A)

Bevor du irgendetwas davon anschreibst

Adressen aus dem eigenen Postfach zu extrahieren ist eine Aufzeichnungsaufgabe. Diese Liste anzuschreiben ist eine Marketinghandlung, und nur die zweite ist reguliert.

Googles Absenderrichtlinien sind unmissverständlich: "Don't send messages to people who didn't sign up to get messages from you" und "Don't purchase email addresses from other companies."

Die FTC ist ebenso deutlich, dass es keine B2B-Ausnahme gibt – "The law makes no exception for business-to-business email" – und führt automatisiertes Adressensammeln unter den erschwerenden Verstößen des CAN-SPAM-Gesetzes auf.

Die praktische Fassung: Behalte die Menschen, mit denen du wirklich korrespondiert hast. Wirf list:-Treffer, No-Reply-Absender und Adressen weg, die nur je in einer CC-Kette auftauchten. Eine aus echter Korrespondenz gebaute Liste ist sowohl besser zu verteidigen als auch deutlich eher eine Antwort wert.


Ein Wort zu Berechtigungen

Jedes Werkzeug, das deine Gmail liest, fragt über Googles eigenen Zustimmungsbildschirm nach Gmail-Zugriff, und du solltest lesen, wonach es fragt. Zwei Dinge, die bei allem, was du installierst, einen Blick wert sind:

  1. Verarbeitet es deine Mail innerhalb deines Google-Kontos oder schickt es sie an einen Server Dritter?
  2. Hat es Googles Sicherheitsprüfung durchlaufen?

Contact Extractor läuft als Apps-Script-Add-on in deinem eigenen Google-Konto, schreibt ausschließlich in die Tabelle, die du wählst, und ist CASA-2-zertifiziert. Es liest die Nachrichten, auf die deine Filter passen, und nur die Felder, die du auswählst – und holt daraus die E-Mail-Adressen und Namen, die es dort findet, sonst nichts.


Welchen Weg solltest du nehmen?

Du willst…Nimm
Alle, denen du je geschrieben hast, ohne FilterungWeitere Kontakte
Eine CSV bereits gespeicherter KontakteGoogle Kontakte → Exportieren
Ein ganzes Postfach sichern oder umziehenGoogle Takeout
Adressen aus einer bestimmten Suche, und du kannst programmierenApps Script
Adressen aus einer bestimmten Suche, und du kannst es nichtEin Add-on
Drei Adressen aus einem ThreadEhrlich gesagt: kopieren und einfügen

Die letzte Zeile zählt. Nicht jede Aufgabe braucht ein Werkzeug.


Quellen


Weiterführende Artikel