<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Guanacos Tech Blog</title>
    <link>https://guanacostech.com/blog</link>
    <atom:link href="https://guanacostech.com/feed.xml" rel="self" type="application/rss+xml" />
    <description>Practical guides on email deliverability, SPF, DKIM and DMARC fixes, Google Workspace administration, and security for teams that can't afford downtime.</description>
    <language>en</language>
    <copyright>Guanacos Tech</copyright>
    <lastBuildDate>Thu, 03 Sep 2026 12:00:00 +0000</lastBuildDate>
    <generator>guanacos blog-gen</generator>
    <item>
      <title>Gmail &quot;550 5.7.1 very low reputation&quot; rejection: what it means and how to fix it in the right order</title>
      <link>https://guanacostech.com/blog/gmail-550-5-7-1-low-reputation-fix</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/gmail-550-5-7-1-low-reputation-fix</guid>
      <pubDate>Thu, 03 Sep 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Email Deliverability</category>
      <description><![CDATA[Gmail rejecting mail with "550 5.7.1 low reputation"? Here is what the bounce means, how to read Postmaster Tools, and the right order to fix it.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/hero-gmail-550-5-7-1-low-reputation-fix.jpg" alt="" /></p>
<h2>Read the bounce before you touch anything</h2>
<p>Gmail's rejection is not one error. It is several different problems that all get shortened to "550 5.7.1" in conversation, and the exact enhanced status code plus the sentence after it tells you which one you actually have.</p>
<p>"550-5.7.1 ... Our system has detected that this message is suspicious due to the very low reputation of the sending domain" means Gmail evaluated your domain's sending history and decided it looks enough like a spam source that it will not accept mail from it right now. This is a domain reputation problem, and Google Postmaster Tools built that record over time.</p>
<p>A close cousin, "low reputation of the sending IP address," is the same rejection scoped to the IP instead of the domain. If you send through Google Workspace, that IP belongs to Google, not you, so the block usually points to something else on shared infrastructure, or to a third-party server whose IP carries a bad history that has nothing to do with your domain.</p>
<p>A third message, "550-5.7.26, This mail is unauthenticated," is not a reputation problem at all. Gmail could not verify SPF or DKIM for that specific message and rejected it outright rather than judging it on reputation. That is Google's sender authentication requirement doing its job: since February 2024, every sender needs SPF or DKIM to pass, and bulk senders, roughly 5,000 messages a day or more to personal Gmail addresses, need both to pass plus a DMARC record.</p>
<p>Save the full bounce, not just the headline. It usually carries a link to Google's own explanation and, more importantly, the exact code that tells you whether you are dealing with reputation, authentication, or something else entirely. Treating "unauthenticated" as a reputation problem burns weeks on a warmup plan that was never going to fix it.</p>

<h2>Step 1: authenticate everything, then check alignment</h2>
<p>Before assuming reputation is the culprit, rule out authentication. Domains that used to pass SPF and DKIM drift out of compliance the moment a new tool starts sending on their behalf, an invoicing platform, a CRM, a marketing tool, without being added to the SPF record or given a DKIM selector.</p>
<p>Check three things on the domain the bounce names:</p>
<ul>
<li><strong>SPF</strong>: the TXT record has to include every service sending on your behalf, and it has to resolve to a pass for the IP that is actually sending the message.</li>
<li><strong>DKIM</strong>: outbound mail needs a valid signature that verifies against the public key published at the matching <code>selector._domainkey</code> TXT record. On Google Workspace, DKIM is off by default per domain until you generate and publish that key in the Admin Console.</li>
<li><strong>DMARC</strong>: the domain needs a DMARC record, even <code>p=none</code>, and the visible From header has to align with either the SPF domain or the DKIM signing domain. Gmail's bulk sender rules only require one of the two, but aiming for both is the safer target.</li>
</ul>

<aside class="tool-embed">
  <span class="tool-embed-kicker">Free tool</span>
  <p class="tool-embed-title">Check your domain's SPF, DKIM and DMARC</p>
  <p class="tool-embed-text">Paste a domain and get the live authentication results in about 30 seconds. No signup.</p>
  <a class="btn btn-gold" href="https://guanacostech.com/email-troubleshooter">
    <span>Run the free check</span>
    <svg viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M3 8h10M9 4l4 4-4 4" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
  </a>
</aside>

<p>Send a real test message to a Gmail address you control, open it, choose "Show original," and read the Authentication-Results header for that exact send. Confirm SPF=pass, DKIM=pass, and DMARC=pass. Fix whichever one fails before you spend any time on reputation, because a broken authentication record sitting under a reputation problem makes the bounce reason shift unpredictably between the two.</p>

<h2>Step 2: check what Postmaster Tools actually says</h2>
<p>If authentication is clean and you are still bouncing, Google Postmaster Tools is the only place that shows Google's own view of your sending history. It needs domain ownership verification and a real volume of DKIM or SPF authenticated mail to Gmail addresses before the dashboards populate, so sign up now if you have not.</p>
<p>Two dashboards matter here. Domain reputation and IP reputation are each rated High, Medium, Low, or Bad. Google defines High as "a history of very low spam rates" that complies with the sender guidelines, and Bad as "a history of sending a high volume of spam regularly," where mail is "almost always marked as spam or rejected by the receiving server." If your domain sits at Low or Bad, that rating, not anything visible from your own inbox, is producing the 550 5.7.1 bounce.</p>
<p>Spam rate is the percentage of your messages that reach an engaged recipient's inbox and then get manually marked as spam. Google's guidance is to stay under 0.10% and treat 0.30% as a hard ceiling. Cross it and you lose eligibility for Google's own delivery mitigation support until you hold under 0.30% for seven consecutive days.</p>
<p>Google has also flagged that the IP Reputation and Domain Reputation tabs specifically will eventually be deprecated, with no firm date given. Treat spam rate and authentication as the more durable signals to build your monitoring around going forward.</p>

<h2>Step 3: stop the bleeding before you try to fix reputation</h2>
<p>Reputation is backward looking. Every message you keep sending into a block adds another bad data point to a history Google is already unhappy with. Before anything else:</p>
<ul>
<li>Pause or sharply cut Gmail-bound volume, especially on any list you cannot prove is opted in and currently engaged.</li>
<li>Pull anyone who has not opened or clicked in the last 90 to 180 days off active sending. Stale lists are the most common driver of a rising spam rate, because recipients who no longer recognize the sender are the ones most likely to hit "report spam" instead of unsubscribing.</li>
<li>Look for a leftover send that is still running: a scheduled campaign, an automation, a compromised account relaying spam through your domain. A reputation collapse that lines up with one specific date is usually one identifiable sender behaving badly, not a slow organic decline.</li>
<li>If you qualify as a bulk sender, add the one-click unsubscribe headers Google requires, <code>List-Unsubscribe</code> and <code>List-Unsubscribe-Post</code>, so recipients who no longer want the mail have an easy way out that is not the spam button.</li>
</ul>

<h2>Step 4: rebuild it deliberately</h2>
<p>Once the bad signal is removed, Google's own advice for recovering reputation matches its advice for any new sender: start with low volume to your most engaged recipients and increase it slowly, avoiding sudden spikes. Google has not published a day-by-day schedule, so treat any "14-day warmup calendar" you find elsewhere as someone's estimate, not policy. What stays consistent across sources is the direction: small volume to people who open and reply, watched closely, expanded only when the spam rate and reputation dashboards hold steady or improve, not on a fixed calendar.</p>
<p>Expect this to take weeks, not days. The reputation dashboards in Postmaster Tools are historical, so one clean week does not erase a bad month.</p>

<h2>When the reputation problem is not yours to fix directly</h2>
<p>If you send through Microsoft 365, Zoho, or shared hosting SMTP, the IP behind your mail may be shared with hundreds of other tenants. Google's own guidance is direct about this: "The activity of any senders using a shared IP address affects the reputation of all senders" on it. If Postmaster Tools shows IP reputation at Low or Bad while domain reputation looks fine, someone else on that shared IP is the likely cause. The fix is working with the provider to isolate or rotate the IP, or moving to a setup where you control, or can request, a dedicated sending path. Domain reputation is the lever you fully control. IP reputation on shared infrastructure often is not.</p>

<h2>New domains start with no reputation, not bad reputation</h2>
<p>A brand-new domain, or one that has never sent meaningful volume to Gmail, does not have a low-reputation bounce waiting for it. It has no reputation at all, which Postmaster Tools may simply show as no data yet. Sending a large batch through a new domain on day one looks identical to an attacker spinning up a throwaway domain to send spam, and Gmail treats it accordingly. The fix is the same slow-start principle as a recovery: authenticate first, send small and consistent volume to real recipients, and let the domain build a track record before you rely on it for anything time-sensitive.</p>

<h2>How Guanacos Tech helps</h2>
<p>Most 550 5.7.1 cases we see are a mix of two or three of the causes above stacked on top of each other, a DKIM selector that quietly stopped verifying, a marketing tool nobody added to SPF, and a stale list someone kept mailing anyway. We run the diagnosis (authentication, Postmaster Tools reputation, spam rate history, list hygiene), fix the DNS and sending practices in the right order, and stay on the reputation recovery through the warmup period so you are not guessing at when it is safe to send at normal volume again. If you want a second set of eyes on your specific bounce, <a href="https://calendar.app.google/pq2seCCcch9U2GFV8">book a reputation review call</a>.</p>

<h2>Sources</h2>
<ul class="article-sources">
<li><a href="https://support.google.com/mail/answer/14668346?hl=en" rel="noopener" target="_blank">Postmaster Tools dashboards - Gmail Help</a></li>
<li><a href="https://support.google.com/a/answer/81126?hl=en" rel="noopener" target="_blank">Email sender guidelines - Google Workspace Admin Help</a></li>
<li><a href="https://support.google.com/a/answer/14229414?hl=en" rel="noopener" target="_blank">Email sender guidelines FAQ - Gmail Help</a></li>
<li><a href="https://support.google.com/mail/answer/81126?hl=en" rel="noopener" target="_blank">Prevent mail to Gmail users from being blocked or sent to spam</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>Microsoft 365 SPF, DKIM and DMARC setup: the checklist that actually passes at Gmail</title>
      <link>https://guanacostech.com/blog/microsoft-365-spf-dkim-dmarc-setup</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/microsoft-365-spf-dkim-dmarc-setup</guid>
      <pubDate>Thu, 03 Sep 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Email Deliverability</category>
      <description><![CDATA[Microsoft 365 gives you one SPF include and two DKIM CNAMEs. Here is the order to publish them, the alignment traps, and how to verify at Gmail.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/hero-microsoft-365-spf-dkim-dmarc-setup.jpg" alt="" /></p>
<h2>Why Microsoft 365 mail fails at Gmail when the tenant looks healthy</h2>
<p>Exchange Online will send your mail whether or not your domain is authenticated. That is the part that fools people. Messages leave the tenant, the Sent folder fills up, nothing in the admin center is red, and yet a customer on Gmail says your quote landed in spam, or a bounce comes back saying the message was not authenticated.</p>
<p>On a Microsoft 365 domain the cause is almost always the same three-part story: SPF got published when the domain was added, DKIM for the custom domain was never switched on, and DMARC was never published at all. Microsoft signs outbound mail with your tenant's onmicrosoft.com domain until you enable DKIM for the custom domain yourself. So a signature exists, it just carries the wrong domain, and it does nothing for the address your reader actually sees in the From header. You end up authenticated by SPF alone, which is the fragile half: SPF breaks on any forwarded message, and there is no DKIM signature on your own domain to fall back on.</p>

<h2>The three records, in the order that avoids downtime</h2>
<p>Publish SPF first, DKIM second, DMARC last. Each record proves something different, and DMARC is the only one that can start rejecting mail, so it goes in after the other two are confirmed working.</p>
<ul>
<li><strong>SPF</strong> says which servers are allowed to hand your mail to the internet. It is checked against the envelope sender, the address in the SMTP MAIL FROM command, not the From header your reader sees.</li>
<li><strong>DKIM</strong> attaches a cryptographic signature to the message. The receiver fetches the public key from your DNS and confirms the message was signed by whoever controls that domain and was not altered in transit.</li>
<li><strong>DMARC</strong> ties either result back to the domain in the visible From header, and tells receivers what to do when neither one lines up. A message passes DMARC when SPF or DKIM passes and the domain it passed for aligns with the From domain. One of the two is enough, which is exactly why the missing one matters.</li>
</ul>

<h2>SPF: one include, and the lookup budget you spend after it</h2>
<p>For a tenant that only sends through Exchange Online, Microsoft documents a single record:</p>
<pre><code>example.com.   TXT   "v=spf1 include:spf.protection.outlook.com -all"</code></pre>
<p>The <code>-all</code> at the end is a hard fail: anything not authorized should be rejected. Microsoft documents both that and the softer <code>~all</code>. Start with <code>~all</code> if you are genuinely unsure you have found every sender, then tighten to <code>-all</code> once your DMARC reports have shown you the full list. Never publish two SPF records for the same domain. If one already exists, merge the include into it.</p>
<p>That record is cheap. It stops being cheap the moment you add a CRM, an invoicing system, a marketing platform and a helpdesk, because RFC 7208 section 4.6.4 caps SPF evaluation at 10 DNS lookups and requires receivers to return <code>permerror</code> past that. Every <code>include</code>, <code>a</code>, <code>mx</code>, <code>ptr</code>, <code>exists</code> and <code>redirect</code> term costs a lookup, including the ones nested inside somebody else's include. <code>ip4</code> and <code>ip6</code> entries cost nothing, which is why hybrid setups list their on-premises outbound addresses directly instead of adding another include:</p>
<pre><code>example.com.   TXT   "v=spf1 ip4:203.0.113.25 include:spf.protection.outlook.com -all"</code></pre>
<p>Count the live record with a checker that follows nested includes, not by counting the entries you can see. We walked through the counting and the ways out of it in <a href="https://guanacostech.com/blog/spf-too-many-dns-lookups-fix">the SPF lookup limit guide</a>.</p>

<h2>DKIM: two CNAMEs, and why Microsoft asks for two</h2>
<p>Microsoft 365 uses two selectors per custom domain, <code>selector1</code> and <code>selector2</code>, so it can rotate signing keys without leaving a gap. You publish two CNAME records pointing at keys Microsoft holds for your tenant:</p>
<pre><code>selector1._domainkey.example.com.   CNAME   selector1-example-com._domainkey.contoso.onmicrosoft.com.
selector2._domainkey.example.com.   CNAME   selector2-example-com._domainkey.contoso.onmicrosoft.com.</code></pre>
<p>Read the exact values out of the portal instead of building them by hand. The pattern is predictable, but the tenant name inside the target has to be right or the lookup resolves to nothing. In the Microsoft Defender portal these sit under Email and collaboration, Policies and rules, Threat policies, DKIM. Microsoft rearranges that menu periodically, so search the portal for DKIM if it is not where you expect it.</p>
<p>Order matters here too. Publish both CNAMEs, wait for them to resolve, then enable signing for the domain. Enabling first fails, because Microsoft checks that it can read the keys before it will sign with them. Key length is worth a look on older tenants: 2048-bit is the current standard, and a configuration created years ago may still be running 1024. In Exchange Online PowerShell that lives on the signing configuration, for example <code>New-DkimSigningConfig -DomainName example.com -KeySize 2048</code>.</p>
<p>Once signing is on for the custom domain, outbound mail is signed with that domain instead of the onmicrosoft.com one. That single change is what turns DKIM from decoration into an identifier DMARC can actually use.</p>

<h2>DMARC: publish at p=none, then read the reports</h2>
<p>The record is a TXT entry on the <code>_dmarc</code> subdomain:</p>
<pre><code>_dmarc.example.com.   TXT   "v=DMARC1; p=none; rua=mailto:dmarc@example.com"</code></pre>
<p><code>p=none</code> changes nothing about delivery. It asks receivers to send you aggregate reports naming every IP address sending as your domain, and whether SPF and DKIM passed and aligned for each one. That list is the only honest inventory of your senders, and it is always longer than the one in your head: the accounting system, the scheduling tool someone signed up for, the scanner in the back office.</p>
<p>Leave it at <code>p=none</code> for about two weeks, fix each legitimate sender until it aligns, then move to <code>p=quarantine</code> and finally <code>p=reject</code>. Enforcement is the whole point, and Microsoft's guidance walks the same monitor, quarantine, reject path, but jumping straight to reject on a domain you have not inventoried is how invoices stop arriving. Worth knowing in the other direction as well: Exchange Online Protection evaluates DMARC on inbound mail and honors the policy the sending domain published, so your own enforcement also protects your staff from mail spoofing your domain. Microsoft publishes a separate guide for putting DMARC reporting on parked domains and on the tenant's onmicrosoft.com routing domain, both worth doing once the primary domain is settled.</p>

<h2>The alignment traps specific to Microsoft 365</h2>
<p>Four things break alignment on tenants that otherwise look configured:</p>
<ol>
<li><strong>The onmicrosoft.com signature.</strong> The most common one by a wide margin. A DKIM pass reading <code>header.d=contoso.onmicrosoft.com</code> when your From address is at example.com does not align, and DMARC ignores it entirely.</li>
<li><strong>Subdomains.</strong> A DMARC policy covers subdomains through the parent unless you override it with <code>sp=</code>. If a subdomain sends real mail from a different platform, give it its own SPF and DKIM rather than discovering it in a reject report.</li>
<li><strong>Microsoft services that are not Exchange Online.</strong> Workflow automation and a CRM's own mail engine send on your behalf from infrastructure your Exchange include does not cover. They are separate senders and need their own authorization or their own DKIM signing, exactly like an outside vendor would.</li>
<li><strong>Relays and connectors.</strong> An appliance, a website form on shared hosting, or an on-premises server routing outbound mail through a connector all add an address to the chain. If it is not in SPF and the message is not DKIM-signed on your domain, it fails.</li>
</ol>

<h2>Verify on a real message, not on a checker</h2>
<p>DNS checkers tell you that a record exists and parses. They cannot tell you what a receiver concluded about an actual message, which is the only thing that matters. Send a test from the tenant to a Gmail address, open Show original, and read the Authentication-Results header. You want three things at once: <code>spf=pass</code> with an <code>smtp.mailfrom</code> on your domain, <code>dkim=pass</code> with <code>header.d=</code> on your domain rather than onmicrosoft.com, and <code>dmarc=pass</code>. Two out of three is where most tenants sit before this work, and where a lot of them quietly stay.</p>

<aside class="tool-embed">
  <span class="tool-embed-kicker">Free tool</span>
  <p class="tool-embed-title">Decode the headers of a message that went to spam</p>
  <p class="tool-embed-text">Paste the raw headers and see the Received chain plus the SPF, DKIM and DMARC results, line by line.</p>
  <a class="btn btn-gold" href="https://guanacostech.com/header-analyzer">
    <span>Analyze headers</span>
    <svg viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M3 8h10M9 4l4 4-4 4" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
  </a>
</aside>

<h2>What the bulk sender rules add on top</h2>
<p>Past a certain volume the three records stop being good practice and become entry requirements. Google's sender guidelines treat a domain sending close to 5,000 messages or more in a day to personal Gmail accounts as a bulk sender, and bulk senders need SPF, DKIM and a DMARC record of at least <code>p=none</code>, a user-reported spam rate kept under 0.3 percent, and one-click unsubscribe as described in RFC 8058. Microsoft has published a comparable requirement for high-volume senders reaching Outlook.com, Hotmail.com and Live.com addresses: SPF, DKIM and a valid DMARC record, with non-compliant mail routed to Junk ahead of harder enforcement. Cross either threshold without the records in place and the failures get loud quickly, showing up as <a href="https://guanacostech.com/blog/gmail-550-5-7-1-low-reputation-fix">authentication and reputation rejections</a> rather than a quiet trip to the spam folder.</p>

<h2>How Guanacos Tech helps</h2>
<p>Most of the Microsoft 365 tenants we look at are two records away from passing everywhere, and the missing two are almost always DKIM on the custom domain and DMARC. We inventory every sender out of your aggregate reports, get each one aligned, and walk the policy from none to reject on a schedule that does not put your invoices at risk. If you are moving to or from <a href="https://guanacostech.com/google-workspace">Google Workspace</a>, we do the same work on both sides of the cutover. Start with the free <a href="https://guanacostech.com/email-troubleshooter">email troubleshooter</a> or the <a href="https://guanacostech.com/dmarc-analyzer">DMARC analyzer</a>, or <a href="https://calendar.app.google/pq2seCCcch9U2GFV8">book a call</a> and we will read your headers with you.</p>

<h2>Sources</h2>
<ul class="article-sources">
<li><a href="https://learn.microsoft.com/en-us/defender-office-365/email-authentication-spf-configure" rel="noopener" target="_blank">Set up SPF to identify valid email sources for your Microsoft 365 domain - Microsoft Learn</a></li>
<li><a href="https://learn.microsoft.com/en-us/defender-office-365/email-authentication-dkim-configure" rel="noopener" target="_blank">How to use DKIM for email in your custom domain - Microsoft Learn</a></li>
<li><a href="https://learn.microsoft.com/en-us/defender-office-365/email-authentication-dmarc-configure" rel="noopener" target="_blank">Set up DMARC to validate the From address domain - Microsoft Learn</a></li>
<li><a href="https://learn.microsoft.com/en-us/defender-office-365/step-by-step-guides/how-to-enable-dmarc-reporting-for-microsoft-online-email-routing-address-moera-and-parked-domains" rel="noopener" target="_blank">Enable DMARC reporting for MOERA and parked domains - Microsoft Learn</a></li>
<li><a href="https://learn.microsoft.com/en-us/microsoft-365/enterprise/external-domain-name-system-records" rel="noopener" target="_blank">External DNS records required for Microsoft 365 - Microsoft Learn</a></li>
<li><a href="https://support.google.com/mail/answer/81126" rel="noopener" target="_blank">Email sender guidelines - Gmail Help</a></li>
<li><a href="https://learn.microsoft.com/en-us/answers/questions/4748398/outlook-s-new-requirements-for-high-volume-senders" rel="noopener" target="_blank">Outlook requirements for high-volume senders - Microsoft Q&amp;A</a></li>
<li><a href="https://www.rfc-editor.org/rfc/rfc7208.html" rel="noopener" target="_blank">RFC 7208, Section 4.6.4 - DNS Lookup Limits</a></li>
<li><a href="https://www.rfc-editor.org/rfc/rfc8058.html" rel="noopener" target="_blank">RFC 8058 - One-Click Unsubscribe</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>Why your emails land in spam: the 7 real causes (and how to check each one for free)</title>
      <link>https://guanacostech.com/blog/por-que-mis-correos-llegan-a-spam</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/por-que-mis-correos-llegan-a-spam</guid>
      <pubDate>Thu, 03 Sep 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Email Deliverability</category>
      <description><![CDATA[Emails landing in spam instead of the inbox? Here are the 7 real causes, from SPF and DKIM to shared IP reputation, and how to check each one free.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/hero-por-que-mis-correos-llegan-a-spam.jpg" alt="" /></p>
<h2>Is it spam or is it a bounce?</h2>
<p>Before looking for a culprit, separate two problems people constantly mix up. A bounce is when the message never gets delivered: the receiving server rejects it and you get an error back, usually with a code like 550. Landing in spam is different: the message is delivered, but the recipient's filter routes it to the junk folder instead of the inbox, and nothing tells you that happened.</p>
<p>The difference matters because the diagnosis is different. A bounce is almost always an authentication problem or a direct block, and you find out because the error comes back to you. Landing in spam is a trust problem built up over time, the receiver decided that this particular message, or this sender in general, looks more like unwanted mail than legitimate mail, and that is where the seven real causes below come in. Almost all of them can be confirmed for free in under ten minutes.</p>

<h2>Cause 1: SPF missing or broken</h2>
<p>SPF is the DNS record that tells the world which servers are allowed to send mail on behalf of your domain. Google requires every sender to have SPF or DKIM set up correctly, and if you send 5,000 or more messages a day to personal Gmail accounts, it requires both. Without SPF, or with an SPF record that does not include the service actually sending the mail (your hosting provider, your CRM, your invoicing system), the message arrives unauthenticated, and Gmail can reject it outright with a 550-5.7.26 error or simply route it to spam.</p>
<p>A common mistake is accidentally publishing two separate SPF records, which breaks validation completely since the standard only allows one per domain. Check this by pulling your domain's TXT record and confirming there is exactly one <code>v=spf1</code> entry that includes every real sender you use.</p>

<h2>Cause 2: DKIM never signed</h2>
<p>DKIM adds a cryptographic signature to every outgoing message, and the receiver verifies it against a public key published in your DNS. On Google Workspace, DKIM is off by default per domain until you manually turn it on in the Admin Console and publish the key, so if you never configured it, your mail goes out unsigned even if everything else is correct. Google recommends 2048-bit keys, stronger than 1024-bit, which you should only use if your DNS provider does not support the longer length.</p>
<p>The same pattern repeats on Zoho Mail and cPanel: DKIM does not turn itself on, you have to generate it and publish the matching TXT record under a specific selector, something like <code>google._domainkey</code> or <code>zoho._domainkey</code>. Check this by sending a test message to a Gmail address you control, opening it, and reading the <code>Authentication-Results</code> header under "Show original." It needs to say <code>dkim=pass</code>.</p>

<h2>Cause 3: DMARC without alignment</h2>
<p>DMARC does not replace SPF or DKIM, it connects them to the domain the recipient actually sees in the From field. Per RFC 7489, for DMARC to pass, the domain that authenticates SPF or the domain that signs DKIM has to match, or align with, the organizational domain shown in the visible From header. You can have SPF and DKIM both passing perfectly and still fail DMARC if, for example, your invoicing system signs with DKIM using its own domain instead of yours.</p>
<p>Without a published DMARC record, there is not even a rule telling the receiver what to do with mail that fails to align, so many providers treat it with more suspicion by default. Publishing DMARC at <code>p=none</code> does not block anything, but it starts sending you reports that show exactly which senders are failing alignment, information you simply do not have without it.</p>

<h2>Cause 4: domain or IP reputation</h2>
<p>Even with SPF, DKIM, and DMARC all correct, your domain's or IP's sending history can be damaged. Google Postmaster Tools rates this High, Medium, Low, or Bad: High means "a history of very low spam rates," Bad means mail is "almost always marked as spam or rejected." The spam rate Google watches is the percentage of your messages people manually mark as spam after receiving them, and the official guidance is to stay under 0.10% and never reach 0.30%.</p>
<p>If you use shared hosting, a basic Microsoft 365 setup, or any platform where you share an IP with other tenants, your reputation can drop because of another sender on that same IP. Google states this directly: "the activity of any senders using a shared IP address affects the reputation of all senders" on it. Check this by signing up for Google Postmaster Tools, which populates these dashboards once you have enough authenticated volume flowing to Gmail.</p>

<h2>Cause 5: content and list quality</h2>
<p>Beyond authentication, spam filters also evaluate what you are sending and to whom. Old lists nobody opens anymore are the most common problem: people who no longer recognize the sender are the ones most likely to hit "report spam" instead of simply ignoring the message or unsubscribing, which pushes your spam rate up over time. Content matters too: exaggerated subject lines, shortened links, image-only messages with no text, or blasting the identical message to thousands of people at once are signals modern filters already recognize.</p>
<p>Check this by looking at open rates by segment. If a large group of contacts has not opened anything in 90 to 180 days, pull them off active sending before they drag the rest down.</p>

<h2>Cause 6: unauthorized third-party senders</h2>
<p>This is the cause that slips through most often because it is not in your inbox, it is in third-party tools sending mail "as you" that nobody ever reviewed: the invoicing platform, the CRM, the online store, the billing system. If that service sends using your domain in the From field but is not in your SPF record and does not sign with an aligned DKIM, every message it sends counts against your overall reputation, even though you never clicked send yourself.</p>

<aside class="tool-embed">
  <span class="tool-embed-kicker">Free tool</span>
  <p class="tool-embed-title">Check your domain's SPF, DKIM and DMARC</p>
  <p class="tool-embed-text">Paste a domain and get the live authentication results in about 30 seconds. No signup.</p>
  <a class="btn btn-gold" href="https://guanacostech.com/email-troubleshooter">
    <span>Run the free check</span>
    <svg viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M3 8h10M9 4l4 4-4 4" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
  </a>
</aside>

<p>Check this by listing everything that sends mail using your domain, not just what runs through your Gmail or Workspace inbox, and confirming each one is authorized in SPF and signs with its own DKIM.</p>

<h2>Cause 7: new domain</h2>
<p>A freshly registered domain, or one that has never sent real volume to Gmail, does not have a bad reputation, it has zero reputation. Postmaster Tools may simply show no data yet. The problem is that sending a large batch all at once from a domain like that looks nearly identical to an attacker spinning up a throwaway domain to send spam, and filters treat it with the same suspicion.</p>
<p>Check this by being patient: start with low volume to contacts who will actually open and reply, increase slowly, and let the domain build history before relying on it for something urgent like a big campaign or a full migration.</p>

<h2>Check it now, for free</h2>
<p>The first six causes can be confirmed without spending anything: check your SPF and DKIM with the <a href="https://guanacostech.com/email-troubleshooter">Guanacos Tech email troubleshooter</a>, read a real header with the <a href="https://guanacostech.com/header-analyzer">header analyzer</a>, and if you already have DMARC published, check the reports with the <a href="https://guanacostech.com/dmarc-analyzer">DMARC analyzer</a>. Between the three, you get visibility into almost everything covered above in a single session.</p>

<h2>How Guanacos Tech helps</h2>
<p>Most cases we review do not have one single cause, they have two or three stacked together: a DKIM key that never got turned on, an invoicing platform nobody authorized in SPF, and a list that stopped being cleaned a year ago. We run the full diagnosis, fix the DNS in the right order, and stay on it until reputation stabilizes. If you want a second set of eyes, <a href="https://calendar.app.google/pq2seCCcch9U2GFV8">book a free call</a>.</p>

<h2>Sources</h2>
<ul class="article-sources">
<li><a href="https://knowledge.workspace.google.com/admin/security/set-up-dkim?hl=en" rel="noopener" target="_blank">Set up DKIM to prevent spoofing - Google Workspace Admin Help</a></li>
<li><a href="https://datatracker.ietf.org/doc/html/rfc7489" rel="noopener" target="_blank">RFC 7489 - Domain-based Message Authentication, Reporting, and Conformance (DMARC)</a></li>
<li><a href="https://support.google.com/a/answer/81126?hl=en" rel="noopener" target="_blank">Email sender guidelines - Google Workspace Admin Help</a></li>
<li><a href="https://support.google.com/mail/answer/14668346?hl=en" rel="noopener" target="_blank">Postmaster Tools dashboards - Gmail Help</a></li>
<li><a href="https://support.google.com/mail/answer/81126?hl=en" rel="noopener" target="_blank">Prevent mail to Gmail users from being blocked or sent to spam</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>SPF PermError &quot;too many DNS lookups&quot;: how to get under the 10-lookup limit without breaking mail</title>
      <link>https://guanacostech.com/blog/spf-too-many-dns-lookups-fix</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/spf-too-many-dns-lookups-fix</guid>
      <pubDate>Thu, 03 Sep 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Email Deliverability</category>
      <description><![CDATA[SPF failing with too many DNS lookups? How the RFC 7208 10-lookup limit is counted, which providers cost the most, and how to fix it without breaking mail.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/hero-spf-too-many-dns-lookups-fix.jpg" alt="" /></p>
<h2>Why the limit exists</h2>
<p>SPF is not a list of IP addresses you publish once. It is a small program a receiving mail server has to run: fetch your TXT record, then follow every <code>include</code>, <code>a</code>, <code>mx</code>, <code>ptr</code>, and <code>exists</code> mechanism, plus any <code>redirect</code> modifier, each of which triggers its own DNS lookup. RFC 7208 section 4.6.4 caps that at 10: "SPF implementations MUST limit the total number of those terms to 10 during SPF evaluation, to avoid unreasonable load on the DNS." Cross it and "the implementation MUST return permerror."</p>
<p>PermError is not a soft failure. It does not mean "treat this as neutral" the way a missing record does. Most large receivers, Gmail included, treat an SPF PermError as equivalent to no valid SPF at all, and Gmail's bulk sender rules require SPF or DKIM to pass, so a domain that blows the lookup budget can start bouncing with unauthenticated errors even though the record looks fine at a glance.</p>
<p>Two related limits sit inside that same rule. Each <code>MX</code> mechanism you use must not require querying more than 10 A or AAAA records to resolve, and the same 10-record cap applies to <code>PTR</code> lookups. RFC 7208 also recommends implementations cap "void lookups," DNS queries that return nothing, at two, and return permerror past that. In practice this means a bloated record can fail even before you count all 10 real lookups, if enough of those lookups come back empty.</p>

<h2>Counting your lookups honestly</h2>
<p>The mistake most SPF records make is counting the top-level <code>include</code> statements and stopping there. The limit is not "10 includes," it is 10 total DNS lookups across the whole evaluation, and an include can itself contain more includes that each cost a lookup.</p>
<p>Take a record that looks harmless:</p>
<pre><code>v=spf1 include:_spf.google.com include:spf.protection.outlook.com include:servers.mcsv.net include:spf.zoho.com redirect=_hspf.hubspot.com a mx include:sendgrid.net ~all</code></pre>
<p>Read left to right against the RFC's list of what counts (include, a, mx, ptr, exists, redirect): <code>include:_spf.google.com</code> is 1, <code>include:spf.protection.outlook.com</code> is 1, <code>include:servers.mcsv.net</code> is 1, <code>include:spf.zoho.com</code> is 1, the <code>a</code> mechanism is 1, the <code>mx</code> mechanism is 1, and <code>include:sendgrid.net</code> is 1. That is 7 so far, before touching the HubSpot redirect. HubSpot's own SPF chain is not flat. Following it as published today means <code>redirect=_hspf.hubspot.com</code> (1 lookup) resolves to a record that itself includes <code>_hspf1.hubspot.com</code> (1 more), which includes <code>_hspf2.hubspot.com</code> (1 more), which includes a further sub-record. That redirect chain alone adds 4 or more lookups on top of the 7, pushing the total to 11 or higher, past the limit, on a record that looked like six or seven modest entries.</p>

<h2>The usual offenders</h2>
<p>Not every provider is equally expensive. As currently published, Google Workspace's <code>include:_spf.google.com</code> resolves directly to a flat list of IP ranges, no nested includes, so it costs exactly 1 lookup. Microsoft 365's <code>include:spf.protection.outlook.com</code> is the same shape: flat, 1 lookup. Mailchimp's <code>include:servers.mcsv.net</code> is also flat, 1 lookup. Zoho's <code>include:spf.zoho.com</code> resolves to a single flat list as well, 1 lookup, though Zoho's own documentation sometimes shows a combined record with additional includes like <code>zcsend.net</code> for their marketing product, each adding another lookup. HubSpot is the outlier: its SPF is a multi-level redirect and include chain, and following it end to end costs 4 or more lookups by itself, more than any other mainstream provider in a typical stack.</p>
<p>This changes over time. Providers restructure their SPF infrastructure without warning, and a provider that is flat today can add nested includes next quarter. Treat any lookup count, including the ones above, as something to re-verify with a live tool rather than something to hardcode into a spreadsheet.</p>

<h2>Fix 1: remove dead includes</h2>
<p>The fastest win is almost always deleting mechanisms nobody uses anymore. SPF records accumulate the way old CC lists do: a marketing tool you canceled two years ago, a fax-to-email gateway nobody remembers, a legacy on-prem relay that got decommissioned when you moved to Workspace or M365. Pull the current record, match every include against a live sender, and delete anything that is not sending mail today. This alone resolves a large share of "too many lookups" cases without touching anything else.</p>

<h2>Fix 2: push the cost onto a subdomain</h2>
<p>Every subdomain gets its own SPF evaluation and its own 10-lookup budget. If your root domain sends transactional mail through Workspace and marketing mail through HubSpot and Mailchimp, moving the marketing sends to a dedicated subdomain, for example <code>mail.example.com</code> or <code>news.example.com</code>, splits one crowded 10-lookup budget into two separate ones. This is also the fix dmarcian, the company that built and later retired its own SPF flattening tool, now recommends over flattening: segmenting senders by subdomain gives you "better controls, less attack surface, operational efficiency, and reputational resilience" instead of one bloated shared record.</p>

<aside class="tool-embed">
  <span class="tool-embed-kicker">Free tool</span>
  <p class="tool-embed-title">Check your domain's SPF, DKIM and DMARC</p>
  <p class="tool-embed-text">Paste a domain and get the live authentication results in about 30 seconds. No signup.</p>
  <a class="btn btn-gold" href="https://guanacostech.com/email-troubleshooter">
    <span>Run the free check</span>
    <svg viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M3 8h10M9 4l4 4-4 4" fill="none" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>
  </a>
</aside>

<h2>Fix 3: flattening, and why it carries its own risk</h2>
<p>Flattening replaces an <code>include</code> with the literal <code>ip4</code>/<code>ip6</code> ranges it resolves to today, cutting the lookup count to near zero. It works, until the provider changes its sending IPs, which every major ESP does periodically without a public changelog. A flattened record goes stale the moment that happens, and mail from the provider's new IPs starts failing SPF silently, often before anyone notices the bounce pattern. dmarcian ran flattening as a public experiment for years and shut it down in March 2023, concluding that the practice trades one operational problem for a security one: an over-authorized, rarely-audited record is "unnecessary entries in SPF records" that widen your attack surface rather than shrink it. If you flatten, treat it as a stopgap with a recheck on your calendar, not a permanent fix.</p>

<h2>Fix 4: lean on DKIM alignment instead of forcing SPF to cover everything</h2>
<p>DMARC only needs one of SPF or DKIM to pass and align, not both. If a sender you cannot remove from SPF without breaking mail is properly DKIM-signed with an aligned domain, DMARC still passes for that sender even if SPF alone would exceed the lookup limit or fail outright. This does not fix the PermError risk, an SPF PermError is still treated as SPF failing outright by most receivers regardless of what DMARC ultimately decides, so it is a mitigation for alignment, not a substitute for getting the lookup count under 10. Prioritize DKIM setup for every sender you keep, and use it as the safety net while you work the SPF count down, not as a reason to ignore the count.</p>

<h2>Verify before you consider it done</h2>
<p>Publish the change, then re-check the live record rather than trusting your own count. A record that looked fine on paper can still exceed the limit once you follow a redirect chain like HubSpot's all the way down, and a typo in one include can silently break the whole record instead of just that one entry. Run a real test send through <a href="https://guanacostech.com/email-troubleshooter">the Guanacos Tech email troubleshooter</a> and confirm SPF returns pass, not permerror or none, on an actual message.</p>

<h2>How Guanacos Tech helps</h2>
<p>We see this most often in companies that have switched email or marketing platforms two or three times over the years and never cleaned up the trail. We audit the full lookup chain, including redirects and nested includes most SPF checkers stop counting after the first level, cut it under 10 in the right order, and set up DKIM alignment as backup coverage for anything that has to stay. If your SPF record keeps bouncing back as a PermError, <a href="https://calendar.app.google/pq2seCCcch9U2GFV8">book a call</a> and we will trace it with you.</p>

<h2>Sources</h2>
<ul class="article-sources">
<li><a href="https://www.rfc-editor.org/rfc/rfc7208.html" rel="noopener" target="_blank">RFC 7208, Section 4.6.4 - DNS Lookup Limits</a></li>
<li><a href="https://knowledge.workspace.google.com/admin/security/about-spf-records" rel="noopener" target="_blank">About SPF records - Google Workspace Admin Help</a></li>
<li><a href="https://dmarcian.com/spf-flattening/" rel="noopener" target="_blank">Concluding the Experiment: SPF Flattening - dmarcian</a></li>
<li><a href="https://learn.microsoft.com/en-us/defender-office-365/email-authentication-spf-configure" rel="noopener" target="_blank">Set up SPF to identify valid email sources for Microsoft 365 - Microsoft Learn</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2FA didn't stop the breach: what Google's new cookie-binding actually protects</title>
      <link>https://guanacostech.com/blog/blog-dbsc-cookie-theft</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-dbsc-cookie-theft</guid>
      <pubDate>Sun, 07 Jun 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Workspace Security</category>
      <description><![CDATA[Stolen session cookies bypass 2FA entirely. How Google's Device Bound Session Credentials (DBSC) tie Workspace sessions to the device TPM and stop theft.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_dbsc_cookies.jpg" alt="" /></p>
<p>You did everything right. Two-factor is enforced on every account. Nobody reused a password from a 2019 breach. And the attacker still got in, read the CFO's mail for a week, and rerouted a wire.</p>

<p>When this happens, the post-mortem almost never finds a cracked password or a defeated MFA prompt. It finds a stolen browser session. The login already happened, on a legitimate device, by the real user. The attacker just walked in carrying the proof.</p>

<h2>Why 2FA quietly stopped being enough</h2>

<p>Here is the part most admins were never told plainly. Two-factor authentication protects the <em>moment you sign in</em>. Once you're in, your browser holds a session cookie. That cookie is the "yes, this person is signed in" badge, and your browser shows it on every request so you don't have to type your password and tap your phone forty times a day.</p>

<p>Malware called an infostealer goes after that badge. It runs on an infected laptop, copies the live session cookies out of the browser, and ships them off. The attacker loads those cookies into their own browser and lands inside the account already authenticated. No password prompt. No MFA challenge. There's nothing to challenge, because as far as the system is concerned the session was already approved.</p>

<p>This is not a fringe technique. Constella's identity research found infostealers processed <strong>51.7 million packages in 2025, a 72% jump over the prior year</strong>, and a big reason those packages are so valuable is that they carry live session cookies that bypass MFA outright. SpyCloud, working from a different data set, recaptured <strong>8.6 billion stolen cookies and session artifacts</strong> from malware infections, and counted 1.17 million malware logs that held both enterprise credentials and active session cookies. The families doing most of this in early 2026 are LummaC2, ACRStealer, StealC, and Vidar. One infected machine in your org can become an authenticated session in someone else's hands.</p>

<h2>What Google turned on, and when</h2>

<p>On May 28, 2026, Google announced that <strong>Device Bound Session Credentials (DBSC) in the Chrome browser on Windows is now generally available and enabled by default for <a href="https://guanacostech.com/google-workspace">Google Workspace users</a></strong>. The rollout started gradually on May 25 and can take up to 60 days to fully appear across Rapid and Scheduled Release.</p>

<p>The idea behind DBSC is simple once you strip the acronym away. When a session is created, Chrome generates a private cryptographic key and stores it inside the device's TPM, a hardware-backed security chip built into the machine. The session cookie gets tied to that key. From then on, every time the session refreshes, Chrome has to prove it still holds the matching device key. A cookie copied off that laptop is missing the key it was bound to, so on the attacker's machine it simply fails validation. The stolen badge no longer opens the door.</p>

<p>If the system sees that a session doesn't match the device it was bound to, the user is prompted to sign in again. The honest user shrugs and re-authenticates. The attacker is stuck.</p>

<p>Two things matter for your blood pressure here. <strong>This is on by default, for all Workspace customers, Workspace Individual subscribers, and personal Google accounts.</strong> There is no admin control to disable it and no end-user setting to flip. You don't have to deploy anything to get the baseline protection.</p>

<h2>The fine print: where DBSC does not reach</h2>

<p>This is one strong control, not a force field. Knowing its edges is the whole job, because attackers move to whatever you left uncovered.</p>

<ul>
<li><strong>Chrome and Windows only.</strong> It needs Chrome 146 or later on Windows, and a TPM to hold the keys. TPM is standard on most Windows 11 hardware, but older or unmanaged machines may not qualify.</li>
<li><strong>macOS, mobile, and other browsers are still exposed.</strong> A session stolen from Safari, from a phone, or from Firefox or Edge does not get this device binding. Constella's analysis makes the same point: the Chrome-on-Windows scope leaves macOS, mobile, other browsers, and non-browser token theft on the table.</li>
<li><strong>Non-browser tokens aren't covered.</strong> OAuth tokens and app credentials living outside the browser are a separate problem DBSC doesn't touch.</li>
</ul>

<p>Read that list as a map of where you still need other defenses, not as a reason to wave DBSC off. For the place most credential theft actually happens, the corporate Windows laptop running Chrome, the highest-value cookie just got a lot less useful to steal.</p>

<h2>What an admin should actually do</h2>

<p>Nothing is required to switch DBSC on. But "nothing required" and "nothing worth doing" are different things. A few moves turn a passive default into something you can see and steer.</p>

<p><strong>Watch the binding events.</strong> In the security investigation tool, DBSC writes audit logs you can review. User log events show <code>DBSC key binding</code> and <code>DBSC key validation</code> as Succeeded or Failed. Access Evaluation log events surface denied requests with codes like <code>DBSC_BOUND_COOKIE_MISSING</code>, <code>DBSC_BOUND_COOKIE_CORRUPTED</code>, and <code>DBSC_BOUND_COOKIE_EXPIRED</code>. A spike in failed validations is a signal worth chasing, not noise to mute.</p>

<p><strong>Consider enforcing bound sessions.</strong> DBSC works alongside Context-Aware Access. If you want to go further than the default, you can use Context-Aware Access to <em>require</em> a bound session and block non-bound ones from reaching specific apps. Sensible for your most sensitive systems; test it before you point it at everyone, since it can <a href="https://guanacostech.com/blog/blog-admin-lockouts">lock out anyone</a> on an unsupported browser, OS, or device.</p>

<p><strong>Standardize the fleet so devices actually qualify.</strong> DBSC only helps on machines that meet the bar. Managed Chrome plus Windows 11 with a working TPM and current browser versions is what makes the protection real instead of theoretical. If your fleet is a patchwork of personal laptops and stale Chrome builds, that's the gap to close first.</p>

<p><strong>Keep layering.</strong> Phishing-resistant passkeys to harden the login itself, Context-Aware Access to gate by device posture, and basic endpoint hygiene so infostealers can't run in the first place. DBSC takes one weapon out of the attacker's hands. It doesn't take all of them.</p>

<h2>The honest takeaway</h2>

<p>Session theft was the quiet gap behind a lot of "but we had MFA" incidents, and Google just closed a big slice of it for free on the platform most of your users live on. That's genuinely good news. It is also the kind of change that's easy to misread as "we're done." You're not done. You're better protected on Chrome and Windows, and you now have logs to prove it and a clear list of what still needs covering.</p>

<p>If you'd rather not piece this together alone, this is the sort of audit we do every week: confirm DBSC is actually landing on your fleet, wire up the monitoring so failed bindings reach a human, decide whether Context-Aware Access enforcement fits your risk, and find the macOS and mobile gaps before someone else does. We're an independent Workspace and Cloud team, not a reseller pushing a license. If your last <a href="https://guanacostech.com/blog/blog-admin-hardening">security review</a> predates all of this, it's a fair time for a fresh look.</p>]]></content:encoded>
    </item>
    <item>
      <title>Less Secure Apps is gone — what to do when your printer can't email anymore</title>
      <link>https://guanacostech.com/blog/blog-lsa</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-lsa</guid>
      <pubDate>Tue, 28 Apr 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Email Deliverability</category>
      <description><![CDATA[Printer can't scan to email? Google removed Less Secure Apps in June 2024. Fix SMTP authentication errors with OAuth, App Passwords, or the SMTP Relay.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_lsa.jpg" alt="" /></p>
<h2>What "Less Secure Apps" actually meant</h2>
            <p>Less Secure Apps was Google's label for any client that connected to Gmail using a plain username and password — no OAuth 2.0, no token exchange, just credentials passed directly over IMAP, POP3, or SMTP. The clients that used this path were largely designed in the 1990s and early 2000s, before OAuth existed as a standard.</p>
            <p>The label was technically accurate. Basic auth has no token rotation, so a stolen password is a full account takeover — no time limit, no scope restriction. It has no MFA support, so your <a href="https://guanacostech.com/blog/blog-admin-lockouts">two-step verification policy</a> is silently bypassed for any app using this path. There is no scope limitation either: a client authenticating via basic auth gets full access to everything in the account, not just the mailbox it needs. And the credentials are fully phishable — a credential-stuffing attack or a single leaked password spreadsheet is all it takes.</p>
            <p>Every modern security framework treats basic auth as an unacceptable risk for this reason. The deprecation was not a surprise for anyone following the threat landscape.</p>

            <h2>The deprecation timeline</h2>
            <p>Google announced the end of Less Secure Apps access in 2019 — giving organizations several years to migrate. For personal Gmail accounts, basic auth was turned off on May 30, 2022. Workspace (paid) accounts kept the admin toggle longer, but Google removed it entirely in June 2024.</p>
            <p>As of today, there is no toggle to flip. The option is <a href="https://guanacostech.com/google-workspace">gone from the Admin Console</a>. No Workspace account — regardless of tier, age, or admin configuration — can re-enable basic auth access for any client. This is not a policy that can be requested as an exception. The infrastructure no longer supports it.</p>
            <p>If you are reading this because a system just started throwing authentication errors, the timeline explains why. The system likely worked for years, coasted through the 2022 personal-Gmail cutoff without being touched, and finally hit the wall when the Workspace toggle was removed.</p>

            <h2>What actually broke when LSA went away</h2>
            <p>The error message is usually "Authentication failed" or "Username and password not accepted," sometimes accompanied by a link to a Google help article about Less Secure Apps that now leads to documentation explaining why the feature no longer exists. The systems generating this error fall into predictable categories.</p>
            <ul>
                <li><strong>Multifunction printers and copiers</strong> — Xerox, Canon, Ricoh, Sharp, and Konica Minolta devices configured to <a href="https://guanacostech.com/email-troubleshooter">scan-to-email via SMTP submission</a>. This is the most common ticket we see. The device has had the same SMTP config for a decade and nobody thought to update it.</li>
                <li><strong>Legacy CRM, ERP, and accounting software</strong> — notification emails, invoice delivery, and alert emails sent through Gmail SMTP with hardcoded credentials. Often configured by whoever set up the software years ago and not documented anywhere.</li>
                <li><strong>Backup and monitoring scripts</strong> — shell scripts or Python scripts running on a cron schedule that email nightly reports. <code>smtp.gmail.com</code> on port 587, username and password in a config file or environment variable.</li>
                <li><strong>Older desktop email clients</strong> — pre-2019 versions of Outlook, older versions of Thunderbird, Mac Mail on macOS versions from before OAuth support was standard. Any client that never prompted users to re-authenticate through a browser flow.</li>
                <li><strong>Marketing and automation tools</strong> — third-party tools that were integrated using Gmail credentials directly rather than through the Gmail API or an OAuth-scoped service account.</li>
            </ul>
            <p>In each case, the system was working fine until June 2024. Then it stopped. The error is the same; the fix depends entirely on which category the system falls into.</p>

            <h2>The three migration paths</h2>
            <p>There is no single answer. The right migration path depends on what the system is and what it actually needs to do.</p>

            <h3>OAuth 2.0</h3>
            <p>This is the correct long-term answer for any modern application that supports it. The app registers a client ID in Google Cloud Console, the user (or an admin, for service accounts) grants scoped consent, and the app receives refresh tokens that rotate automatically. Access can be scoped narrowly — read-only, specific labels, send-only — rather than full account access. Revocation is per-app rather than requiring a password change. Most major SaaS platforms already support this; check the vendor's authentication documentation before assuming they don't.</p>

            <h3>App Passwords</h3>
            <p>For clients that genuinely cannot speak OAuth — older printers, niche line-of-business apps with no update path — Google provides App Passwords as a compatibility shim. An App Password is a 16-character, single-use password generated per device under the user's account at <strong>Manage your Google Account &rarr; Security &rarr; App passwords</strong>. The account must have 2-Step Verification enabled before this option appears.</p>
            <p>App Passwords are limited but functional. The client uses the App Password instead of the account password. If the device is compromised, you revoke that specific App Password without touching the account password or other devices. This is meaningfully better than plain basic auth, but it is still a static credential — it does not rotate unless you regenerate it manually.</p>

            <h3>SMTP Relay Service</h3>
            <p>For high-volume server-to-server email — system notifications, transactional sends, scripted reports — the right answer is Google Workspace's SMTP Relay Service, not a per-user account. Configured at the domain level in Admin Console under <strong>Apps &rarr; Google Workspace &rarr; Gmail &rarr; Routing &rarr; SMTP relay service</strong>, it allows sending from specific IP ranges or authenticated users through Google's infrastructure. It does not count against per-user send limits. It does not require a user account's credentials in a script. It is the correct architecture for anything sending mail at scale from a server.</p>

            <h2>How to find what's still using LSA in your environment</h2>
            <p>Before you can fix anything, you need a complete list of affected systems. Most organizations discover these one at a time as they break, which is a slow and reactive way to work through a migration. A structured audit is faster.</p>
            <ul>
                <li><strong>Admin Console audit logs:</strong> Go to Admin Console &rarr; Reporting &rarr; Audit and investigation &rarr; User log events. Filter for <code>Login failure</code> events. Look for repeated failures from the same source IP address — that pattern almost always indicates a service account or device, not a human failing a password attempt.</li>
                <li><strong>Gmail routing audit:</strong> Admin Console &rarr; Apps &rarr; Google Workspace &rarr; Gmail &rarr; Routing. Review any IPs in your inbound or outbound mail gateway configuration to understand what is sending mail through your domain.</li>
                <li><strong>Facilities and IT asset inventory:</strong> Talk to the facilities or office management team. Printers and copiers are the single most common LSA breakage point, and they are rarely tracked in IT systems. Pull a list of every MFP on the network and physically check its scan-to-email configuration.</li>
                <li><strong>Server-side script audit:</strong> Check scheduled tasks on Windows servers and cron jobs on Linux systems. Search script directories for <code>smtp.gmail.com</code> or <code>password=</code> — those strings in a script file almost certainly indicate a hardcoded SMTP credential that will break.</li>
            </ul>
            <p>Document what you find: system name, owner, what email function it performs, and which migration path applies. That list becomes your migration project plan.</p>

            <h2>What to do for each system you find</h2>
            <p>Once you have the inventory, the remediation decision for each system is straightforward.</p>
            <ul>
                <li><strong>Printer or MFP:</strong> Create a dedicated Google account for the device (e.g., <code>printer-floor3@yourdomain.com</code>), enable 2-Step Verification on it, generate an App Password, and update the device's SMTP configuration. The better long-term answer is to switch to the SMTP Relay Service and configure the device's IP — then the account credential is removed from the equation entirely.</li>
                <li><strong>Line-of-business application:</strong> Check the vendor's documentation for OAuth support first. If the vendor supports OAuth and your version is recent enough, migrate. If the app has no OAuth path and cannot be updated, use an App Password on a dedicated service account.</li>
                <li><strong>Server scripts:</strong> Use the SMTP Relay Service. Do not use App Passwords for production scripts — they are static credentials sitting in config files and they do not rotate. SMTP Relay with IP allowlisting is the correct architecture here.</li>
                <li><strong>User email clients:</strong> Any desktop or mobile client released after approximately 2020 supports OAuth. Remove the account from the client and re-add it. The first sign-in will redirect to a Google login page and complete the OAuth flow automatically. No special configuration required.</li>
            </ul>

            <h2>The security upside</h2>
            <p>Basic auth is genuinely indefensible in 2026. A phished password is a complete account compromise — no MFA stands between the attacker and the inbox. There is no audit trail of what the app accessed or when. There is no way to revoke access for a single device without changing the user's password across every device they use. The access scope is always full, regardless of what the app actually needs.</p>
            <p>Every major breach report from the past decade has a basic-auth story in it. Credential stuffing, password spraying, and supply-chain attacks against apps storing plaintext passwords all rely on basic auth being available somewhere in the authentication surface. Removing it closes that path entirely.</p>
            <p>The migration is operationally annoying — mainly because the affected systems are old, poorly documented, and owned by departments that don't think of themselves as IT stakeholders. But the end state is materially better. Per-device App Passwords mean a compromised printer credential doesn't expose the entire account. OAuth scopes mean an integrated app can only read what it needs. SMTP Relay means scripts aren't running with a user's full identity attached.</p>

            <h2>Bottom line</h2>
            <p>If you have systems throwing "Authentication failed" errors and this is the first time you're hearing about Less Secure Apps, OAuth, App Passwords, or SMTP Relay — you are not alone. The printer-stops-scanning-to-email scenario is the most common first symptom for SMBs hitting this cutoff, and it shows up six to eighteen months after Google pulled the toggle because most organizations don't notice until the device breaks in a way that disrupts a workflow.</p>
            <p>The playbook is: audit (login failure events, routing config, printers, scripts), classify each system as OAuth-capable / App Password candidate / SMTP Relay candidate, then migrate in priority order. Budget two to four weeks of elapsed time for an organization with a mixed legacy environment. There is nothing to turn back on. The path forward is the migration.</p>]]></content:encoded>
    </item>
    <item>
      <title>S/MIME encryption in Google Workspace: when you need it, when you don't</title>
      <link>https://guanacostech.com/blog/blog-smime</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-smime</guid>
      <pubDate>Tue, 28 Apr 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Security</category>
      <description><![CDATA[S/MIME in Google Workspace explained: what Hosted S/MIME encrypts, which Workspace tiers include it, and when HIPAA or compliance actually requires it.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_smime.jpg" alt="" /></p>
<h2>What S/MIME actually does</h2>
            <p>S/MIME (Secure/Multipurpose Internet Mail Extensions) encrypts the body and attachments of an email message using a public/private key pair anchored in an X.509 certificate issued by a Certificate Authority. The sender's mail client encrypts the message using the recipient's public key. Only the recipient's private key can decrypt it. Neither your email provider nor any server in transit can read the content.</p>
            <p>S/MIME also signs outbound messages. A digital signature lets the recipient cryptographically verify that the message came from you and was not modified in transit — stronger than <a href="https://guanacostech.com/header-analyzer">SPF/DKIM header checks</a>, which only authenticate the sending domain.</p>
            <p>This is fundamentally different from TLS-in-transit. Standard Gmail already uses TLS between mail servers, which protects messages on the wire. TLS ends at the server. S/MIME protects the message itself, mailbox to mailbox. Both sender and recipient must have valid S/MIME certificates for encryption to work end-to-end.</p>

            <h2>When you actually need it</h2>
            <p>The honest answer: most organizations don't need S/MIME. The ones that do are usually driven by a specific regulatory trigger or contractual obligation:</p>
            <ul>
                <li><strong>HIPAA</strong> — Protected health information (PHI) transmitted over email may require encryption at rest and in transit. S/MIME satisfies the in-transit encryption requirement between mailboxes when TLS-only delivery isn't sufficient.</li>
                <li><strong>SOX and financial controls</strong> — Some financial services compliance frameworks require encrypted communication for sensitive board-level or M&amp;A correspondence.</li>
                <li><strong>FedRAMP / CJIS</strong> — Government contractors working with controlled unclassified information (CUI) often face explicit certificate-based encryption mandates.</li>
                <li><strong>Attorney-client privilege</strong> — Law firms handling highly sensitive matters sometimes deploy S/MIME to establish a technical paper trail supporting privilege claims.</li>
                <li><strong>M&amp;A and IP-sensitive work</strong> — Deal teams and R&amp;D groups where a single leaked email has outsized consequences.</li>
            </ul>
            <p>If your legal or compliance team has never raised S/MIME in a risk assessment, you probably don't need it. One common misconception: Gmail's Confidential Mode is not a substitute. Confidential Mode sets an expiry on access and prevents forwarding — it does not encrypt the message body. It is a UI restriction, not cryptographic protection.</p>

            <h2>What tier of Workspace you need</h2>
            <p>S/MIME is not available on Business Starter, Business Standard, or Business Plus. It is an <a href="https://guanacostech.com/google-workspace">Enterprise-tier feature</a>. Specifically, it requires <strong>Workspace Enterprise Standard, Enterprise Plus, Education Plus, or Frontline</strong>.</p>
            <p>This matters when you're doing a compliance-driven SKU evaluation. If S/MIME is a hard requirement, it pushes you to Enterprise Plus at roughly $30/user/month — versus Business Plus at $18. For a 100-seat org, that gap is $14,400/year. That number belongs in any compliance cost analysis alongside the cost of a data breach.</p>
            <p>The license uplift is often the first objection in a deployment project. Address it early. If the regulatory or contractual requirement is real, there's no workaround — you need the Enterprise tier.</p>

            <h2>Hosted S/MIME vs. traditional</h2>
            <p>This is the trade-off most documentation glosses over. When you enable S/MIME in Google Workspace, the default mode is <strong>Hosted S/MIME</strong>. Google holds your users' private keys in its key management infrastructure. When an encrypted message arrives, Google decrypts it on the server, scans it for malware and spam, and re-encrypts it for delivery to the client.</p>
            <p>That breaks the strict definition of end-to-end encryption. Google — and by extension, any valid legal process served to Google — can access the plaintext. The payoff is that Workspace features continue to work: Gmail search indexes the content, Vault retains the messages for eDiscovery, malware scanning catches threats before delivery.</p>
            <p><strong>Traditional S/MIME</strong> keeps private keys on the user's device and never exposes them to the server. Messages are encrypted by the client before sending and decrypted by the client after receiving. The server never sees plaintext. This is true end-to-end encryption.</p>
            <p>The cost is significant: Vault cannot see encrypted message content, Gmail search doesn't index it, malware scanning is blind to the body, and mobile clients have inconsistent support. For most regulated organizations, the Hosted S/MIME compromise is the right operational choice — the regulatory requirement is for encryption in transit between mailboxes, which Hosted S/MIME satisfies. Understand the trade-off explicitly before committing.</p>

            <h2>Setup at a glance</h2>
            <p>Enabling S/MIME in Google Workspace involves four parallel workstreams. None of them are complicated individually, but coordinating them across a mid-size org takes time.</p>
            <ul>
                <li><strong>Enable in Admin Console:</strong> Apps &rarr; Google Workspace &rarr; Gmail &rarr; User settings &rarr; S/MIME. Enable for the relevant organizational unit. You can also enable extra CA roots here.</li>
                <li><strong>Obtain certificates:</strong> Get user certificates from a public CA — DigiCert, GlobalSign, and Sectigo are the common choices — or issue from an internal PKI if your organization already runs one. Each user needs a certificate tied to their email address.</li>
                <li><strong>Upload root and intermediate CA certificates:</strong> Upload the CA chain to Workspace so Gmail trusts the certificates. Admin Console &rarr; Apps &rarr; Google Workspace &rarr; Gmail &rarr; S/MIME CA certificates.</li>
                <li><strong>Distribute user certificates:</strong> For small teams, manual upload via the Gmail settings page works. For any org over 20 users, use the Gmail API's <code>keypairs</code> endpoint to push certificates programmatically.</li>
            </ul>
            <p>Plan for six to twelve weeks end-to-end for a first deployment at a 50-plus-seat organization. Certificate procurement alone takes two to three weeks if you haven't worked with a CA before. Build in time to train users on what the lock icon in Gmail means and what to do when a message can't be encrypted because the recipient lacks a certificate.</p>

            <h2>What goes wrong</h2>
            <p>S/MIME deployments that start well often drift into problems six to eighteen months later. The most common failure modes:</p>
            <ul>
                <li><strong>Certificate expiry:</strong> S/MIME certificates typically expire after one or two years. Renewal is not automatic by default. When a certificate expires, the user loses the ability to decrypt messages encrypted to their old public key — and previously encrypted archived messages may become unreadable if the expired cert is not preserved.</li>
                <li><strong>Recipient doesn't have S/MIME:</strong> If the recipient's domain or mailbox has no certificate, Gmail falls back to TLS-only delivery — or in strict modes, may refuse to send. Users need to understand when a message is and isn't being encrypted, and why.</li>
                <li><strong>Mobile Gmail inconsistency:</strong> The Gmail iOS and Android apps support Hosted S/MIME for reading and composing encrypted messages, but the experience has historically been less reliable than desktop. Test your rollout on mobile before going live.</li>
                <li><strong>Certificate rotation without re-encryption:</strong> When a user's certificate is rotated (new key pair issued), old messages encrypted to the previous public key can only be decrypted with the old private key. If the old key isn't archived correctly, those messages are permanently unreadable.</li>
                <li><strong>eDiscovery gaps:</strong> In Hosted S/MIME mode, Vault can search and export encrypted messages because Google holds the keys. In traditional S/MIME mode, Vault cannot see message content — only metadata. This surprises legal teams who assumed Vault covered everything.</li>
            </ul>

            <h2>Bottom line</h2>
            <p>S/MIME is the right answer when a regulatory requirement, government contract, or explicit legal obligation demands certificate-based encryption. You accept the operational cost: PKI management, certificate lifecycle work, a license uplift to Enterprise tier, and ongoing support tickets from users who can't read encrypted messages on a new device.</p>
            <p>It is the wrong answer when leadership wants "more encryption" in a general sense. If the goal is reducing data risk broadly, a combination of <strong><a href="https://guanacostech.com/blog/blog-dlp">DLP rules</a></strong>, <strong><a href="https://guanacostech.com/blog/blog-vault">Google Vault retention policies</a></strong>, <strong>strong 2-step verification</strong>, and <strong>endpoint verification</strong> delivers more risk reduction per dollar than an S/MIME deployment for a team that doesn't face a hard regulatory mandate.</p>
            <p>Spend the S/MIME conversation answering one question first: does your compliance framework explicitly require encrypted email between mailboxes? If yes, you need S/MIME. If no, build your security stack from cheaper, higher-leverage controls first.</p>]]></content:encoded>
    </item>
    <item>
      <title>Google Workspace Shared Drives: why your team needs them</title>
      <link>https://guanacostech.com/blog/blog-shared-drives</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-shared-drives</guid>
      <pubDate>Sat, 21 Mar 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Teams &amp; Collaboration</category>
      <description><![CDATA[My Drive vs Shared Drives in Google Workspace: why files vanish when employees leave, and how to migrate your team to Shared Drives without losing data.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_shared_drives.jpg" alt="" /></p>
<p><a href="https://guanacostech.com/google-workspace">Google Workspace Shared Drives</a> are drastically different from 'My Drive'. In My Drive, files are owned by individuals. In Shared Drives, files are owned by the organization.</p>

<h2>Why you need to migrate today</h2>
<p>When an employee leaves and you delete their account, all files they created in My Drive are deleted too, unless you manually transfer ownership. With Shared Drives, this never happens.</p>

<h2>The Guanacos Tech Approach</h2>
<p>We help businesses map out their permissions and migrate data cleanly so everyone has exactly the access they need, with <a href="https://guanacostech.com/blog/blog-vault">zero data loss</a>.</p>]]></content:encoded>
    </item>
    <item>
      <title>Data Loss Prevention (DLP) for SMBs in Google Workspace</title>
      <link>https://guanacostech.com/blog/blog-dlp</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-dlp</guid>
      <pubDate>Sun, 15 Mar 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Security</category>
      <description><![CDATA[How to set up Data Loss Prevention in Google Workspace: scan Gmail, Drive, and Chat for credit cards, SSNs, and confidential data before they leak outside.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_dlp.jpg" alt="" /></p>
<p>Data Loss Prevention (DLP) isn't just for massive enterprise corporations. Small businesses handle <a href="https://guanacostech.com/blog/blog-security">sensitive customer data</a>, and a single leaked document can be fatal.</p>

<h2>How DLP Protects You</h2>
<p>Google Workspace DLP <a href="https://guanacostech.com/google-workspace">scans emails, Drive files, and Chat messages</a> for sensitive information like credit card numbers or custom keywords. It can automatically block the sharing of this data externally or warn the user.</p>

<h2>The Guanacos Tech Approach</h2>
<p>We configure DLP rules that are strict enough to <a href="https://guanacostech.com/blog/blog-vault">keep you compliant</a> and secure, but flexible enough that they don't break your team's workflow.</p>]]></content:encoded>
    </item>
    <item>
      <title>Why you should be using Chrome Enterprise Cloud Management</title>
      <link>https://guanacostech.com/blog/blog-chrome-management</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-chrome-management</guid>
      <pubDate>Sun, 08 Mar 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Device Management</category>
      <description><![CDATA[Chrome Enterprise Cloud Management lets you force updates, control extensions, and secure browsers across Windows, Mac, and ChromeOS from the Admin console.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_chrome_enterprise.jpg" alt="" /></p>
<p>While most admins focus on securing email and documents, the browser itself is often <a href="https://guanacostech.com/blog/blog-dbsc-cookie-theft">the biggest vulnerability</a>. Chrome Enterprise Cloud Management allows you to secure the browser your team uses every day.</p>

<h2>Centralized Control</h2>
<p>You can force essential extensions (like password managers), block malicious extensions, and ensure that the browser is always up-to-date across your entire fleet of Mac, Windows, and ChromeOS devices.</p>

<h2>The Guanacos Tech Approach</h2>
<p>We deploy Chrome policies from the <a href="https://guanacostech.com/google-workspace">Google Admin console</a> to ensure all company data accessed via browser is protected, without needing heavy MDM software.</p>]]></content:encoded>
    </item>
    <item>
      <title>The future of email trust: BIMI and DMARC</title>
      <link>https://guanacostech.com/blog/blog-bimi-dmarc</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-bimi-dmarc</guid>
      <pubDate>Sat, 28 Feb 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Email Deliverability</category>
      <description><![CDATA[How to get your company logo in Gmail: BIMI requires a strict DMARC policy. Learn how SPF, DKIM, and DMARC enforcement unlock BIMI and real inbox trust.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_bimi_dmarc.jpg" alt="" /></p>
<p>You've probably noticed that some companies have their official logo displayed directly in the Gmail inbox before you even open the email. This isn't a premium Google feature—it's an email authentication standard called BIMI.</p>

<h2>Brand Indicators for Message Identification (BIMI)</h2>
<p>BIMI requires your domain to have a <a href="https://guanacostech.com/dmarc-analyzer">strict DMARC policy</a> (p=quarantine or p=reject). Once you prove your domain is <a href="https://guanacostech.com/blog/blog-security">secure from spoofing</a>, mailbox providers reward you by displaying your verified logo.</p>

<h2>The Guanacos Tech Approach</h2>
<p>We specialize in cleaning up your <a href="https://guanacostech.com/header-analyzer">SPF, DKIM, and DMARC records</a> to get you to strict enforcement, paving the way for BIMI implementation and <a href="https://guanacostech.com/email-troubleshooter">maximum email deliverability</a>.</p>]]></content:encoded>
    </item>
    <item>
      <title>Google Vault: Why retention and eDiscovery are critical</title>
      <link>https://guanacostech.com/blog/blog-vault</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-vault</guid>
      <pubDate>Fri, 20 Feb 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Compliance</category>
      <description><![CDATA[Google Vault explained: set retention policies, place legal holds, and recover deleted email for eDiscovery in Workspace Business Plus and Enterprise.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_vault.jpg" alt="" /></p>
<p>If an employee deletes a crucial email and then empties their trash, that email is gone forever—unless you use Google Vault. Google Vault is a retention and eDiscovery tool natively integrated into <a href="https://guanacostech.com/google-workspace">Business Plus and Enterprise plans</a>.</p>

<h2>Retention Policies and Holds</h2>
<p>Vault allows you to set rules like "keep all emails for 5 years." Even if a user deletes an email, the admin can still retrieve it through Vault. You can also place legal holds on specific users to preserve their data indefinitely.</p>

<h2>The Guanacos Tech Approach</h2>
<p>We help you configure Vault properly so you're <a href="https://guanacostech.com/blog/blog-dlp">legally compliant</a> without hoarding unnecessary junk data forever, protecting you during HR disputes or legal inquiries.</p>]]></content:encoded>
    </item>
    <item>
      <title>Google Workspace + Gemini is becoming a real productivity assistant</title>
      <link>https://guanacostech.com/blog/blog-gemini-productivity</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-gemini-productivity</guid>
      <pubDate>Sat, 14 Feb 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Productivity</category>
      <description><![CDATA[Gemini in Google Workspace is becoming a daily assistant: smart replies in Gmail, document summaries in Drive, AI video in Vids. What it changes for SMBs.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_ai_gemini.jpg" alt="" /></p>
<p>Google keeps expanding <a href="https://guanacostech.com/blog/blog-gemini">Gemini features</a> directly inside Workspace (Gmail, Meet, Drive, Docs, Vids, etc.).
                This is something SMBs are curious about but still confused about. The shift is happening: AI is moving
                from being an "extra tool" you have to open separately, to a built-in assistant in your daily workflow.
            </p>

            <h2>What's actually changing?</h2>
            <p>It's not just about generating text anymore. Here is what is happening right now:</p>
            <ul>
                <li><strong>Personalized Smart Replies in Gmail:</strong> Forget generic three-word responses. Gemini is
                    rolling out context-aware, tone-aware replies that sound like you.</li>
                <li><strong>Document Summaries:</strong> Gemini can now summarize long documents in Drive and even
                    create audio overviews for you to listen to on the go.</li>
                <li><strong>Video Creation:</strong> With <a href="https://guanacostech.com/blog/blog-vids">Google Vids</a>, AI is helping teams generate training videos and
                    updates without needing a production crew.</li>
            </ul>

            <h2>The Guanacos Tech Perspective</h2>
            <p>At Guanacos Tech, we help businesses actually <strong>adopt AI</strong> inside <a href="https://guanacostech.com/google-workspace">Google Workspace</a> — not
                just enable it. Most companies turn on AI features but don't redesign their workflows, missing the real
                value.</p>
            <p>Real value comes from saving time on admin tasks. If getting a summary of a 50-page contract saves you 30
                minutes, that's real ROI. If drafting a client email takes 30 seconds instead of 10 minutes, that scales
                across your team.</p>]]></content:encoded>
    </item>
    <item>
      <title>Gemini Enterprise: The New Front Door for AI in the Workplace</title>
      <link>https://guanacostech.com/blog/blog-gemini</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-gemini</guid>
      <pubDate>Thu, 12 Feb 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Artificial Intelligence</category>
      <description><![CDATA[Duet AI is now Gemini Enterprise. What Google's business AI offers Workspace users: bigger context windows, side panel integration, and data protection.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/thumb-ai.jpg" alt="" /></p>
<p>If you've been following Google Workspace updates, you might be looking for "Duet AI." That name is
                officially retired. In late 2025, Google unified its powerful AI capabilities under the
                <strong>Gemini</strong> brand, launching <strong>Gemini Enterprise</strong> as the new standard for
                business AI.
            </p>

            <p>Gemini Enterprise isn't just a rebrand; it's a massive leap forward in capability, reasoning, and
                integration.</p>

            <h2>Why the change?</h2>
            <p>Google wanted to bring its most capable model, Gemini Ultra 1.0 (and now 1.5 Pro), directly to <a href="https://guanacostech.com/google-workspace">Workspace
                users</a>. Duet AI was great, but Gemini Enterprise is designed to be an <strong>agent</strong>—a partner
                that can execute complex, multi-step tasks across Gmail, Docs, Sheets, and Slides.</p>

            <h2>Key Features for Business</h2>
            <ul>
                <li><strong>Context Window</strong>: Gemini 1.5 Pro features a massive context window, allowing it to
                    "read" and reason across thousands of lines of code or hundreds of documents in seconds.</li>
                <li><strong>Side Panel Integration</strong>: It lives in the side panel of your favorite apps. In Gmail,
                    you can ask it to "summarize this thread and draft a reply." In Slides, it can "generate visuals for
                    this slide."</li>
                <li><strong>Enterprise-Grade Security</strong>: Unlike the consumer version of Gemini, the Enterprise
                    edition ensures your data is <strong>never</strong> used to train Google's models. Your IP remains
                    yours.</li>
            </ul>

            <h2>Is it worth the upgrade?</h2>
            <p>For teams that spend hours <a href="https://guanacostech.com/blog/blog-gemini-sheets">analyzing data</a> or drafting content, the ROI is immediate. The ability to
                ground Gemini's responses in your <em>own</em> company data (Drive files, emails) makes it far more
                useful than a generic chatbot.</p>

            <p>We're helping clients roll out Gemini Enterprise with <a href="https://guanacostech.com/google-cloud">proper data governance policies</a> in place. If you're
                interested in a pilot, let us know.</p>]]></content:encoded>
    </item>
    <item>
      <title>Biggest Google Workspace mistake SMBs make: Admin lockouts</title>
      <link>https://guanacostech.com/blog/blog-admin-lockouts</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-admin-lockouts</guid>
      <pubDate>Sun, 08 Feb 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Security Alert</category>
      <description><![CDATA[Locked out of the Google Workspace admin console? How to prevent 2FA lockouts with a backup super admin, recovery options, and a staged 2SV rollout.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_admin_lockouts.jpg" alt="" /></p>
<p>This is a REAL pain seen constantly in admin communities: "I enabled 2FA and locked out my entire
                company." It happens more often than you think.</p>

            <h2>Why does this happen?</h2>
            <p>Admins often try to enforce <a href="https://guanacostech.com/blog/blog-admin-hardening">security policies</a> (like 2-Step Verification) without a proper rollout plan.
                Or worse, they rely on a single Super Admin account. If that account <a href="https://guanacostech.com/blog/blog-dbsc-cookie-theft">gets compromised</a> or locked out due
                to a lost phone/key, the recovery process can be painfully slow and stressful.</p>

            <h2>Guanacos Tech Advice</h2>
            <p>We see this more than you’d think — security done wrong is just as dangerous as poor security. Here are a
                few quick best practices:</p>
            <ul>
                <li><strong>Backup Super Admin:</strong> Always have a secondary Super Admin account with a physical
                    security key stored in a safe place.</li>
                <li><strong>Recovery Methods:</strong> Ensure you have recovery options (phone, email) set up outside of
                    your Google Workspace environment.</li>
                <li><strong>Staged Rollout:</strong> Never Turn on 2SV for "Everything" at once. Use <a href="https://guanacostech.com/google-workspace">Organizational
                    Units (OUs)</a> to roll it out to IT first, then leadership, then the rest.</li>
            </ul>]]></content:encoded>
    </item>
    <item>
      <title>Gemini in Sheets is changing how small teams use data</title>
      <link>https://guanacostech.com/blog/blog-gemini-sheets</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-gemini-sheets</guid>
      <pubDate>Sun, 01 Feb 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Data &amp; Automation</category>
      <description><![CDATA[Gemini in Google Sheets analyzes multiple tables, writes formulas, and flags trends. How small teams build intelligent dashboards without a data analyst.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_sheets.jpg" alt="" /></p>
<p>This is a massive opportunity for <a href="https://guanacostech.com/blog/blog-gemini-productivity">SMB automation</a>. Historically, if you wanted deep insights from your
                data, you needed a data analyst or some serious Excel wizardry.</p>

            <h2>Gemini changes the game</h2>
            <p>With <a href="https://guanacostech.com/blog/blog-gemini">Gemini inside Sheets</a>, you can now analyze multiple tables at once. It can generate complex formulas
                for you, run multi-step data tasks, and even spot trends you might have missed.</p>

            <h2>Real SMB Use Cases</h2>
            <ul>
                <li><strong>Sales Pipelines:</strong> Ask Gemini to "Highlight deals that have been stalled for more
                    than 14 days" or "Project next month's revenue based on current close rates."</li>
                <li><strong>Inventory Management:</strong> "Create a formula to flag items with less than 10 units in
                    stock."</li>
                <li><strong>Finance Reporting:</strong> "Categorize these expenses and create a summary chart."</li>
            </ul>

            <p>You don't need a data analyst anymore for basic reporting — just the right setup. We help companies <a href="https://guanacostech.com/google-workspace">turn
                Google Sheets into intelligent dashboards</a>.</p>]]></content:encoded>
    </item>
    <item>
      <title>Google Meet + Microsoft Teams interoperability is finally improving</title>
      <link>https://guanacostech.com/blog/blog-meet-teams</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-meet-teams</guid>
      <pubDate>Wed, 28 Jan 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Collaboration</category>
      <description><![CDATA[Google Meet and Microsoft Teams interoperability is improving: Meet hardware joins Teams meetings and vice versa. How to set up cross-platform meetings.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_meet_teams.jpg" alt="" /></p>
<p>Hybrid environments are everywhere. Your team might <a href="https://guanacostech.com/google-workspace">use Workspace</a>, but your biggest client uses Teams. In
                the past, this meant fumbling with invites and browser links. That's changing.</p>

            <h2>What's improving?</h2>
            <p>Google and Microsoft are finally playing nice. Meet devices can now join Teams meetings, and vice versa,
                with much less friction. This move toward <a href="https://guanacostech.com/blog/blog-stay-updated">cross-platform collaboration</a> is a huge win for productivity in
                mixed environments.</p>

            <h2>Why this matters for your business</h2>
            <p>Your tools shouldn’t force your clients to change platforms. Mixed ecosystems are normal, and fighting
                against them is a losing battle.</p>
            <p>We help businesses set up smart configurations that avoid "meeting chaos." We ensure that when a client
                sends a Teams invite, your Google Meet hardware—and your team—can handle it seamlessly.</p>]]></content:encoded>
    </item>
    <item>
      <title>New Gmail Requirements &amp; The AI Security Add-on</title>
      <link>https://guanacostech.com/blog/blog-security</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-security</guid>
      <pubDate>Wed, 28 Jan 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Security Alert</category>
      <description><![CDATA[Gmail's 2026 sender requirements: DMARC is mandatory for bulk senders, SPF and DKIM must pass, and the AI Security Add-on hardens Gmail and Drive defenses.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/thumb-security.jpg" alt="" /></p>
<p>If you're noticing your open rates dropping or emails landing in spam, pay attention. In 2026, Google has
                tightened its <a href="https://guanacostech.com/blog/blog-bimi-dmarc">sender requirements</a> again, and a new tool called the <strong>AI Security Add-on</strong>
                is becoming essential for Enterprise users.</p>

            <h2>The new AI Security Add-on</h2>
            <p>Launched recently, this add-on for Google Workspace uses privacy-preserving AI models to automatically
                classify and protect sensitive files in Google Drive. But more importantly for email admins, it enhances
                spam and malware defenses in Gmail.</p>
            <p>It acts as a second layer of defense, identifying complex phishing attempts that standard filters might
                miss. If you handle sensitive financial or data assets, this add-on ($10/user/month) is a recommended
                upgrade.</p>

            <h2>DMARC is no longer optional</h2>
            <p>We've said it before, but it bears repeating: If you send bulk emails (5,000+ per day), you
                <strong>must</strong> have a <a href="https://guanacostech.com/dmarc-analyzer">DMARC policy</a> in place.
            </p>
            <ul>
                <li><strong><a href="https://guanacostech.com/header-analyzer">SPF & DKIM</a>:</strong> Must be valid.</li>
                <li><strong>DMARC:</strong> Must be set to at least <code>p=none</code> (monitoring), but ideally
                    <code>p=quarantine</code> or <code>p=reject</code>.
                </li>
                <li><strong>One-Click Unsubscribe:</strong> Marketing emails must support RFC-compliant headers for easy
                    unsubscribing.</li>
            </ul>

            <p>Don't know your DMARC status? Use our <a href="https://guanacostech.com/email-troubleshooter"
                    style="color: var(--gold); text-decoration: underline;">Free Deliverability Troubleshooter</a> to check your
                risk score instantly.</p>]]></content:encoded>
    </item>
    <item>
      <title>How to stay current with Google Workspace updates</title>
      <link>https://guanacostech.com/blog/blog-stay-updated</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-stay-updated</guid>
      <pubDate>Sun, 18 Jan 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Admin Guide</category>
      <description><![CDATA[How to keep up with Google Workspace updates without drowning: filter the release-notes firehose and track only the changes that affect your business.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_news.jpg" alt="" /></p>
<p>Admins constantly struggle with updates. Real community discussion confirms this: Google ships changes
                continuously, and many admins only discover them after something breaks.</p>

            <h2>The Firehose Problem</h2>
            <p>Following the official Workspace Blog blog is essential, but it can be a firehose of information. Not
                every update matters to every business. A change to Classroom doesn't affect a law firm, but a change to
                <a href="https://guanacostech.com/blog/blog-dlp">Drive sharing settings</a> definitely does.</p>

            <h2>Our Role</h2>
            <p>Our job at Guanacos Tech is to translate Google updates into what actually matters for your business. We
                act as the filter, focusing purely on the <a href="https://guanacostech.com/blog/blog-security">security and productivity changes</a> that affect SMBs.</p>]]></content:encoded>
    </item>
    <item>
      <title>Google Vids: The End of Boring Slide Decks?</title>
      <link>https://guanacostech.com/blog/blog-vids</link>
      <guid isPermaLink="true">https://guanacostech.com/blog/blog-vids</guid>
      <pubDate>Thu, 15 Jan 2026 12:00:00 +0000</pubDate>
      <dc:creator>Leonardo González</dc:creator>
      <category>Collaboration Tool</category>
      <description><![CDATA[Google Vids is generally available: an AI video creator in Workspace with storyboards, teleprompter mode, and AI voiceovers for training and team updates.]]></description>
      <content:encoded><![CDATA[<p><img src="https://guanacostech.com/blog/workspace_vids.jpg" alt="" /></p>
<p>Video is the new document. Whether it's a training update for HR, a pitch for a client, or a quarterly
                recap, we're all consuming more video content at work. Enter <strong>Google Vids</strong>, the newest
                app in the <a href="https://guanacostech.com/google-workspace">Workspace suite</a>, which is now generally available.</p>

            <p>Google Vids is an AI-powered video creation app designed specifically for work. And no, you don't need to
                be a video editor to use it.</p>

            <h2>"Help Me Create"</h2>
            <p>Simply type a prompt like "Create a sales training video for our new Q1 product line," and attach a
                related Google Doc. Vids will generate a storyboard, suggest scenes, stock footage, and background music
                instantly.</p>

            <h2>Features We Love</h2>
            <ul>
                <li><strong>Teleprompter Mode</strong>: Record yourself confidently with a scrolling script right on the
                    screen.</li>
                <li><strong>AI Voiceovers</strong>: Don't want to record your own voice? Choose from a library of
                    high-quality, natural-sounding AI voices to narrate your video.</li>
                <li><strong>Collaboration</strong>: Just like Docs and Sheets, you can comment, tag colleagues, and edit
                    Vids together in real-time.</li>
            </ul>

            <p>It sits alongside Docs, Sheets, and Slides as a <a href="https://guanacostech.com/blog/blog-gemini-productivity">core productivity tool</a>. If your team hasn't tried it yet,
                check your app launcher—it might already be there.</p>]]></content:encoded>
    </item>
  </channel>
</rss>
