# Why a reporter on Gmail never matches a company A customer writes in from a personal address. If the app took that domain at face value it would look up gmail.com in your CRM, find whichever record happens to hold it, and show an agent a company that has nothing to do with the person who wrote in. Free-mail domains collapse thousands of unrelated people onto one string, which is the one case where a confident answer is guaranteed to be wrong. So when a project matches by company, a list of free-mail and consumer-ISP domains is never looked up at all. The Matching step puts it plainly: "A reporter on a free-mail domain is not a customer at that domain, so these are never looked up. The card falls back to showing nothing rather than to showing whoever happens to be stored under gmail.com." ## What is ignored by default The list ships with the app and covers the providers a real reporter actually writes from, including the per-country variants that hand-rolled lists forget: Google and Microsoft, Apple, Yahoo and AOL, the privacy-focused providers such as Proton and Tutanota, the German, French, Nordic, Benelux, southern and eastern European providers, the Russian, Ukrainian and Asia-Pacific ones, and the large North American and UK cable and telephone companies. The badge on the screen sums it up as "Including gmail.com, outlook.com, yahoo.com and icloud.com." The screen counts the shipped list itself and puts that number in its own labels, so the badge and the buttons beside it always agree with the list you are actually running. At the time of writing the badge reads "165 ignored by default", and a later release can add to it. The button beside it opens the full list to read. ⚠️ **This list is a courtesy, not a safety rule.** No free-mail list can be complete, and free mail is not the only way a domain goes wrong: an ordinary corporate domain can hold several company records, and a sending domain belonging to an email service can be enriched into a record of its own. What actually stops an agent seeing the wrong customer is the rule that a domain matching four or more records shows nothing. Editing this list changes how many pointless lookups you make. It does not change how safe the card is. ## A domain is refused at every level A domain is refused if it, or any of its shorter forms, is on the list. A reporter at mail.gmail.com is refused as readily as one at gmail.com, so a subdomain cannot be used to walk around an entry. ## Two families are never matched, whatever either list says Two kinds of address are refused for reasons no list can express, and the settings screen explains them in one place: "Nothing was looked up. Unrelated organisations share this domain, so it cannot say which company a reporter belongs to: every Microsoft 365 tenant reduces to onmicrosoft.com, and an Apple Hide My Email address is one the reporter chose in order not to be identified. Adding the exact domain to the always-match list under Matching overrides this." The first is a technical accident: a Microsoft 365 tenant domain reduces to a string that thousands of unrelated organisations share. The second is a choice the reporter made. Inferring somebody's employer from an address they took out specifically so that nobody could would be the opposite of what they asked for. ## Making the list this project's own The list is not editable where it sits. To change it, press "Start from these 165 and edit", which first copies every shipped domain into the project. The screen says why before you can walk into it: "Editing copies all 165 into this project first, so adding one means these 165 plus yours. The project then keeps its own copy and stops following changes to the shipped list." That second sentence is the real cost. A project's own list replaces the shipped one rather than adding to it, so from then on the project no longer picks up domains added in later releases. The panel keeps saying so while the custom list is in force: "This project keeps its own list, so it no longer picks up domains added to the shipped one." A button beside it, "Go back to the 165 shipped domains", puts the project back. 📝 **An empty list means the shipped list, not "ignore nothing".** Removing the last domain from a project's own list does not switch ignoring off. The panel returns to showing the shipped list, and the shipped domains are what the card uses again. There is no setting anywhere that matches every domain including free mail, and that is deliberate. ## Domains to match anyway The second list is the escape hatch, described on the screen as: "For the sole trader whose company domain really is their gmail. Anything here is matched even when the ignored list, or this app, would refuse it." It overrides the ignored list and it overrides the two families above, which is the only thing that does. It matches the exact domain and nothing else. Adding acme.com does not also allow mail.acme.com, which is still judged by the ignored list and the refused families. Until you add something the list reads "Nothing here. Every domain follows the rules above." ## What both lists accept when you type in them * Type a domain and press Enter, or use the Add button. Both do the same thing. * Entries are cleaned up on the way in. A pasted https://www.acme.com/ is stored as acme.com, a leading @ is stripped, and case is ignored. * An empty box is refused with "Type a domain first." * Something with no dot in it is refused with its own sentence, for example: "acme" is not a domain. Type the part after the @, like acme.com. * A domain already on that list is refused with "acme.com is already on this list." rather than being added twice. * Every entry has its own remove button, and a running count sits with the list. Both lists appear only when the project matches their company. In person matching the domain is never looked at, so neither list is shown and neither has any effect: a reporter on Gmail matches perfectly well when the project matches people and that address is on their record in Attio. --- ## A few things worth knowing * Adding one domain adopts all of them. The moment you press the edit button the project holds its own copy of the whole shipped list and stops following later releases, for the sake of one entry. Check the ignore list first when a customer stops matching after an upgrade. * The always-match list is exact where the ignored list is not. An ignored domain is refused on every shorter form of a reporter's host, but an allowed domain only ever allows itself, so a customer whose people write from a subdomain needs each one added. * Both lists survive a change of match method. A project that switches to matching people, and later switches back to matching companies, still has the lists it had before, including edits somebody made a year ago. --- ## Related [Matching a company by its email domain](https://help.gocapable.com/attio-for-jira/matching-a-company-by-its-email-domain.html) [When the card cannot name a customer](https://help.gocapable.com/attio-for-jira/when-the-card-cannot-name-a-customer.html) [How an issue is matched to an Attio record](https://help.gocapable.com/attio-for-jira/how-an-issue-is-matched-to-an-attio-record.html) --- _The list saves a call. The count rule saves the answer._