Configuration
Setting up a Magic Enrich node is a five-step process.Choose a field to update
Select an existing field from your contact, company, or lead schema, or create a new field directly within the node.The Overwrite existing values toggle controls how the node handles fields that already have a value:
Note: you cannot update a contacts email field in magic enrich.
| Toggle state | Behavior |
|---|---|
| Off (default) | Only fills in blank fields. Existing values are preserved. |
| On | Replaces current values with the AI-generated output. |
Write your prompt
The prompt tells the AI model what data to use and how to transform it. You can insert contact and company variables directly into the prompt using the
/ command, which opens a list of available fields.Example prompt:Enable web search (optional)
Toggle Enable web search to combine field data with live website and domain scraping for additional context. When disabled, the model uses exclusively CRM/MAP fields referenced in your prompt — this is faster and more deterministic. Enable web search when you need external validation or data not stored in your records.
Define your outputs
Predefined outputs constrain the AI model to select from a specific list of values rather than generating freeform text. This is strongly recommended for any variable where consistency matters.When you define outputs, the model selects the single best match from your list. Always include “Other” as the final option to handle edge cases.Example output list:
- Marketing Leader
- Sales Leader
- Operations Leader
- Product Leader
- Engineering Leader
- Other
Preview and QA
The preview function displays up to 25 matched contacts where at least one prompt variable contains data. The output column shows the predicted enrichment result for each contact.Use preview to:
- Verify the AI is selecting the correct output for known contacts
- Identify edge cases where the prompt produces unexpected results
- Adjust prompt wording, output definitions, or model mode before activating the workflow
Prompt writing best practices
- Be specific. Tell the model exactly what to do. Vague prompts like “classify this contact” produce inconsistent results. Instead: “Based on Job Title and Industry, classify the contact into one of the following buyer personas.”
- Include examples. Add explicit mappings in your prompt: “If the job title is CMO, VP of Marketing, or Head of Growth, classify as Marketing Leader.”
- Anticipate variations. Account for common title and industry variations. For example, “CTO” and “Chief Technology Officer” should produce the same result.
- Request a single selection. Explicitly tell the model to choose the single most relevant option. Without this, the model may return multiple or hybrid responses.
- Use predefined outputs. Always define an output list when possible. Freeform enrichment should only be used when the range of possible values is genuinely unbounded.
Behavior
- The node executes once per contact as they pass through.
- If all referenced fields are empty, the node is skipped — no enrichment runs, no field is updated.
- If the overwrite toggle is off and the target field already has a value, the node is skipped.
- The enrichment result is written to the selected field before the contact advances to the next node.
Use cases
| Use case | Variable | Prompt approach |
|---|---|---|
| Persona classification | buyer_persona | Use job title, domain, and industry to assign a standardized persona |
| ICP fit scoring | icp_fit | Evaluate company size, industry, and domain to categorize as High / Medium / Low fit |
| B2B vs B2C detection | business_type | Analyze domain and industry to classify as B2B, B2C, or Both |
| Department tagging | department | Normalize job titles into functional departments (Marketing, Sales, Product, Engineering, Finance) |
| Lead scoring | lead_score | Combine contact and company data to assign a score tier |
| Data standardization | Any variable | Clean and normalize messy CRM values into consistent, structured outputs |