The classification pipeline
When a new email arrives, DraftKite runs a classification pipeline:
- Ingest: we fetch the email's metadata and body via Gmail or Microsoft Graph.
- Context: we fetch your labels and their descriptions.
- Plugin hooks (onClassify): plugins can contribute extra context.
- LLM call: OpenAI's model picks the best-fitting label — or several.
- Write-back: the label is applied in Gmail (label) or Outlook (category).
The whole process typically takes 1-3 seconds and runs asynchronously, so it never slows down your inbox experience.
Descriptions matter
Every label has a description — a few lines that tell the AI when the label should be used. The more precise your descriptions, the better the classification.
Label: "Customer support"
Description: "Emails from existing customers about products, invoices, complaints or technical issues. NOT leads or sales enquiries."Explicit negations ("NOT ...") are especially effective at keeping a label from being used too broadly.
Templates and your own labels
In /labels you can pick from curated templates (Invoices, Newsletters, Internal, etc.) with one click, or create your own from scratch. You decide the colour and the description.
Overrides and learning
If the AI picks the wrong label, you can correct it manually in Gmail or Outlook. DraftKite records your correction and adjusts the classification for similar emails going forward.