{"schema_version":"2.0","record_type":"article","canonical_url":"https://marketingwiki.ai/articles/contact-language-source-fallback-matrix","id":"contact-language-source-fallback-matrix","slug":"contact-language-source-fallback-matrix","title":"Define Contact-Language Sources Before Localizing Email","description":"Set precedence, normalization, confidence, fallback, change handling, and review rules for the language field that selects each recipient's email variant.","dek":"Generating twenty language versions is the easy part. The risky decision is which source assigns one version to one person.","category":"Email Marketing","topics":["Migma","email localization","contact data","language fallback"],"author":"Marketing Wiki Research Automation","reviewer":null,"publishedAt":"2026-09-06","updatedAt":"2026-09-14","lastVerifiedAt":"2026-09-14","readingMinutes":4,"featured":false,"sources":[{"title":"Migma: Multi-Language Emails","url":"https://docs.migma.ai/audience/multi-language?utm_source=marketingwiki&utm_medium=referral&utm_campaign=contact-language-source-fallback-matrix"},{"title":"Migma: Send Localized Emails","url":"https://docs.migma.ai/tutorials/send-localized-emails?utm_source=marketingwiki&utm_medium=referral&utm_campaign=contact-language-source-fallback-matrix"},{"title":"Migma: Track Customer Events","url":"https://docs.migma.ai/events?utm_source=marketingwiki&utm_medium=referral&utm_campaign=contact-language-source-fallback-matrix"},{"title":"RFC 5646: Tags for Identifying Languages","url":"https://www.rfc-editor.org/rfc/rfc5646.html?utm_source=marketingwiki&utm_medium=referral&utm_campaign=contact-language-source-fallback-matrix"}],"wordCount":625,"body":"Define the source and fallback for a contact's language before generating localized email. Prefer an explicit current preference, normalize it to an approved language set, and treat inferred locale as lower confidence than a recipient's direct choice.\n\n> **Editorial disclosure:** Prepared by Marketing Wiki Research Automation under standing direct-publication authorization and not independently reviewed. Sources were refreshed on September 6, 2026.\n\nMigma's [multi-language guide](https://docs.migma.ai/audience/multi-language?utm_source=marketingwiki&utm_medium=referral&utm_campaign=contact-language-source-fallback-matrix) and [localized-send tutorial](https://docs.migma.ai/tutorials/send-localized-emails?utm_source=marketingwiki&utm_medium=referral&utm_campaign=contact-language-source-fallback-matrix) describe generating language variants and routing them from contact language. That makes the profile field a production decision, not decorative CRM metadata.\n\n## Set source precedence\n\n| Priority | Source | Confidence | Expiry or review rule |\n| --- | --- | --- | --- |\n| 1 | Recipient-selected communication language | High | Until changed by the recipient |\n| 2 | Contract or account language explicitly chosen by customer | High for service mail; verify marketing use | Recheck on account change |\n| 3 | Support-confirmed preference with timestamp | Medium-high | Reconfirm after material account or region change |\n| 4 | CRM owner-entered language | Medium | Require provenance and review date |\n| 5 | Recent content or product-language behavior | Inferred | Short expiry; never overwrite explicit preference silently |\n| 6 | Browser, IP, country, or name inference | Low | Use only to ask or choose a safe default |\n| 7 | Brand default | Fallback | Always available and fully reviewed |\n\nThe exact order is a governance choice. Publish it and make ties deterministic.\n\n## Normalize without inventing precision\n\nUse [BCP 47 language tags](https://www.rfc-editor.org/rfc/rfc5646.html?utm_source=marketingwiki&utm_medium=referral&utm_campaign=contact-language-source-fallback-matrix) for the stored contract, then map only to variants the campaign actually supports.\n\n```yaml\nraw_value: \"pt_BR\"\nnormalized_tag: \"pt-BR\"\ncampaign_variants: [\"en\", \"es\", \"pt\"]\nselected_variant: \"pt\"\nfallback_reason: \"regional variant unavailable\"\nsource: \"recipient preference center\"\nsource_recorded_at: \"2026-09-06T07:30:00Z\"\nconfidence: \"explicit\"\nowner: \"localization operations\"\n```\n\nDo not convert an unknown value into a specific regional dialect. If the campaign supports `pt` but not `pt-BR`, record the fallback rather than pretending the two artifacts are identical.\n\n## Keep language and consent separate\n\nMigma's [event documentation](https://docs.migma.ai/events?utm_source=marketingwiki&utm_medium=referral&utm_campaign=contact-language-source-fallback-matrix) says a customer event can update profile metadata including language but cannot opt someone in or make a non-sendable contact sendable. Preserve that boundary. A person using a French product interface is evidence about language, not consent to receive marketing email.\n\n## Test the routing table\n\nCreate synthetic contacts for:\n\n- exact supported tag;\n- supported base language with unsupported region;\n- malformed tag;\n- explicit preference conflicting with inferred behavior;\n- missing language;\n- language changed after campaign approval;\n- right-to-left language requiring separate layout review;\n- unsubscribed contact with a valid language.\n\nFor each fixture, verify selected variant, fallback reason, consent invariance, subject and preview text, personalization variables, links, directionality, received rendering, and event-time versus import-time behavior.\n\nThe [localized version-control guide](/articles/localized-ai-email-version-control) governs approval of each translated artifact. This matrix binds the approved artifact to the right recipient.\n\n## Handle changes after scheduling\n\nRecord whether the send platform resolves language at audience snapshot, schedule time, queue time, or delivery time. If the product does not document the moment, test it. Define whether a late preference change cancels, re-routes, or waits for the next campaign. Consent changes should fail closed regardless of localization timing.\n\n## Stop conditions\n\nStop when an inferred language overrides an explicit preference, an unsupported value silently selects a random variant, the default version is unreviewed, right-to-left layout has not been tested, language changes can race with scheduled delivery, or contact language is used as evidence of consent, nationality, ethnicity, or legal jurisdiction.\n\n## Evidence limits\n\nMarketing Wiki did not test Migma's accepted tag set, resolution time, fallback, or right-to-left behavior. Documentation supports contact-language routing and profile updates; the precedence and test matrix are an independent operating method."}