<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <title>ELCSoftware – Blog</title>
  <subtitle>At ELCSoftware, we transform your ideas into innovative software solutions and applications.</subtitle>
  
  <link href="https://elcsoft.cl/en/blog/atom.xml" rel="self" type="application/atom+xml"/>
  
  <link href="https://elcsoft.cl/en/blog/" rel="alternate" type="text/html"/>
  <id>https://elcsoft.cl/en/blog/</id>
  <updated>2026-05-15T12:00:41-04:00</updated>
  <generator uri="https://gohugo.io/">Hugo 0.148.2</generator>
  

  
    
  

  
  <entry>
    <title>Python profiling.sampling in Chile: productivity, digital talent and better services</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/05/15/python-profiling-sampling-chile-productivity-talent/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/05/15/python-profiling-sampling-chile-productivity-talent/</id>
    <published>2026-05-15T09:40:00Z</published>
    <updated>2026-05-15T11:58:09-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/python-profiling-sampling-chile.avif" type="image/avif">
  <source srcset="/images/blog/tech/python-profiling-sampling-chile.webp" type="image/webp">
  <img src="/images/blog/tech/python-profiling-sampling-chile.webp" alt="Chile's digital ecosystem connected through mining, public services, health care and Python performance analysis" width="1672" height="941" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>At first glance, <a href="https://docs.python.org/3.15/library/profiling.sampling.html"target="_blank" rel="noopener"><code>profiling.sampling</code></a> looks like a feature meant only for Python developers. Its possible impact in Chile is broader than that. It touches productivity, infrastructure cost, digital service quality, technical training and the maturity of teams that already depend on software to operate banking, health care, mining, telecommunications, commerce, logistics and public administration.</p>
<p>The feature itself will not transform Chile&rsquo;s digital economy. Nor will it automatically make an organization efficient. What it does provide is a concrete answer to a common weakness: many institutions invest in digitalization without measuring precisely enough where their systems lose time. When a slow platform forces more servers, more support work or more human hours, the cost is not only technical. It is operational, budgetary and, in public services, civic.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/python-profiling-sampling-chile.avif" type="image/avif">
  <source srcset="/images/blog/tech/python-profiling-sampling-chile.webp" type="image/webp">
  <img src="/images/blog/tech/python-profiling-sampling-chile.webp" alt="Chile's digital ecosystem connected through mining, public services, health care and Python performance analysis" width="1672" height="941" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>At first glance, <a href="https://docs.python.org/3.15/library/profiling.sampling.html"target="_blank" rel="noopener"><code>profiling.sampling</code></a> looks like a feature meant only for Python developers. Its possible impact in Chile is broader than that. It touches productivity, infrastructure cost, digital service quality, technical training and the maturity of teams that already depend on software to operate banking, health care, mining, telecommunications, commerce, logistics and public administration.</p>
<p>The feature itself will not transform Chile&rsquo;s digital economy. Nor will it automatically make an organization efficient. What it does provide is a concrete answer to a common weakness: many institutions invest in digitalization without measuring precisely enough where their systems lose time. When a slow platform forces more servers, more support work or more human hours, the cost is not only technical. It is operational, budgetary and, in public services, civic.</p>
<p>This article keeps three layers separate. First, verified facts: what Python 3.15 adds, what Chile&rsquo;s digital-transformation framework promotes and which sectors appear in cybersecurity regulation. Second, interpretation: why a profiling tool can matter in Chilean industries. Third, reasonable projections: what may improve if more local teams treat performance engineering as routine practice rather than emergency response.</p>
<h2>The starting point: more digitalization demands better operation<span class="hx:absolute hx:-mt-20" id="the-starting-point-more-digitalization-demands-better-operation"></span>
    <a href="#the-starting-point-more-digitalization-demands-better-operation" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Chile is no longer deciding whether to digitalize administrative processes. The <a href="https://digital.gob.cl/transformacion-digital/ley-de-transformacion-digital/"target="_blank" rel="noopener">Digital Transformation of the State Law 21.180</a> pushes the full cycle of administrative procedures toward electronic form, with gradual implementation through December 2027. The official Digital Government site highlights electronic files, interoperability, notifications and secure platforms as part of that transition.</p>
<p>The practical consequence is simple: more procedures, files, validations and notifications now depend on software. If that software performs poorly, the failure is not just one sluggish screen. Citizen experience worsens, support burden rises, internal processes slow down and pressure on technology budgets increases.</p>
<p>The issue is not limited to government. Chile&rsquo;s <a href="https://www.diariooficial.interior.gob.cl/publicaciones/2024/04/08/43820/01/2475674.pdf"target="_blank" rel="noopener">Cybersecurity Framework Law 21.663</a> lists as essential services sectors such as energy, fuel, water, telecommunications, digital infrastructure, managed IT services, transport, banking, payment systems, social security, health care and pharmaceuticals. In those environments, availability, continuity and efficiency are not decorative concepts. A slow system can become an operational risk before it becomes a complete outage.</p>
<h2>Where Python fits into that context<span class="hx:absolute hx:-mt-20" id="where-python-fits-into-that-context"></span>
    <a href="#where-python-fits-into-that-context" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>There is no single public statistic showing what percentage of Chilean systems use Python, and it would be irresponsible to invent one. What can be said with confidence is that Python is part of the modern toolkit for development, analytics, automation, data science and AI. In Chile, initiatives such as <a href="https://talentodigitalparachile.cl/curso/programacion-full-stack-python-trainee/"target="_blank" rel="noopener">Talento Digital para Chile</a> even offer dedicated full-stack Python training, which is a useful signal of the language&rsquo;s relevance to local digital-skills development.</p>
<p>Where Python appears — APIs, ETL, automations, notebooks, backends, data models, pipelines or integration tasks — performance questions appear too. Those questions often mature late. First the system is built, then scaled, then users complain about slowness, and only afterward does someone ask which exact part consumes the time. <code>profiling.sampling</code> does not prevent that cycle on its own, but it lowers the barrier to measuring more intelligently when measurement becomes necessary.</p>
<h2>Productivity: less intuition, more evidence<span class="hx:absolute hx:-mt-20" id="productivity-less-intuition-more-evidence"></span>
    <a href="#productivity-less-intuition-more-evidence" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>In Chile, as elsewhere, engineering time is expensive. A week spent by several people chasing the wrong bottleneck has a cost that rarely shows up in a financial dashboard. If the chosen answer is simply to oversize infrastructure, the organization turns weak diagnosis into recurring expenditure.</p>
<p>The economic value of a sampling profiler is that it changes the order of the conversation. Before buying more capacity, rewriting an API or blaming a database, a team can inspect a real process and see where time concentrates. If the hotspot is serialization, repeated calculation, I/O waiting or GIL contention, later decisions will differ.</p>
<p>This matters especially for SMEs and smaller teams. Large organizations can sometimes absorb inefficiency through more hardware, consultants or headcount. A startup, a regional software shop or a small digital unit usually needs every improvement to count. Tooling included in Python&rsquo;s own distribution reduces dependence on external solutions and makes sophisticated practices more reachable for teams with tighter budgets.</p>
<h2>Digital government: performance as service quality<span class="hx:absolute hx:-mt-20" id="digital-government-performance-as-service-quality"></span>
    <a href="#digital-government-performance-as-service-quality" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Public digitalization should not be evaluated only by counting how many paper forms became online forms. It also matters whether the resulting service is reliable, fast and understandable. The official Digital Transformation page speaks explicitly about greater certainty, security and speed in service delivery. In that context, profiling is not decoration. It is an internal control mechanism.</p>
<p>A ministry, agency or municipality running a Python application could use profiles to investigate latency peaks, validate a migration, compare releases or document why a certain optimization improved a procedure. Not every public body needs to become a performance lab. It is enough that technology teams learn to distinguish three questions: what citizens experience, what service metrics show and which part of the code actually consumes time.</p>
<p>Recent OECD work on Chilean digital government has pointed to gaps in ICT investment risk management and noted that standardized mechanisms for identifying digital risks are not yet common across all public institutions. That observation concerns governance more broadly, not Python specifically. But the lesson carries over: repeatable and documented measurement usually produces better decisions than ad hoc reactions without comparable evidence.</p>
<h2>Chilean industries where the difference may be felt<span class="hx:absolute hx:-mt-20" id="chilean-industries-where-the-difference-may-be-felt"></span>
    <a href="#chilean-industries-where-the-difference-may-be-felt" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Mining and energy<span class="hx:absolute hx:-mt-20" id="mining-and-energy"></span>
    <a href="#mining-and-energy" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Chile has data-intensive operations in monitoring and automation. In mining or energy, Python may appear in analytics, predictive maintenance, sensor integration, batch processing or internal tools. If a pipeline runs longer than expected, the effect can range from wasted compute to delayed operational decisions. A sampler helps distinguish calculation cost from waiting, serialization or coordination overhead.</p>
<h3>Banking and payment systems<span class="hx:absolute hx:-mt-20" id="banking-and-payment-systems"></span>
    <a href="#banking-and-payment-systems" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Financial services combine response-time pressure, traceability and regulation. Not every critical component is written in Python, but many supporting layers can be: automation, scoring, reconciliation, back office, internal APIs or analysis. In those environments, a replayable profile helps both to solve incidents and to demonstrate that a regression was understood and corrected.</p>
<h3>Health care<span class="hx:absolute hx:-mt-20" id="health-care"></span>
    <a href="#health-care" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Hospitals, clinics and laboratories rely on systems with highly variable loads: schedules, results, imaging, integrations and notifications. The Cybersecurity Framework Law includes health care among essential services. When availability and timeliness matter, reducing real bottlenecks is part of resilient operation, even if profiling itself is not a legal requirement.</p>
<h3>Commerce, logistics and exportable software<span class="hx:absolute hx:-mt-20" id="commerce-logistics-and-exportable-software"></span>
    <a href="#commerce-logistics-and-exportable-software" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Companies selling software or digital services outside Chile also compete on operational quality. A faster application often requires less support and uses cloud infrastructure more efficiently. Introducing profiling earlier can become a quiet but cumulative advantage, especially when margins matter.</p>
<h2>Digital talent: teaching measurement, not only coding<span class="hx:absolute hx:-mt-20" id="digital-talent-teaching-measurement-not-only-coding"></span>
    <a href="#digital-talent-teaching-measurement-not-only-coding" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Technology education often rewards visible features. That is understandable: a new form can be shown; a well-interpreted profile is less obvious. Yet the difference between someone who “can code” and someone who can operate software in production appears when real behavior must be diagnosed.</p>
<p>Python training programs in Chile could benefit from teaching three habits early: measure before optimizing, distinguish benchmarking from profiling and document hypotheses with evidence. <code>timeit</code>, <code>profiling.tracing</code> and <code>profiling.sampling</code> now form a fairly clear pedagogical sequence inside Python itself. A student can first compare small snippets, then follow calls during development and finally inspect a live application through sampling.</p>
<p>That learning has labor-market value. Teams do not only need people who can write endpoints. They need people who can explain why an endpoint degraded, what evidence to ask for and how to verify that a fix was not accidental. In a market where digital skills are already a public-policy focus, that depth can differentiate talent.</p>
<h2>Regulation and compliance: indirect, but real<span class="hx:absolute hx:-mt-20" id="regulation-and-compliance-indirect-but-real"></span>
    <a href="#regulation-and-compliance-indirect-but-real" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>It would be wrong to claim that Law 21.663 requires the use of <code>profiling.sampling</code>. It does not. It would also be shortsighted to claim that the tool has no compliance relevance. The law defines cybersecurity around confidentiality, integrity, availability and resilience, and it requires ongoing risk management for covered institutions. Performance is not identical to security, but systems that saturate, fail or require improvised intervention can affect availability and continuity.</p>
<p>The correct connection is indirect: stronger observability, reproducible analysis and fewer bottlenecks help organizations operate more predictably. In regulated environments, recorded profiles may also become part of technical evidence in incidents or postmortems, provided they are governed properly because they can reveal internal software structure.</p>
<h2>What Chilean organizations should do<span class="hx:absolute hx:-mt-20" id="what-chilean-organizations-should-do"></span>
    <a href="#what-chilean-organizations-should-do" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>1. Add profiling to incident playbooks<span class="hx:absolute hx:-mt-20" id="1-add-profiling-to-incident-playbooks"></span>
    <a href="#1-add-profiling-to-incident-playbooks" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>If a Python service suffers recurrent latency, the team should already know who can capture a profile, with which clock, for how long and where the artifact is stored. Improvisation during a crisis usually creates incomparable data.</p>
<h3>2. Measure before scaling infrastructure<span class="hx:absolute hx:-mt-20" id="2-measure-before-scaling-infrastructure"></span>
    <a href="#2-measure-before-scaling-infrastructure" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Adding CPU or replicas may be right, but it should not be the only answer available. If the root cause is redundant work, a poor queue design or blocking, horizontal growth may hide cost without solving the problem.</p>
<h3>3. Teach performance engineering internally<span class="hx:absolute hx:-mt-20" id="3-teach-performance-engineering-internally"></span>
    <a href="#3-teach-performance-engineering-internally" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Not everyone needs to become a specialist. But developers, leads and SREs should share basic language: CPU time, wall time, hotspot, flame graph, GIL, benchmark and regression.</p>
<h3>4. Keep context with every profile<span class="hx:absolute hx:-mt-20" id="4-keep-context-with-every-profile"></span>
    <a href="#4-keep-context-with-every-profile" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Application version, release, load, sampling frequency, clock, duration and observed symptom should travel with the capture. A file without context is far less useful six months later.</p>
<h3>5. Separate facts from projections<span class="hx:absolute hx:-mt-20" id="5-separate-facts-from-projections"></span>
    <a href="#5-separate-facts-from-projections" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>If an optimization reduced runtime by 20% in a test, that is a local fact. Saying it will cut annual spend by 20% is a projection that needs more validation. Measurement discipline should extend to business claims too.</p>
<h2>Facts, interpretation and projections<span class="hx:absolute hx:-mt-20" id="facts-interpretation-and-projections"></span>
    <a href="#facts-interpretation-and-projections" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Verified facts<span class="hx:absolute hx:-mt-20" id="verified-facts"></span>
    <a href="#verified-facts" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>Python 3.15.0b1 documents <code>profiling.sampling</code> as a Tachyon-based statistical profiler for live Python processes.</li>
<li>Law 21.180 promotes electronic administrative procedures and full implementation is scheduled through December 2027.</li>
<li>Law 21.663 defines essential services that include digital infrastructure, managed IT, banking, health care, telecommunications and other critical sectors.</li>
<li>Talento Digital para Chile offers full-stack Python training.</li>
<li>OECD work has described digital-risk-governance gaps in Chile&rsquo;s public sector and the need for stronger mechanisms around digital investments.</li>
</ul>
<h3>Interpretation<span class="hx:absolute hx:-mt-20" id="interpretation"></span>
    <a href="#interpretation" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>As more public and private processes depend on software, the ability to diagnose performance stops being purely technical and starts influencing productivity and service quality.</li>
<li>A standard, low-friction tool can encourage adoption among teams that previously viewed profiling as something reserved for specialists.</li>
</ul>
<h3>Reasonable projections<span class="hx:absolute hx:-mt-20" id="reasonable-projections"></span>
    <a href="#reasonable-projections" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>Performance engineering is likely to become more valuable in development, data and SRE roles as Chilean organizations mature their digital operations.</li>
<li>Public bodies and vendors that document technical decisions more carefully may reduce support cost and improve continuity, although the result will depend on process, culture and budget, not on a single tool.</li>
</ul>
<h2>Conclusion<span class="hx:absolute hx:-mt-20" id="conclusion"></span>
    <a href="#conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The value of <code>profiling.sampling</code> for Chile is not in a grand promise. It is in something more modest and more useful: helping teams that already build and operate software observe better before deciding. In a country that is digitalizing procedures, training talent and relying increasingly on connected critical services, that capability has economic, institutional and human value.</p>
<p>The opportunity is to make performance a normal practice. Do not wait for the application to collapse. Do not confuse intuition with diagnosis. Do not treat optimization as a luxury left for later. If Python 3.15 helps normalize that culture, the feature may look small while its cumulative effect is not.</p>
<h2>FAQ<span class="hx:absolute hx:-mt-20" id="faq"></span>
    <a href="#faq" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Is this tool relevant only to large Chilean companies?<span class="hx:absolute hx:-mt-20" id="is-this-tool-relevant-only-to-large-chilean-companies"></span>
    <a href="#is-this-tool-relevant-only-to-large-chilean-companies" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>No. Large organizations can benefit, but smaller teams also gain because profiling reduces wasted time and helps prioritize improvements with evidence.</p>
<h3>Does Chilean regulation require profilers?<span class="hx:absolute hx:-mt-20" id="does-chilean-regulation-require-profilers"></span>
    <a href="#does-chilean-regulation-require-profilers" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>No. The relationship is indirect: better observability and operation support availability and continuity, which are present in the regulatory framework.</p>
<h3>Why discuss digital talent in an article about profiling?<span class="hx:absolute hx:-mt-20" id="why-discuss-digital-talent-in-an-article-about-profiling"></span>
    <a href="#why-discuss-digital-talent-in-an-article-about-profiling" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Because training people who can measure and diagnose systems creates more value than training people who only write new code.</p>
<h3>Is it useful only for web services?<span class="hx:absolute hx:-mt-20" id="is-it-useful-only-for-web-services"></span>
    <a href="#is-it-useful-only-for-web-services" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>No. It can help with APIs, pipelines, automations, data analysis, batch jobs and other Python workloads.</p>
<h3>What should organizations do first?<span class="hx:absolute hx:-mt-20" id="what-should-organizations-do-first"></span>
    <a href="#what-should-organizations-do-first" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Define when profiles are captured, how context is preserved and how findings connect to product, infrastructure and training decisions.</p>
<h2>Sources<span class="hx:absolute hx:-mt-20" id="sources"></span>
    <a href="#sources" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><a href="https://docs.python.org/3.15/library/profiling.sampling.html"target="_blank" rel="noopener">Python 3.15: <code>profiling.sampling</code></a>.</li>
<li><a href="https://peps.python.org/pep-0799/"target="_blank" rel="noopener">PEP 799: dedicated <code>profiling</code> package</a>.</li>
<li><a href="https://digital.gob.cl/transformacion-digital/ley-de-transformacion-digital/"target="_blank" rel="noopener">Digital Transformation of the State Law 21.180</a>.</li>
<li><a href="https://www.diariooficial.interior.gob.cl/publicaciones/2024/04/08/43820/01/2475674.pdf"target="_blank" rel="noopener">Cybersecurity Framework Law 21.663</a>.</li>
<li><a href="https://talentodigitalparachile.cl/curso/programacion-full-stack-python-trainee/"target="_blank" rel="noopener">Talento Digital para Chile: Full Stack Python Trainee</a>.</li>
<li><a href="https://www.oecd.org/en/publications/digital-government-in-chile_d1b72d93-en/full-report/strategic-planning-of-digital-government-investments_4b391580.html"target="_blank" rel="noopener">OECD: Digital Government in Chile — strategic planning of digital government investments</a>.</li>
</ul>
]]></content>
  </entry>
  
  <entry>
    <title>Python profiling.sampling: technical guide to Tachyon, GIL, flame graphs and production profiles</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/05/15/python-profiling-sampling-technical-guide-tachyon/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/05/15/python-profiling-sampling-technical-guide-tachyon/</id>
    <published>2026-05-15T09:20:00Z</published>
    <updated>2026-05-15T11:58:09-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/python-profiling-sampling-tecnico.avif" type="image/avif">
  <source srcset="/images/blog/tech/python-profiling-sampling-tecnico.webp" type="image/webp">
  <img src="/images/blog/tech/python-profiling-sampling-tecnico.webp" alt="Technical visualization of sampled profiles with flame graphs, heatmaps, threads and GIL analysis" width="1672" height="941" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Python 3.15 adds a meaningful new surface for performance engineering: <a href="https://docs.python.org/3.15/library/profiling.sampling.html"target="_blank" rel="noopener"><code>profiling.sampling</code></a>, a Tachyon-based statistical profiler that can attach to live Python processes, sample them with different clocks and expose both interactive and replayable views. It is not merely “another profiler.” It changes how standard Python tooling can participate in production debugging, postmortem analysis and shared performance workflows.</p>
<p>This article assumes familiarity with CPU profiling, call stacks, the GIL, concurrency and production services. The goal is not to repeat command help. It is to place <code>profiling.sampling</code> on the technical map: what model it uses, which decisions its flags imply, when to prefer it over tracing, which biases sampling still carries and how to integrate it without turning every performance incident into an unrepeatable one-off capture.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/python-profiling-sampling-tecnico.avif" type="image/avif">
  <source srcset="/images/blog/tech/python-profiling-sampling-tecnico.webp" type="image/webp">
  <img src="/images/blog/tech/python-profiling-sampling-tecnico.webp" alt="Technical visualization of sampled profiles with flame graphs, heatmaps, threads and GIL analysis" width="1672" height="941" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Python 3.15 adds a meaningful new surface for performance engineering: <a href="https://docs.python.org/3.15/library/profiling.sampling.html"target="_blank" rel="noopener"><code>profiling.sampling</code></a>, a Tachyon-based statistical profiler that can attach to live Python processes, sample them with different clocks and expose both interactive and replayable views. It is not merely “another profiler.” It changes how standard Python tooling can participate in production debugging, postmortem analysis and shared performance workflows.</p>
<p>This article assumes familiarity with CPU profiling, call stacks, the GIL, concurrency and production services. The goal is not to repeat command help. It is to place <code>profiling.sampling</code> on the technical map: what model it uses, which decisions its flags imply, when to prefer it over tracing, which biases sampling still carries and how to integrate it without turning every performance incident into an unrepeatable one-off capture.</p>
<h2>From <code>profiling</code> as a package to Tachyon as the backend<span class="hx:absolute hx:-mt-20" id="from-profiling-as-a-package-to-tachyon-as-the-backend"></span>
    <a href="#from-profiling-as-a-package-to-tachyon-as-the-backend" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><a href="https://peps.python.org/pep-0799/"target="_blank" rel="noopener"><code>PEP 799</code></a> formalized a transition that had been building for years. Rather than leaving profiling tools scattered under historical names, Python now introduces a dedicated <code>profiling</code> package, adds <code>profiling.tracing</code> as the modern replacement for legacy deterministic profilers and uses <code>profiling.sampling</code> for low-intrusion statistical work. The <a href="https://docs.python.org/3.15/library/profile.html"target="_blank" rel="noopener"><code>profile</code></a> documentation already reflects that split: <code>profile</code> is deprecated in 3.15, <code>profiling.tracing</code> is recommended for development and tests, and <code>profiling.sampling</code> for production debugging.</p>
<p>The sampling backend is Tachyon. The documented interface is intentionally CLI-oriented and artifact-oriented: attach, observe, record and replay. That tells us something about the expected use case. This is process inspection tooling, not merely a helper around a function call in a benchmark harness.</p>
<p>The documentation also states that the profiled process runs “without overhead” because it does not require instrumentation. The accurate reading is narrower than the slogan. The sampler itself still consumes resources as an external process and observation is never physically free. What disappears is in-process event-hook overhead, the very cost that makes deterministic tracers harder to use against live production workloads without changing the thing being measured.</p>
<h2>Capture model: attach, permissions and operational boundaries<span class="hx:absolute hx:-mt-20" id="capture-model-attach-permissions-and-operational-boundaries"></span>
    <a href="#capture-model-attach-permissions-and-operational-boundaries" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The profiler attaches to an existing process by PID. The canonical example is:</p>
<div class="hextra-code-block hx:relative hx:mt-6 hx:first:mt-0 hx:group/code">

<div><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">python -m profiling.sampling live &lt;pid&gt;</span></span></code></pre></div></div><div class="hextra-code-copy-btn-container hx:opacity-0 hx:transition hx:group-hover/code:opacity-100 hx:flex hx:gap-1 hx:absolute hx:m-[11px] hx:right-0 hx:top-0">
  <button
    class="hextra-code-copy-btn hx:group/copybtn hx:cursor-pointer hx:transition-all hx:active:opacity-50 hx:bg-primary-700/5 hx:border hx:border-black/5 hx:text-gray-600 hx:hover:text-gray-900 hx:rounded-md hx:p-1.5 hx:dark:bg-primary-300/10 hx:dark:border-white/10 hx:dark:text-gray-400 hx:dark:hover:text-gray-50"
    title="Copy code"
  >
    <div class="hextra-copy-icon hx:group-[.copied]/copybtn:hidden hx:pointer-events-none hx:h-4 hx:w-4"></div>
<div class="hextra-success-icon hx:hidden hx:group-[.copied]/copybtn:block hx:pointer-events-none hx:h-4 hx:w-4"></div>
  </button>
</div>
</div>
<p>The user needs the right permissions; attaching to another user&rsquo;s process may require administrative privilege. That is not a footnote for production. Mature usage should define who is allowed to attach, on which hosts, how artifacts are retained and how the action is audited. A profiler that can inspect stack data is operationally powerful and should be governed like other diagnostic capabilities.</p>
<p>The command families are well chosen: <code>live</code> for interactive exploration, <code>top</code> for terminal summaries, <code>record</code> for persisted captures and <code>replay</code> for later review. In real incidents, <code>record</code> plus <code>replay</code> is usually the most defensible workflow. It preserves evidence, supports comparison, allows collaboration and survives after the spike or worker process is gone.</p>
<h2>Clocks: <code>cpu</code> and <code>wall</code> answer different questions<span class="hx:absolute hx:-mt-20" id="clocks-cpu-and-wall-answer-different-questions"></span>
    <a href="#clocks-cpu-and-wall-answer-different-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The <code>--clock</code> option carries more semantic weight than many users expect. <code>cpu</code> samples actual CPU execution. <code>wall</code> samples elapsed real time, which means waiting, blocking and time off-CPU remain visible. Choosing the wrong clock can produce a technically correct answer to the wrong operational question.</p>
<p>If an API is slow because compression saturates cores, a CPU profile is likely to show the hotspot directly. If it is slow because threads wait on a database, a queue, a mutex or an external dependency, wall time is closer to the latency users experience. For mixed systems, capturing both is often more useful than arguing about which one is “the real profile.”</p>
<p>The <code>--subprocesses</code> option, documented for <code>wall</code>, matters for modern Python deployments. Workers, pools, helper binaries and hybrid architectures often push work into child processes. A profile that ignores children may describe only the most visible part of the cost rather than the total cost perceived by the request path.</p>
<h2>Sampling frequency: resolution, cost and stability<span class="hx:absolute hx:-mt-20" id="sampling-frequency-resolution-cost-and-stability"></span>
    <a href="#sampling-frequency-resolution-cost-and-stability" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><code>profiling.sampling</code> exposes <code>--frequency</code>, with a documented default of 100 Hz and an allowed range from 1 to 1000 Hz. More samples are not automatically better analysis.</p>
<p>At 100 Hz, a 30-second capture yields roughly 3000 observations, usually enough to expose stable hot paths in services with persistent behavior. Raising the frequency may help with shorter events or finer temporal resolution, but it increases data volume and system perturbation. Lowering it may be enough for long-running workloads where only a coarse distribution is needed. The right choice depends on the lifetime of the phenomenon under study, not on a reflex that says “higher must be safer.”</p>
<p>Sampling bias still exists. Very short work, bursts aligned with the sampling period or workload changes during the window can be missed or overrepresented. A beautiful flame graph does not rescue a poor capture. Repetition, multiple windows and correlation with service metrics remain part of good engineering practice.</p>
<h2>Views: when to use <code>flamegraph</code>, <code>heatmap</code>, <code>gil</code>, <code>functions</code> and <code>stack</code><span class="hx:absolute hx:-mt-20" id="views-when-to-use-flamegraph-heatmap-gil-functions-and-stack"></span>
    <a href="#views-when-to-use-flamegraph-heatmap-gil-functions-and-stack" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Each view is useful when it matches the question.</p>
<h3><code>flamegraph</code><span class="hx:absolute hx:-mt-20" id="flamegraph"></span>
    <a href="#flamegraph" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>This is the strongest first view for hierarchy and concentration. Width represents sample frequency; height represents stack depth. It is excellent for spotting unexpected wide paths, serialization layers, parsers, framework wrappers or business loops that dominate a request. It is also the most communicable view when another team needs to understand where the time enters the system.</p>
<h3><code>heatmap</code><span class="hx:absolute hx:-mt-20" id="heatmap"></span>
    <a href="#heatmap" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The heatmap is best when behavior changes over time: warm-up, garbage collection, batch phases, startup effects, periodic degradation or load bursts. Aggregates can flatten those transitions; a heatmap exposes them.</p>
<h3><code>gil</code><span class="hx:absolute hx:-mt-20" id="gil"></span>
    <a href="#gil" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The GIL view helps surface functions that hold the interpreter lock for a meaningful share of the capture. In multi-threaded code, it separates “we have threads” from “we obtain useful parallel progress.” It does not replace architecture analysis, but it shortens the search when interpreter contention is part of the problem.</p>
<h3><code>functions</code><span class="hx:absolute hx:-mt-20" id="functions"></span>
    <a href="#functions" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The flat table is excellent for sorting, comparing and communicating priorities: user, library or system functions; self time versus aggregate contribution; direct cost versus caller-driven cost. It carries less causal context than a flame graph, but it is fast and operationally convenient.</p>
<h3><code>stack</code><span class="hx:absolute hx:-mt-20" id="stack"></span>
    <a href="#stack" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The stack view is appropriate when an immediate thread-by-thread snapshot matters more than aggregate statistics: live waiting, blocking inspection or a quick operational read.</p>
<h2>The GIL: what the tool can show and what it cannot decide<span class="hx:absolute hx:-mt-20" id="the-gil-what-the-tool-can-show-and-what-it-cannot-decide"></span>
    <a href="#the-gil-what-the-tool-can-show-and-what-it-cannot-decide" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The module makes a recurring Python question more approachable: “Are we limited by the GIL?” The <code>gil</code> view can reveal functions that hold the lock for a high share of the profile. That is useful when CPU-bound work runs inside threads, native extensions fail to release the lock or portions of code serialize progress unexpectedly.</p>
<p>But the conclusion is not automatic. A high GIL share alone does not prove the system should move to processes, asyncio or native extensions. First correlate it with throughput, latency, CPU utilization, queue depth and the actual service objective. In some I/O-bound workloads the signal may be unimportant. In others, one CPU-heavy hotspot explains nearly all scaling failure.</p>
<p><code>profiling.sampling</code> is strongest when combined with metrics and, when needed, targeted instrumentation such as <a href="https://docs.python.org/3.15/library/sys.monitoring.html"target="_blank" rel="noopener"><code>sys.monitoring</code></a> or controlled tracing. Sampling tells you where to look. Directed instrumentation helps prove a narrower hypothesis.</p>
<h2>How it compares with <code>profiling.tracing</code>, <code>timeit</code> and observability<span class="hx:absolute hx:-mt-20" id="how-it-compares-with-profilingtracing-timeit-and-observability"></span>
    <a href="#how-it-compares-with-profilingtracing-timeit-and-observability" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Python 3.15 makes the tool split clearer:</p>
<ul>
<li><strong><code>profiling.sampling</code></strong>: live-process inspection, low intrusion, production suitability, time distribution and hot paths.</li>
<li><strong><code>profiling.tracing</code></strong>: deterministic call-level detail, strong for development, tests and controlled analysis.</li>
<li><strong><a href="https://docs.python.org/3.15/library/timeit.html"target="_blank" rel="noopener"><code>timeit</code></a></strong>: repeatable micro-comparisons, not whole-system diagnosis.</li>
<li><strong>Metrics, logs and distributed traces</strong>: service behavior, component correlation and request-level context.</li>
</ul>
<p>The classic mistake is trying to make one tool answer every question. A better workflow chains them. A latency alert leads to metrics. Metrics show CPU rising in one worker pool. A sampling profile identifies a hot path. A controlled trace or <code>timeit</code> experiment validates the refactor. Deployment is then confirmed by metrics again.</p>
<h2>Profile files, reproducibility and data governance<span class="hx:absolute hx:-mt-20" id="profile-files-reproducibility-and-data-governance"></span>
    <a href="#profile-files-reproducibility-and-data-governance" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><code>record</code> writes a binary profile and <code>replay</code> opens it later. That sounds like convenience, but in larger organizations it changes analysis quality. A recorded profile can be attached to a ticket, compared across releases, reviewed by another engineer and preserved as evidence of a regression.</p>
<p>Profiles can still expose module names, paths, symbols, function structure and architectural clues. They should not be treated as harmless logs. If stored outside the original environment, they belong under access, classification and retention policies. In regulated environments, an artifact may contain no personal data and still reveal sensitive implementation detail.</p>
<h2>Sensible production integration<span class="hx:absolute hx:-mt-20" id="sensible-production-integration"></span>
    <a href="#sensible-production-integration" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>A mature integration does not mean leaving sampling on all the time. It means defining triggers and procedures.</p>
<ul>
<li>Capture during sustained latency incidents or reproducible regressions.</li>
<li>Use short, declared windows with a frequency appropriate to the phenomenon.</li>
<li>Record Python version, application release, host, clock, frequency, duration and approximate load.</li>
<li>Store the profile beside contextual metrics so it is not interpreted without a baseline.</li>
<li>Repeat the capture after the fix to demonstrate effect rather than rely on intuition.</li>
</ul>
<p>In Kubernetes or ephemeral platforms, teams also need to decide where the tool lives: a privileged diagnostic container, a controlled node session or a temporary sidecar model, depending on policy. The Python documentation defines profiler semantics. Operational architecture remains the team&rsquo;s responsibility.</p>
<h2>Interpretation traps<span class="hx:absolute hx:-mt-20" id="interpretation-traps"></span>
    <a href="#interpretation-traps" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Five common mistakes recur:</p>
<ol>
<li><strong>Mistaking width for guilt.</strong> A wide function may represent necessary work, not inefficient work.</li>
<li><strong>Ignoring workload realism.</strong> A profile taken under unrealistic traffic describes another system.</li>
<li><strong>Comparing incompatible captures.</strong> Changing clock, frequency or window and then comparing percentages as if nothing changed is fragile analysis.</li>
<li><strong>Optimizing self time without looking at callers.</strong> Sometimes the issue is how often a function is invoked, not how it is implemented locally.</li>
<li><strong>Treating one capture as a verdict.</strong> In performance work, repetition and context matter more than one dramatic image.</li>
</ol>
<h2>Facts, interpretation and projections<span class="hx:absolute hx:-mt-20" id="facts-interpretation-and-projections"></span>
    <a href="#facts-interpretation-and-projections" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Verified facts<span class="hx:absolute hx:-mt-20" id="verified-facts"></span>
    <a href="#verified-facts" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>Python 3.15.0b1 documentation describes <code>profiling.sampling</code> as a Tachyon-based statistical profiler.</li>
<li>The tool supports <code>live</code>, <code>top</code>, <code>record</code> and <code>replay</code>; <code>cpu</code> and <code>wall</code>; and the views <code>flamegraph</code>, <code>heatmap</code>, <code>gil</code>, <code>functions</code> and <code>stack</code>.</li>
<li><code>PEP 799</code> created the <code>profiling</code> package and reorganized the modern profiler stack under it.</li>
<li><code>profile</code> is deprecated in 3.15 and <code>cProfile</code> remains a backward-compatible alias of <code>profiling.tracing</code>.</li>
</ul>
<h3>Technical interpretation<span class="hx:absolute hx:-mt-20" id="technical-interpretation"></span>
    <a href="#technical-interpretation" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>The main shift is not merely the presence of a sampler, but an officially documented path for inspecting production processes without relying exclusively on external tools.</li>
<li>The <code>record</code> and <code>replay</code> workflow encourages reproducibility and collaborative review, two historically weak points in ad hoc performance investigations.</li>
</ul>
<h3>Reasonable projections<span class="hx:absolute hx:-mt-20" id="reasonable-projections"></span>
    <a href="#reasonable-projections" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>If the API and formats stabilize well during the 3.15 cycle, internal tools, SRE playbooks and incident docs are likely to standardize around replayable profiles.</li>
<li>The new package may also become a clearer educational entry point for separating benchmarking, tracing and sampling inside Python.</li>
</ul>
<h2>Conclusion<span class="hx:absolute hx:-mt-20" id="conclusion"></span>
    <a href="#conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><code>profiling.sampling</code> fills a real gap between high-level observability and detailed tracing. For performance engineering, its value lies in reduced friction: attach, sample, persist, replay and discuss the same artifact. It does not remove statistical bias or replace judgment, but it reduces dependence on intuition, irreproducible captures and heterogeneous tooling.</p>
<p>The practical recommendation is straightforward. Use it for live-process distribution questions and hot paths. Keep <code>profiling.tracing</code> for controlled detail. Use <code>timeit</code> for micro-decisions. And preserve operational context around every capture. A good profiler does not replace a good method; it makes that method more effective.</p>
<h2>FAQ<span class="hx:absolute hx:-mt-20" id="faq"></span>
    <a href="#faq" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Does <code>profiling.sampling</code> replace <code>cProfile</code>?<span class="hx:absolute hx:-mt-20" id="does-profilingsampling-replace-cprofile"></span>
    <a href="#does-profilingsampling-replace-cprofile" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Not entirely. <code>cProfile</code> remains available as a backward-compatible alias of <code>profiling.tracing</code>. Sampling and tracing answer different questions.</p>
<h3>Which clock should I use first?<span class="hx:absolute hx:-mt-20" id="which-clock-should-i-use-first"></span>
    <a href="#which-clock-should-i-use-first" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Start with <code>cpu</code> when you suspect CPU consumption. Capture <code>wall</code> too when investigating user-visible latency, waiting or blocking.</p>
<h3>Is 100 Hz always enough?<span class="hx:absolute hx:-mt-20" id="is-100-hz-always-enough"></span>
    <a href="#is-100-hz-always-enough" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Not always, but it is a sensible starting point. Adjust based on event duration, acceptable cost and the resolution you need.</p>
<h3>Can I attach it to any process?<span class="hx:absolute hx:-mt-20" id="can-i-attach-it-to-any-process"></span>
    <a href="#can-i-attach-it-to-any-process" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Only when the operating system allows access. Python documents that inspecting processes owned by another user may require administrative privilege.</p>
<h3>Does the <code>gil</code> view prove I should abandon threads?<span class="hx:absolute hx:-mt-20" id="does-the-gil-view-prove-i-should-abandon-threads"></span>
    <a href="#does-the-gil-view-prove-i-should-abandon-threads" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>No. It shows GIL-holding concentration. Architectural decisions still require throughput, latency and workload analysis.</p>
<h2>Sources<span class="hx:absolute hx:-mt-20" id="sources"></span>
    <a href="#sources" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><a href="https://docs.python.org/3.15/library/profiling.sampling.html"target="_blank" rel="noopener">Python 3.15: <code>profiling.sampling</code></a>.</li>
<li><a href="https://peps.python.org/pep-0799/"target="_blank" rel="noopener">PEP 799: A dedicated profiling package</a>.</li>
<li><a href="https://docs.python.org/3.15/library/profile.html"target="_blank" rel="noopener">Python 3.15: <code>profile</code> and migration to <code>profiling.tracing</code></a>.</li>
<li><a href="https://docs.python.org/3.15/library/sys.monitoring.html"target="_blank" rel="noopener">Python 3.15: <code>sys.monitoring</code></a>.</li>
<li><a href="https://docs.python.org/3.15/library/timeit.html"target="_blank" rel="noopener">Python 3.15: <code>timeit</code></a>.</li>
<li><a href="https://www.brendangregg.com/flamegraphs.html"target="_blank" rel="noopener">Brendan Gregg: Flame Graphs</a>.</li>
</ul>
]]></content>
  </entry>
  
  <entry>
    <title>Python profiling.sampling explained: how to find slowness without guessing</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/05/15/python-profiling-sampling-explained-without-jargon/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/05/15/python-profiling-sampling-explained-without-jargon/</id>
    <published>2026-05-15T09:00:00Z</published>
    <updated>2026-05-15T11:58:09-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/python-profiling-sampling-no-tecnico.avif" type="image/avif">
  <source srcset="/images/blog/tech/python-profiling-sampling-no-tecnico.webp" type="image/webp">
  <img src="/images/blog/tech/python-profiling-sampling-no-tecnico.webp" alt="Editorial illustration of a Python program observed through periodic samples to detect slowness" width="1672" height="941" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>When an application becomes slow, the same temptation appears almost every time: blame the part that looks suspicious. The database query. The server. The framework. The newest dependency. Intuition occasionally wins, but just as often it moves the discussion away from the real cause. Performance does not improve because a theory is defended more confidently. It improves when a team can see where time is actually going.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/python-profiling-sampling-no-tecnico.avif" type="image/avif">
  <source srcset="/images/blog/tech/python-profiling-sampling-no-tecnico.webp" type="image/webp">
  <img src="/images/blog/tech/python-profiling-sampling-no-tecnico.webp" alt="Editorial illustration of a Python program observed through periodic samples to detect slowness" width="1672" height="941" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>When an application becomes slow, the same temptation appears almost every time: blame the part that looks suspicious. The database query. The server. The framework. The newest dependency. Intuition occasionally wins, but just as often it moves the discussion away from the real cause. Performance does not improve because a theory is defended more confidently. It improves when a team can see where time is actually going.</p>
<p>Python 3.15 now documents a new tool called <a href="https://docs.python.org/3.15/library/profiling.sampling.html"target="_blank" rel="noopener"><code>profiling.sampling</code></a>, powered by Tachyon, that helps answer that exact question. Instead of recording every single step a program takes, it samples the program periodically and then builds a broader picture. It is a little like looking at a city from a helicopter every few seconds: you do not hear every conversation inside every building, but you can still discover where traffic keeps accumulating.</p>
<p>This article is for product leaders, managers, founders, analysts and people who work near software without writing code all day. The goal is not to memorize commands. It is to understand what a profiler does, why statistical sampling is useful and how better measurement can save time, infrastructure and bad decisions.</p>
<h2>What it means to profile a program<span class="hx:absolute hx:-mt-20" id="what-it-means-to-profile-a-program"></span>
    <a href="#what-it-means-to-profile-a-program" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Profiling means measuring how a program spends resources while it runs. That is different from timing a single isolated task. If someone asks how long a recipe takes, one answer is “45 minutes.” If they want to improve the process, they need to know how much time goes into chopping, mixing, baking, waiting and cleaning. A profiler provides that second kind of answer for software.</p>
<p>Python&rsquo;s official documentation distinguishes deterministic profiling from statistical profiling. A deterministic profiler watches events such as function calls and returns. It can provide very detailed information, but it follows execution closely. A statistical profiler takes periodic samples of where the program is and infers where time is concentrated. The <a href="https://docs.python.org/3.15/library/profile.html"target="_blank" rel="noopener"><code>profile</code></a> documentation, now marked as deprecated in Python 3.15, explains that statistical profiling traditionally introduces less overhead because it does not need to instrument everything the program does.</p>
<p>The key word is <strong>sample</strong>. This is not guessing. It is repeated observation. If hundreds of observations keep finding the application in the same operation, that operation deserves attention. It may still be necessary work, but the conversation has moved from intuition to evidence.</p>
<h2>What <code>profiling.sampling</code> adds<span class="hx:absolute hx:-mt-20" id="what-profilingsampling-adds"></span>
    <a href="#what-profilingsampling-adds" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Python 3.15 describes <code>profiling.sampling</code> as a statistical profiler for running Python processes. It can attach to a process that is already alive, collect a profile over time and expose several views: an interactive dashboard, stack views, function tables, heatmaps, flame graphs, GIL analysis and later replay from a recorded file.</p>
<p>For non-specialists, three ideas matter most:</p>
<ol>
<li><strong>It can inspect a live application.</strong> You do not need to rewrite the program or stop it just to start learning from it.</li>
<li><strong>It looks for patterns, not anecdotes.</strong> One snapshot can mislead. Hundreds or thousands of samples reveal where time consistently accumulates.</li>
<li><strong>It separates symptoms from causes.</strong> A slow screen may come from business logic, network waiting, locking or interpreter contention. A profile helps tell those stories apart.</li>
</ol>
<p>The documentation describes the tool as useful for production debugging with “zero overhead” on the profiled process. That phrase deserves careful reading. It means the target process does not need to be instrumented or restarted. It does not mean observation is magically free everywhere. The profiler runs separately, samples from outside and is therefore usually much less intrusive than tools that intercept every execution event.</p>
<h2>A simple analogy: traffic cameras versus a permanent detective<span class="hx:absolute hx:-mt-20" id="a-simple-analogy-traffic-cameras-versus-a-permanent-detective"></span>
    <a href="#a-simple-analogy-traffic-cameras-versus-a-permanent-detective" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Imagine two ways to study a busy avenue. The first assigns a person to follow every car and record every turn, lane change and stop. That approach is complete, but expensive and intrusive. The second installs cameras that take photographs at intervals. The cameras do not know every maneuver, but they reveal where congestion forms, when it appears and which lanes fill up.</p>
<p>Deterministic profiling resembles the first method. Statistical profiling resembles the second. Neither is universally better. If you need to reconstruct exactly which function called which other function during a controlled test, deterministic detail can be ideal. If you want to inspect a real application while it is running without changing its behavior too much, sampling is often the more practical choice.</p>
<p>This distinction explains why the new tool matters. For years, many Python performance discussions depended on external utilities, bespoke scripts or practices that differed from team to team. <a href="https://peps.python.org/pep-0799/"target="_blank" rel="noopener"><code>PEP 799</code></a> proposed a dedicated <code>profiling</code> package so tracing and sampling could live under a clearer standard-library umbrella. The change is not merely about one new command. It is about making the conversation around Python performance more coherent.</p>
<h2>What a profile can reveal<span class="hx:absolute hx:-mt-20" id="what-a-profile-can-reveal"></span>
    <a href="#what-a-profile-can-reveal" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>A useful profile does more than answer “which function is slowest?” It can expose several layers of the problem.</p>
<h3>Hot functions<span class="hx:absolute hx:-mt-20" id="hot-functions"></span>
    <a href="#hot-functions" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>A hot function is an area of the program that appears frequently in samples. If an application spends a large share of its time converting formats, walking lists, serializing data or recomputing the same values, the profile makes that visible. This helps teams prioritize. Optimizing code that almost never runs may feel elegant, but it will not change the result users experience.</p>
<h3>Call stacks<span class="hx:absolute hx:-mt-20" id="call-stacks"></span>
    <a href="#call-stacks" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>A call stack shows the route that led the program to a given point. That matters because the same slow function may be reached from many different places. Knowing only the function name is like knowing an elevator is busy. Seeing the stack is like knowing from which floor people entered and where they are going.</p>
<h3>Flame graphs<span class="hx:absolute hx:-mt-20" id="flame-graphs"></span>
    <a href="#flame-graphs" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Flame graphs turn samples into wide or narrow blocks. Width represents how often a path appears in the profile. They are useful because they reveal dominant execution routes at a glance. Brendan Gregg popularized flame graphs for systems performance work, and Python now exposes that view directly through <code>profiling.sampling</code>.</p>
<h3>CPU time versus wall time<span class="hx:absolute hx:-mt-20" id="cpu-time-versus-wall-time"></span>
    <a href="#cpu-time-versus-wall-time" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The tool lets users choose between CPU time (<code>cpu</code>) and elapsed real time (<code>wall</code>). That distinction is essential. An application can be slow because it is consuming processor cycles, or because it is waiting on a network, disk, lock or another dependency. To users both feel like slowness, but the remedies are very different. The first may call for a better algorithm. The second may require queue, dependency or concurrency work.</p>
<h3>GIL usage<span class="hx:absolute hx:-mt-20" id="gil-usage"></span>
    <a href="#gil-usage" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Python can also show which functions hold the Global Interpreter Lock through the <code>gil</code> view. Without drowning in jargon, the GIL is an internal rule that affects how Python threads run. If an application has many threads but one of them keeps control most of the time, the feeling of “we have concurrency, yet we do not scale” can appear. Seeing that concentration makes the discussion more precise.</p>
<h2>What <code>profiling.sampling</code> does not do<span class="hx:absolute hx:-mt-20" id="what-profilingsampling-does-not-do"></span>
    <a href="#what-profilingsampling-does-not-do" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>A useful tool becomes dangerous when people assign it powers it does not have. <code>profiling.sampling</code> does not automatically make a program faster. It does not decide which optimization is worth implementing. It does not replace engineering judgment. It gives evidence. Interpretation remains a human task.</p>
<p>It also does not replace all other kinds of measurement. <a href="https://docs.python.org/3.15/library/timeit.html"target="_blank" rel="noopener"><code>timeit</code></a> is still appropriate for comparing small snippets under controlled conditions. Load testing is still necessary to understand behavior under many users. Production observability — metrics, traces and logs — remains essential for understanding failures and user experience. Profiling complements that toolbox; it does not erase the need for the rest of it.</p>
<p>There is another important limit: sampling works probabilistically. If a function appears only rarely, it may be underrepresented. If a bug occurs once a day for a few milliseconds, another diagnostic strategy may be better. Sampling is strongest when repeated patterns exist.</p>
<h2>Why this matters to product and business teams<span class="hx:absolute hx:-mt-20" id="why-this-matters-to-product-and-business-teams"></span>
    <a href="#why-this-matters-to-product-and-business-teams" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Performance decisions have a cost. A team can spend weeks rewriting the most visible part of a system and later discover that the bottleneck lived somewhere else. It can also buy more servers to hide an inefficiency that a small code change would have solved. Measuring before acting is not technical fussiness. It is sound management.</p>
<p>A reliable profile improves conversations between disciplines. Product can ask, “Which part of the experience really slows people down?” Engineering can answer with more precision than “we think it is the API.” Operations can separate capacity problems from design problems. Finance can understand why one targeted optimization prevents unnecessary infrastructure growth.</p>
<p>Performance also has a sustainability angle. Workloads that use more CPU than necessary cost more energy and more money. Not every software problem deserves micro-optimization, but when an organization runs thousands of jobs, pipelines or requests per minute, fixing a real hotspot can compound.</p>
<h2>How it might be used in a real situation<span class="hx:absolute hx:-mt-20" id="how-it-might-be-used-in-a-real-situation"></span>
    <a href="#how-it-might-be-used-in-a-real-situation" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Imagine a reporting platform. Users complain that some reports take too long, but not all of them. The team could begin by inspecting the frontend, the database or the network. With a sampling profiler, it first observes a real slow execution. The profile shows that much of the time is spent converting data into an intermediate Python format, not querying the database as everyone assumed.</p>
<p>That finding changes the discussion. Maybe the answer is caching, fewer transformations, a different structure or moving one step out of the critical path. If the profile instead showed long wall-clock waits and little CPU use, the hypothesis would be different: perhaps an external API is slow or several workers are fighting over the same resource.</p>
<p>The important thing is that the team stops debating suspicions and starts working from a map.</p>
<h2>Facts, interpretation and projections<span class="hx:absolute hx:-mt-20" id="facts-interpretation-and-projections"></span>
    <a href="#facts-interpretation-and-projections" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Verified facts<span class="hx:absolute hx:-mt-20" id="verified-facts"></span>
    <a href="#verified-facts" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>Python 3.15.0b1 documentation includes <code>profiling.sampling</code> and presents it as a Tachyon-based statistical profiler for running Python processes.</li>
<li>The tool exposes <code>live</code>, <code>top</code>, <code>record</code> and <code>replay</code> interfaces, along with views such as <code>flamegraph</code>, <code>heatmap</code>, <code>gil</code>, <code>functions</code> and <code>stack</code>.</li>
<li><code>profile</code> is deprecated in Python 3.15, and the documentation recommends <code>profiling.sampling</code> for production debugging and <code>profiling.tracing</code> for development and testing.</li>
<li><code>PEP 799</code> formalized the new <code>profiling</code> package for organizing profiling tools inside Python.</li>
</ul>
<h3>Interpretation<span class="hx:absolute hx:-mt-20" id="interpretation"></span>
    <a href="#interpretation" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>The largest value for non-specialist teams is that observing real software becomes easier and less intimidating.</li>
<li>Because the tool is documented inside the standard library, it can shorten the path from “we feel the system is slow” to “we have evidence we can share.”</li>
</ul>
<h3>Reasonable projections<span class="hx:absolute hx:-mt-20" id="reasonable-projections"></span>
    <a href="#reasonable-projections" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li>Teams already running Python in production are likely to start attaching recorded profiles to incidents, capacity reviews and regression analysis.</li>
<li>Python performance education may become less dependent on scattered tooling and more centered on a common workflow. As with any projection, adoption and real-world stability will decide how far that goes.</li>
</ul>
<h2>Conclusion<span class="hx:absolute hx:-mt-20" id="conclusion"></span>
    <a href="#conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><code>profiling.sampling</code> is not the kind of feature that shines in a five-minute demo. It is more valuable than that: it is a cleaner way to see where time goes in real programs. For people who do not code every day, the core lesson is simple. Before optimizing, observe. Before blaming, measure. Before spending weeks, make sure you are attacking the right part of the problem.</p>
<p>Python 3.15 brings that discipline closer to the center of the language. It does not remove the need for judgment, but it does make it easier for performance decisions to rest on evidence instead of confident guesses.</p>
<h2>FAQ<span class="hx:absolute hx:-mt-20" id="faq"></span>
    <a href="#faq" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Does <code>profiling.sampling</code> make an application faster by itself?<span class="hx:absolute hx:-mt-20" id="does-profilingsampling-make-an-application-faster-by-itself"></span>
    <a href="#does-profilingsampling-make-an-application-faster-by-itself" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>No. It shows where time is concentrated. The team still has to decide what to change and validate the result.</p>
<h3>Is this the same as timing one function?<span class="hx:absolute hx:-mt-20" id="is-this-the-same-as-timing-one-function"></span>
    <a href="#is-this-the-same-as-timing-one-function" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Not quite. Timing one function is useful for small comparisons. Profiling explains how a whole application behaves while doing real work.</p>
<h3>Why is it called statistical profiling?<span class="hx:absolute hx:-mt-20" id="why-is-it-called-statistical-profiling"></span>
    <a href="#why-is-it-called-statistical-profiling" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Because it takes periodic samples and uses the frequency with which different code paths appear to infer where time is spent.</p>
<h3>Can it inspect an application that is already running?<span class="hx:absolute hx:-mt-20" id="can-it-inspect-an-application-that-is-already-running"></span>
    <a href="#can-it-inspect-an-application-that-is-already-running" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Yes. The official documentation says it can attach to an existing Python process by PID when the operating system allows that access.</p>
<h3>Does it replace logs, metrics and traces?<span class="hx:absolute hx:-mt-20" id="does-it-replace-logs-metrics-and-traces"></span>
    <a href="#does-it-replace-logs-metrics-and-traces" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>No. It complements them. Logs explain events, metrics show trends, traces follow requests and profiles reveal where code spends time.</p>
<h2>Sources<span class="hx:absolute hx:-mt-20" id="sources"></span>
    <a href="#sources" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><a href="https://docs.python.org/3.15/library/profiling.sampling.html"target="_blank" rel="noopener">Python 3.15: <code>profiling.sampling</code></a>.</li>
<li><a href="https://docs.python.org/3.15/library/profile.html"target="_blank" rel="noopener">Python 3.15: <code>profile</code> and deterministic versus statistical profiling</a>.</li>
<li><a href="https://docs.python.org/3.15/library/timeit.html"target="_blank" rel="noopener">Python 3.15: <code>timeit</code></a>.</li>
<li><a href="https://peps.python.org/pep-0799/"target="_blank" rel="noopener">PEP 799: dedicated <code>profiling</code> package</a>.</li>
<li><a href="https://www.brendangregg.com/flamegraphs.html"target="_blank" rel="noopener">Brendan Gregg: Flame Graphs</a>.</li>
</ul>
]]></content>
  </entry>
  
  <entry>
    <title>Dirty Frag in Chile: impact on cloud, companies and cybersecurity</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/05/07/dirty-frag-chile-cloud-cybersecurity/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/05/07/dirty-frag-chile-cloud-cybersecurity/</id>
    <published>2026-05-07T16:00:00Z</published>
    <updated>2026-05-07T22:45:46-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/dirty-frag-chile-impacto.webp" type="image/webp">
  <img src="/images/blog/tech/dirty-frag-chile-impacto.webp" alt="Chile digital infrastructure with cloud, data centers, critical services and Linux patching alert" width="1672" height="941" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Dirty Frag was disclosed on May 7, 2026 as a Linux local privilege escalation. For Chile, the practical impact is not measured by how many people know kernel terms. It is measured by how many services run on Linux: cloud platforms, banking APIs, health systems, public portals, CI/CD runners, Kubernetes nodes, telecom tooling and managed technology services.</p>
<h2>Why local still matters<span class="hx:absolute hx:-mt-20" id="why-local-still-matters"></span>
    <a href="#why-local-still-matters" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Local execution can come from a CI job, a container, a compromised web app, a support account, a notebook platform or supplier code. If that limited execution becomes root, attackers may reach cloud credentials, deployment tokens, database secrets and logs. That makes Dirty Frag relevant for organizations that rely on shared infrastructure.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/dirty-frag-chile-impacto.webp" type="image/webp">
  <img src="/images/blog/tech/dirty-frag-chile-impacto.webp" alt="Chile digital infrastructure with cloud, data centers, critical services and Linux patching alert" width="1672" height="941" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Dirty Frag was disclosed on May 7, 2026 as a Linux local privilege escalation. For Chile, the practical impact is not measured by how many people know kernel terms. It is measured by how many services run on Linux: cloud platforms, banking APIs, health systems, public portals, CI/CD runners, Kubernetes nodes, telecom tooling and managed technology services.</p>
<h2>Why local still matters<span class="hx:absolute hx:-mt-20" id="why-local-still-matters"></span>
    <a href="#why-local-still-matters" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Local execution can come from a CI job, a container, a compromised web app, a support account, a notebook platform or supplier code. If that limited execution becomes root, attackers may reach cloud credentials, deployment tokens, database secrets and logs. That makes Dirty Frag relevant for organizations that rely on shared infrastructure.</p>
<h2>Chilean regulatory context<span class="hx:absolute hx:-mt-20" id="chilean-regulatory-context"></span>
    <a href="#chilean-regulatory-context" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Chile&rsquo;s Law 21.663, the Cybersecurity Framework Law, created a stronger institutional context for risk management, essential services and operators of vital importance. Dirty Frag is not named in the law, but kernel patching, supplier evidence and incident traceability fit directly into a mature risk program.</p>
<h2>Cloud and Kubernetes<span class="hx:absolute hx:-mt-20" id="cloud-and-kubernetes"></span>
    <a href="#cloud-and-kubernetes" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Cloud does not remove responsibility; it changes where evidence comes from. If a provider manages the kernel, ask for patch and node-restart status. If your team manages VMs or Kubernetes nodes, plan node rotation. Updating a container image is not enough because containers share the host kernel.</p>
<h2>Priorities for Chilean organizations<span class="hx:absolute hx:-mt-20" id="priorities-for-chilean-organizations"></span>
    <a href="#priorities-for-chilean-organizations" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Banks and payment providers should review CI/CD, API hosts, bastions and supplier access. Health organizations should prioritize integration servers, clinical platforms and third-party access. Telecom and digital infrastructure providers should review multi-tenant nodes, VPNs and management systems. Public agencies and municipalities should at least maintain an inventory, contact vendors and document patch decisions.</p>
<h2>Next 72 hours<span class="hx:absolute hx:-mt-20" id="next-72-hours"></span>
    <a href="#next-72-hours" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>List Linux kernels, mark where untrusted code runs, check vendor advisories, prioritize CI/CD and container nodes, prepare reboots or node replacement and reduce shared execution until patched. After patching, verify the fixed kernel is actually loaded.</p>
<h2>FAQ<span class="hx:absolute hx:-mt-20" id="faq"></span>
    <a href="#faq" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Does Dirty Frag affect Chilean companies using cloud?<span class="hx:absolute hx:-mt-20" id="does-dirty-frag-affect-chilean-companies-using-cloud"></span>
    <a href="#does-dirty-frag-affect-chilean-companies-using-cloud" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>It can, depending on the host kernel. Ask the provider for patch and restart evidence.</p>
<h3>Does Chilean law require a specific Dirty Frag action?<span class="hx:absolute hx:-mt-20" id="does-chilean-law-require-a-specific-dirty-frag-action"></span>
    <a href="#does-chilean-law-require-a-specific-dirty-frag-action" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>No specific vulnerability is named, but risk management and security obligations make a documented response important.</p>
<h3>What evidence should be kept?<span class="hx:absolute hx:-mt-20" id="what-evidence-should-be-kept"></span>
    <a href="#what-evidence-should-be-kept" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Kernel inventory, advisories, patch tickets, reboot status, provider confirmations and temporary mitigation decisions.</p>
<h2>Sources<span class="hx:absolute hx:-mt-20" id="sources"></span>
    <a href="#sources" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><a href="https://www.openwall.com/lists/oss-security/2026/05/07/8"target="_blank" rel="noopener">Openwall oss-security disclosure</a>.</li>
<li><a href="https://dirtyfrag.io/"target="_blank" rel="noopener">Dirty Frag site</a>.</li>
<li><a href="https://raw.githubusercontent.com/V4bel/dirtyfrag/master/assets/write-up.md"target="_blank" rel="noopener">Dirty Frag write-up</a>.</li>
<li><a href="https://news.ycombinator.com/item?id=48053623"target="_blank" rel="noopener">Hacker News discussion</a>.</li>
<li><a href="https://www.diariooficial.interior.gob.cl/publicaciones/2024/04/08/43820/01/2475674.pdf"target="_blank" rel="noopener">Chile Law 21.663</a>.</li>
</ul>
]]></content>
  </entry>
  
  <entry>
    <title>Dirty Frag in Linux: technical guide to page cache, skb fragments and local root</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/05/07/dirty-frag-linux-technical-guide-page-cache-skb/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/05/07/dirty-frag-linux-technical-guide-page-cache-skb/</id>
    <published>2026-05-07T15:30:00Z</published>
    <updated>2026-05-07T22:45:46-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/dirty-frag-linux-tecnico.webp" type="image/webp">
  <img src="/images/blog/tech/dirty-frag-linux-tecnico.webp" alt="Technical Dirty Frag illustration with skb fragments, page cache, crypto paths and copy boundaries" width="1672" height="941" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Dirty Frag is a Linux local privilege escalation disclosed on May 7, 2026. The technically interesting part is the class of bug: page-cache backed memory can flow into non-linear networking fragments and cryptographic paths that may write in place. If the path should have copied first but does not, a page that represents protected file data can be modified through a different kernel subsystem.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/dirty-frag-linux-tecnico.webp" type="image/webp">
  <img src="/images/blog/tech/dirty-frag-linux-tecnico.webp" alt="Technical Dirty Frag illustration with skb fragments, page cache, crypto paths and copy boundaries" width="1672" height="941" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Dirty Frag is a Linux local privilege escalation disclosed on May 7, 2026. The technically interesting part is the class of bug: page-cache backed memory can flow into non-linear networking fragments and cryptographic paths that may write in place. If the path should have copied first but does not, a page that represents protected file data can be modified through a different kernel subsystem.</p>
<h2>Threat model<span class="hx:absolute hx:-mt-20" id="threat-model"></span>
    <a href="#threat-model" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The attacker needs local code execution. That may come from a shell, a CI job, a container, a hosted notebook, a plugin system or any service that runs user-controlled code. The risk is highest when the same kernel is shared by workloads of different trust levels.</p>
<h2>Page cache and ownership<span class="hx:absolute hx:-mt-20" id="page-cache-and-ownership"></span>
    <a href="#page-cache-and-ownership" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The page cache is not just a speed feature. It is part of the effective file access model. The kernel must preserve the invariant that a process without write permission cannot modify protected file content by reaching the cached page through another route. Dirty Frag, like Dirty Pipe in a broader sense, shows how fragile that invariant becomes when zero-copy paths cross subsystem boundaries.</p>
<h2>skb fragments and crypto paths<span class="hx:absolute hx:-mt-20" id="skb-fragments-and-crypto-paths"></span>
    <a href="#skb-fragments-and-crypto-paths" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Linux packets can be non-linear. <code>sk_buff</code> may contain references to pages rather than one contiguous buffer. That is efficient for <code>splice</code>, <code>sendfile</code> and network transmission, but later layers must know whether a fragment is private and writable. The Dirty Frag material identifies ESP4/ESP6 and RxRPC related paths as relevant. The defensive question is whether a path can receive page-cache backed fragments and then perform in-place transformation.</p>
<h2>Mitigation<span class="hx:absolute hx:-mt-20" id="mitigation"></span>
    <a href="#mitigation" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Patch the kernel through the distribution or cloud provider, then reboot or replace nodes. Prioritize CI/CD runners, Kubernetes nodes, shared development hosts and any server that executes third-party code. Until patched, use ephemeral runners, minimize secrets per job, reduce privileged containers and avoid mixing trust levels on one host.</p>
<h2>Operational checks<span class="hx:absolute hx:-mt-20" id="operational-checks"></span>
    <a href="#operational-checks" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Record kernel package version, loaded kernel after reboot, provider advisory, node rotation status and exceptions. Do not rely on a single PoC result. Do not assume container image updates fix the host kernel. For incident response, focus on whether untrusted local code ran on vulnerable hosts before patching and whether secrets were available there.</p>
<h2>FAQ<span class="hx:absolute hx:-mt-20" id="faq"></span>
    <a href="#faq" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Is the root cause <code>splice</code>?<span class="hx:absolute hx:-mt-20" id="is-the-root-cause-splice"></span>
    <a href="#is-the-root-cause-splice" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p><code>splice</code> and zero-copy movement are part of the relevant data-flow story, but the core security issue is writing to memory that should have been treated as shared or copied first.</p>
<h3>Should IPsec be disabled?<span class="hx:absolute hx:-mt-20" id="should-ipsec-be-disabled"></span>
    <a href="#should-ipsec-be-disabled" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Not as a blanket rule. Apply vendor fixes and evaluate exposure in your environment.</p>
<h3>What should be patched first?<span class="hx:absolute hx:-mt-20" id="what-should-be-patched-first"></span>
    <a href="#what-should-be-patched-first" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Multi-tenant hosts, CI/CD, container nodes and systems with local users or untrusted workloads.</p>
<h2>Sources<span class="hx:absolute hx:-mt-20" id="sources"></span>
    <a href="#sources" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><a href="https://www.openwall.com/lists/oss-security/2026/05/07/8"target="_blank" rel="noopener">Openwall oss-security disclosure</a>.</li>
<li><a href="https://raw.githubusercontent.com/V4bel/dirtyfrag/master/assets/write-up.md"target="_blank" rel="noopener">Dirty Frag write-up</a>.</li>
<li><a href="https://dirtyfrag.io/"target="_blank" rel="noopener">Dirty Frag site</a>.</li>
<li><a href="https://news.ycombinator.com/item?id=48053623"target="_blank" rel="noopener">Hacker News discussion</a>.</li>
<li><a href="https://docs.kernel.org/admin-guide/mm/concepts.html"target="_blank" rel="noopener">Linux kernel memory concepts</a>.</li>
</ul>
]]></content>
  </entry>
  
  <entry>
    <title>Dirty Frag in Linux explained without jargon: real risk and next steps</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/05/07/dirty-frag-linux-explained-without-jargon/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/05/07/dirty-frag-linux-explained-without-jargon/</id>
    <published>2026-05-07T15:00:00Z</published>
    <updated>2026-05-07T22:45:46-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/dirty-frag-linux-no-tecnico.webp" type="image/webp">
  <img src="/images/blog/tech/dirty-frag-linux-no-tecnico.webp" alt="Editorial illustration of Dirty Frag in Linux with memory pages, network fragments and a security alert" width="1672" height="941" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Dirty Frag is a Linux local privilege escalation disclosed on May 7, 2026 through Openwall&rsquo;s oss-security list and quickly discussed by the wider security community. The short version is serious but specific: an attacker who can already run code on a vulnerable Linux system may be able to become root. It is not, by itself, a remote internet break-in. It is a second-stage vulnerability that can make a limited foothold much more damaging.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/dirty-frag-linux-no-tecnico.webp" type="image/webp">
  <img src="/images/blog/tech/dirty-frag-linux-no-tecnico.webp" alt="Editorial illustration of Dirty Frag in Linux with memory pages, network fragments and a security alert" width="1672" height="941" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Dirty Frag is a Linux local privilege escalation disclosed on May 7, 2026 through Openwall&rsquo;s oss-security list and quickly discussed by the wider security community. The short version is serious but specific: an attacker who can already run code on a vulnerable Linux system may be able to become root. It is not, by itself, a remote internet break-in. It is a second-stage vulnerability that can make a limited foothold much more damaging.</p>
<h2>What happened<span class="hx:absolute hx:-mt-20" id="what-happened"></span>
    <a href="#what-happened" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Linux keeps frequently used file data in memory through the page cache. That is normal and essential for performance. Dirty Frag abuses a path where network and cryptographic fragments can end up referring to memory that should not be modified in place. If a kernel path writes to that memory instead of making a private copy first, data backed by a protected file can be changed in memory even when the file on disk still looks unchanged.</p>
<p>This resembles the broader lesson of Dirty Pipe: page-cache bugs are dangerous because they bypass the mental model most administrators use for file permissions. The protected file may not be directly writable, but the live cached page can become the target.</p>
<h2>Who should care first<span class="hx:absolute hx:-mt-20" id="who-should-care-first"></span>
    <a href="#who-should-care-first" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The highest-risk environments are systems where local code is not fully trusted: CI/CD runners, shared development servers, university labs, hosted notebooks, Kubernetes nodes, container hosts and platforms that execute customer or plugin code. A single-user laptop is usually lower risk, but malware that already runs locally could still use the issue to gain more control.</p>
<p>For cloud users, remember that containers share the host kernel. Updating an application container is not enough. The vulnerable component is the kernel running on the node or virtual machine.</p>
<h2>What to do<span class="hx:absolute hx:-mt-20" id="what-to-do"></span>
    <a href="#what-to-do" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Track advisories from your Linux distribution, cloud provider or appliance vendor. Apply kernel updates through official channels and reboot or replace nodes so the fixed kernel is actually running. Until then, reduce local exposure: isolate untrusted builds, use ephemeral CI runners, avoid mixing workloads of different trust levels and limit secrets available to jobs that process external code.</p>
<p>Do not test public proof-of-concept code on production systems. Use version inventory, vendor advisories and controlled labs. Also do not assume a simple file checksum will detect abuse, because the issue concerns memory-backed cache state.</p>
<h2>FAQ<span class="hx:absolute hx:-mt-20" id="faq"></span>
    <a href="#faq" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Is Dirty Frag remotely exploitable by itself?<span class="hx:absolute hx:-mt-20" id="is-dirty-frag-remotely-exploitable-by-itself"></span>
    <a href="#is-dirty-frag-remotely-exploitable-by-itself" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The public material describes local privilege escalation. The attacker needs a prior way to execute code on the machine.</p>
<h3>Are containers protected?<span class="hx:absolute hx:-mt-20" id="are-containers-protected"></span>
    <a href="#are-containers-protected" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Not automatically. Containers share the host kernel, so the host or Kubernetes node must be patched.</p>
<h3>Is this the same as Dirty Pipe?<span class="hx:absolute hx:-mt-20" id="is-this-the-same-as-dirty-pipe"></span>
    <a href="#is-this-the-same-as-dirty-pipe" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>No. It is a different issue, but it belongs to the same risk family around unsafe page-cache modification.</p>
<h3>What should be patched first?<span class="hx:absolute hx:-mt-20" id="what-should-be-patched-first"></span>
    <a href="#what-should-be-patched-first" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Multi-user hosts, CI/CD runners, container nodes and systems that execute untrusted or third-party code.</p>
<h2>Sources<span class="hx:absolute hx:-mt-20" id="sources"></span>
    <a href="#sources" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><a href="https://www.openwall.com/lists/oss-security/2026/05/07/8"target="_blank" rel="noopener">Openwall oss-security disclosure</a>.</li>
<li><a href="https://dirtyfrag.io/"target="_blank" rel="noopener">Dirty Frag project site</a>.</li>
<li><a href="https://raw.githubusercontent.com/V4bel/dirtyfrag/master/assets/write-up.md"target="_blank" rel="noopener">Dirty Frag technical write-up</a>.</li>
<li><a href="https://news.ycombinator.com/item?id=48053623"target="_blank" rel="noopener">Hacker News discussion</a>.</li>
<li><a href="https://docs.kernel.org/admin-guide/mm/concepts.html"target="_blank" rel="noopener">Linux kernel memory-management concepts</a>.</li>
</ul>
]]></content>
  </entry>
  
  <entry>
    <title>GCC 16 in Chile: impact for industry, digital talent and regulation</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/05/03/gcc-16-chile-impact-industry-digital-talent-regulation/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/05/03/gcc-16-chile-impact-industry-digital-talent-regulation/</id>
    <published>2026-05-03T14:40:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/gcc-16-chile.avif" type="image/avif">
  <img src="/images/gcc-16-chile.png" alt="Chile's digital infrastructure connected with compilation tools, data centers, industry and cybersecurity" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>GCC 16 may seem like distant news for Chile. The official announcement happened on an international mailing list; the main changes talk about C++20, SARIF, vectorization, OpenMP, libstdc++, Fortran, CPU targets, and diagnostics. However, when viewed from the Chilean context, the update makes more sense. Chile is trying to consolidate itself as a digital infrastructure hub, attract data center investment, strengthen cybersecurity, train technology talent, and digitize intensive industries such as mining, energy, telecommunications, logistics, banking, and public services.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/gcc-16-chile.avif" type="image/avif">
  <img src="/images/gcc-16-chile.png" alt="Chile's digital infrastructure connected with compilation tools, data centers, industry and cybersecurity" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>GCC 16 may seem like distant news for Chile. The official announcement happened on an international mailing list; the main changes talk about C++20, SARIF, vectorization, OpenMP, libstdc++, Fortran, CPU targets, and diagnostics. However, when viewed from the Chilean context, the update makes more sense. Chile is trying to consolidate itself as a digital infrastructure hub, attract data center investment, strengthen cybersecurity, train technology talent, and digitize intensive industries such as mining, energy, telecommunications, logistics, banking, and public services.</p>
<p>In that scenario, compilers are not just niche tools. They are part of software production capacity. A country that wants to operate critical digital infrastructure needs teams capable of understanding build chains, native dependencies, software security, portability, performance, and automation. GCC 16 will not solve the talent gap by itself or turn Chile into a technology hub. But it is a concrete signal of where the technical base used to build many systems is moving.</p>
<p>This analysis separates facts, interpretation, and projections. The main facts come from the official GCC 16.1 announcement from April 30, 2026, the official changes page, the porting guide, and Chilean public sources on data centers, investment, digital talent, and regulation.</p>
<h2>The technical change Chile should watch<span class="hx:absolute hx:-mt-20" id="the-technical-change-chile-should-watch"></span>
    <a href="#the-technical-change-chile-should-watch" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>GCC 16 brings several changes, but three are especially relevant for Chile.</p>
<p>The first is C++20 by default. Many Chilean companies do not work directly on compilers, but they do use software written in C++: telecommunications systems, banking components, cybersecurity modules, processing engines, scientific libraries, firmware, industrial systems, and cloud infrastructure dependencies. If those codebases are compiled on Linux, the standard change can appear in local or supplier pipelines.</p>
<p>The second is SARIF and diagnostics. Regulated cybersecurity needs evidence. It is not enough to say “we run analysis”. Organizations must record findings, remediation, controls, and traceability. GCC 16 improves SARIF output and removes the previous <code>json</code> format for machine-readable diagnostics. This pushes teams toward more standardized pipelines.</p>
<p>The third is performance and hardware support. Chile has industrial and scientific workloads where efficiency matters: simulations, models, data processing, monitoring systems, route optimization, energy, sensors, mining, and high-traffic digital services. Vectorization improvements do not guarantee results, but they are an opportunity to measure.</p>
<h2>Chile and digital infrastructure: why a compiler enters the conversation<span class="hx:absolute hx:-mt-20" id="chile-and-digital-infrastructure-why-a-compiler-enters-the-conversation"></span>
    <a href="#chile-and-digital-infrastructure-why-a-compiler-enters-the-conversation" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>InvestChile published in April 2026 that Chile concentrates 15% of Latin America&rsquo;s data center capacity and reaches 166 MW in operation, making it the third largest regional market according to a JLL report shared by Canal 24 Horas. The same publication highlights capacity growth during 2025 and mentions interest from global operators. InvestChile also reported in May 2025 an AWS investment of US$4 billion over 15 years for an infrastructure region in Chile, intended to serve cloud service demand in Chile and Latin America.</p>
<p>The Ministry of Science has promoted the 2024-2030 National Data Centers Plan, focused on sustainable and decentralized digital infrastructure connected with regional capabilities. In a 2024 public consultation publication, the ministry referred to Chile&rsquo;s comparative advantages in connectivity, demand for advanced infrastructure, and a project portfolio with possible investment above US$4.148 billion.</p>
<p>These data points do not speak directly about GCC. But they do speak about an economy that requires more infrastructure software. Data centers are not just buildings with servers. They need operating systems, hypervisors, observability, security, networks, orchestration, acceleration, automation, deployment tools, and optimized software. Much of that ecosystem depends on native toolchains and open source projects.</p>
<p>The interpretation is clear: the more local digital infrastructure is installed, the more important it becomes to have talent capable of operating, auditing, and adapting the deep technical layer. GCC 16 is an update to that layer.</p>
<h2>Cybersecurity and the Framework Law: diagnostics as technical evidence<span class="hx:absolute hx:-mt-20" id="cybersecurity-and-the-framework-law-diagnostics-as-technical-evidence"></span>
    <a href="#cybersecurity-and-the-framework-law-diagnostics-as-technical-evidence" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Law 21,663, the Cybersecurity Framework Law, was published in April 2024. The Library of Congress of Chile explains that it creates institutions to strengthen cybersecurity, including the National Cybersecurity Agency, a Multisectoral Council, an Interministerial Committee, and computer security incident response teams. It also points to preventive actions and coordination between the public and private sectors.</p>
<p>The relationship with GCC 16 is practical, not textual. An organization that needs to raise its cybersecurity maturity needs secure development processes. In native software, compiling with appropriate warnings, using static analysis, recording diagnostics, and fixing memory errors or undefined behavior is part of that maturity.</p>
<p>GCC 16 improves SARIF, adds experimental HTML output for diagnostics, and advances <code>-fanalyzer</code>. These improvements can help generate auditable evidence: what was detected, in which file, with what severity, in which commit, what execution flow is involved, and whether there was a fix. They do not replace security controls, vulnerability management, SBOM, penetration testing, or human review. But they strengthen an early point in the chain.</p>
<p>For regulated Chilean companies or providers of critical services, this suggests a concrete recommendation: include the toolchain in the risk matrix. It is not enough to inventory web frameworks. Teams also need to know which compiler produces critical binaries, which flags are used, which warnings are active, how diagnostics are recorded, and what migration policy exists.</p>
<h2>Chilean industries: where it can matter most<span class="hx:absolute hx:-mt-20" id="chilean-industries-where-it-can-matter-most"></span>
    <a href="#chilean-industries-where-it-can-matter-most" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>In mining, energy, manufacturing, and logistics, C and C++ still appear in high-performance layers, control, hardware integration, industrial communications, and simulation software. They are not always visible applications for consumers, but they are components that must operate under latency, availability, and security restrictions.</p>
<p>GCC 16 can affect these areas in three ways. The first is compatibility: old code can fail to compile with C++20 by default. The second is quality: new warnings or clearer diagnostics can reveal latent errors. The third is performance: vectorization and support for new targets can improve specific workloads if measured and configured correctly.</p>
<p>In telecommunications, the impact is in network software, observability tools, agents, security components, and embedded systems. A compiler change can modify everything from warnings to code generation. In banking and fintech, the most likely impact is in native dependencies, cryptographic libraries, database engines, Linux infrastructure, and technical compliance pipelines.</p>
<p>In universities and research centers, GCC 16 also matters because of Fortran, OpenMP, OpenACC, and architecture support. The changes page mentions improvements in Fortran coarrays, OpenMP, OpenACC, and offloading. For scientific or engineering research, these areas may be more relevant than the C++20 headline.</p>
<h2>Digital talent: learning a framework is not enough<span class="hx:absolute hx:-mt-20" id="digital-talent-learning-a-framework-is-not-enough"></span>
    <a href="#digital-talent-learning-a-framework-is-not-enough" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Talento Digital para Chile defines itself as a public-private initiative that connects training, employability, and real labor market needs. In 2026, together with SENCE, it opened more than 1,800 scholarships under the Reinvéntate program in areas such as programming, data analysis, cybersecurity, cloud, and application development, according to SENCE and the platform itself. Talento Digital has also highlighted more than 28,000 scholarships managed in its impact evaluation.</p>
<p>These programs are valuable, but GCC 16 shows a point that is often absent from introductory courses: the industry needs different levels of depth. Training web developers is important. Training people who understand compilation, systems, Linux, memory safety, C++, Rust, toolchains, observability, and performance also matters.</p>
<p>Chile can benefit if its training ecosystem includes more technical paths after the initial entry point. For example:</p>
<ul>
<li>Modern C and C++ for systems.</li>
<li>Linux toolchains and packaging.</li>
<li>CI/CD with reproducible compilation.</li>
<li>Static analysis and SARIF.</li>
<li>Memory safety and undefined behavior.</li>
<li>Performance profiling and vectorization.</li>
<li>Language interoperability.</li>
<li>Legacy software maintenance.</li>
</ul>
<p>The interpretation is not that everyone should learn GCC. It is that a mature digital ecosystem requires infrastructure specialists, not only users of high-level abstractions. GCC 16 is a good excuse to update curricula, advanced bootcamps, and internal company training.</p>
<h2>Open source, technological sovereignty and suppliers<span class="hx:absolute hx:-mt-20" id="open-source-technological-sovereignty-and-suppliers"></span>
    <a href="#open-source-technological-sovereignty-and-suppliers" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>GCC is free software. That matters for Chile because technological dependency is not limited to where servers are located. It also depends on who understands the tools, who can audit them, who can fix problems, and who can adapt systems to local needs.</p>
<p>A supplier can deliver closed software that works today. But if a public institution, critical company, or regulated industry lacks internal capacity to evaluate toolchains, it remains exposed to external decisions. Practical technological sovereignty does not mean developing everything from scratch; it means having enough judgment to operate, audit, migrate, and demand.</p>
<p>GCC 16 also shows the value of global communities. The Hacker News discussion, although not a normative source, shows developers reviewing details such as <code>std::start_lifetime_as</code>, alignment, lifetime, and aliasing. That kind of conversation is part of the technical culture worth strengthening locally: discussing precisely, citing standards, distinguishing “works on my machine” from “is defined by the language”.</p>
<h2>Regulation, AI and trustworthy software<span class="hx:absolute hx:-mt-20" id="regulation-ai-and-trustworthy-software"></span>
    <a href="#regulation-ai-and-trustworthy-software" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Chile updated its National Artificial Intelligence Policy in 2024 and continues debates on data, infrastructure, cybersecurity, and digital transformation. Although GCC 16 is not AI news, it connects with the computational base that allows reliable systems to be deployed. AI, cloud, and analytics depend on native layers: drivers, runtimes, compilers, linear algebra libraries, kernels, orchestrators, and operating systems.</p>
<p>In regulation, the trend is to require more responsibility, traceability, and risk management. For software teams, that becomes concrete practices: knowing what is compiled, with what version, with what dependencies, with what warnings, with what tests, and with what security evidence. GCC 16 provides tools to improve that evidence, but the organization must integrate them.</p>
<p>A reasonable projection for Chile is that suppliers serving regulated sectors will need to professionalize their pipelines further. Not because a law mentions GCC, but because the combination of cybersecurity, cloud, critical infrastructure, and more demanding customers pushes toward more verifiable development.</p>
<h2>Risks for Chilean companies that update without a plan<span class="hx:absolute hx:-mt-20" id="risks-for-chilean-companies-that-update-without-a-plan"></span>
    <a href="#risks-for-chilean-companies-that-update-without-a-plan" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The first risk is breaking builds because of the move to C++20. If a company compiles legacy software without pinning <code>-std=</code>, a Linux distribution or container update can change behavior indirectly. This is common when updating a Docker base image or a CI runner.</p>
<p>The second risk is losing diagnostic integrations if parsers existed for the removed JSON format. Many companies have internal scripts that nobody maintains until they fail. GCC 16 can expose that debt.</p>
<p>The third risk is mixing binaries with incompatible ABI. If a supplier delivers a library compiled with one version and the local team compiles another part with GCC 16, ABI boundaries must be reviewed, especially with C++ and libstdc++.</p>
<p>The fourth risk is treating new warnings as annoyance and silencing them globally. The porting guide warns that an unused-but-set variable can indicate a real bug or an incomplete change. In industrial or regulated systems, disabling warnings without analysis is a poor governance signal.</p>
<h2>Concrete opportunities for Chile<span class="hx:absolute hx:-mt-20" id="concrete-opportunities-for-chile"></span>
    <a href="#concrete-opportunities-for-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The first opportunity is using GCC 16 as a modernization trigger. Companies maintaining C++ can pin standards, clean warnings, migrate to SARIF, and improve CI. That work is not flashy, but it reduces technical debt.</p>
<p>The second opportunity is advanced training. Bootcamps, universities, and corporate programs can create modules on toolchains, memory safety, and static analysis. Chile needs talent capable of operating complex infrastructure, not only consuming cloud services.</p>
<p>The third opportunity is improving technology procurement. When an organization contracts critical software, it can demand information about compilation, dependencies, SBOM, update policies, warnings, and toolchain support. That raises supplier quality.</p>
<p>The fourth opportunity is applied research. Universities can use GCC 16 in systems, compilers, HPC, scientific computing, and security courses. Improvements in Fortran, OpenMP, OpenACC, and diagnostics are practical teaching material.</p>
<h2>Sources consulted<span class="hx:absolute hx:-mt-20" id="sources-consulted"></span>
    <a href="#sources-consulted" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><a href="https://gcc.gnu.org/pipermail/gcc-announce/2026/000190.html"target="_blank" rel="noopener">GCC 16.1 Released</a>, official announcement.</li>
<li><a href="https://gcc.gnu.org/gcc-16/changes.html"target="_blank" rel="noopener">GCC 16 Release Series</a>, official changes.</li>
<li><a href="https://gcc.gnu.org/gcc-16/porting_to.html"target="_blank" rel="noopener">Porting to GCC 16</a>, official porting guide.</li>
<li><a href="https://news.ycombinator.com/item?id=47961004"target="_blank" rel="noopener">Hacker News: GCC 16 has been released</a>, community context.</li>
<li><a href="https://blog.investchile.gob.cl/bloges/chile-data-center-america-latina"target="_blank" rel="noopener">InvestChile: Chile concentra el 15% de los data centers en América Latina</a>, digital infrastructure.</li>
<li><a href="https://www.investchile.gob.cl/announcement-aws-may-2025/"target="_blank" rel="noopener">InvestChile: AWS announces investment in Chile</a>, cloud investment.</li>
<li><a href="https://minciencia.gob.cl/areas/Plan-Nacional-Data-Centers/"target="_blank" rel="noopener">Ministry of Science: National Data Centers Plan</a>, public policy context.</li>
<li><a href="https://www.bcn.cl/balance-legislativo/detalle/ficha_LEY_21663_2024-04-08"target="_blank" rel="noopener">BCN: Law 21,663, Cybersecurity Framework Law</a>, Chilean regulation.</li>
<li><a href="https://talentodigitalparachile.cl/"target="_blank" rel="noopener">Talento Digital para Chile</a>, digital training and employability.</li>
<li><a href="https://sence.gob.cl/personas/noticias/atencion-magallanes-sence-y-talento-digital-lanzan-1825-becas-para-impulsar-la-empleabilidad-digital"target="_blank" rel="noopener">SENCE and Talento Digital: 2026 scholarships</a>, technology training.</li>
</ul>
<h2>Conclusion<span class="hx:absolute hx:-mt-20" id="conclusion"></span>
    <a href="#conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>GCC 16 is not a Chilean public policy or a local investment. It is a global update to software infrastructure. But Chile is at a point where that kind of infrastructure matters more: more data centers, more cloud, more regulated cybersecurity, more demand for digital talent, and more industries that depend on reliable software.</p>
<p>The practical reading is that Chilean companies do not need blind urgency, but they do need method. If they use C, C++, Fortran, or native dependencies, they should test GCC 16, pin standards, review diagnostics, migrate integrations to SARIF, measure performance, and document ABI risks. Training institutions should use this kind of change to teach deeper software layers. Technology buyers should start asking about toolchains and quality evidence.</p>
<p>Chile does not become a digital hub only by installing servers. It also needs capabilities to build, maintain, and audit the software that runs on them. GCC 16 is one piece of that conversation.</p>
<h2>FAQ<span class="hx:absolute hx:-mt-20" id="faq"></span>
    <a href="#faq" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Does GCC 16 directly affect users in Chile?<span class="hx:absolute hx:-mt-20" id="does-gcc-16-directly-affect-users-in-chile"></span>
    <a href="#does-gcc-16-directly-affect-users-in-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Not visibly. Its impact is indirect: it can affect how applications, libraries, Linux systems, industrial software, and dependencies used by Chilean companies are built.</p>
<h3>Which Chilean companies should review GCC 16?<span class="hx:absolute hx:-mt-20" id="which-chilean-companies-should-review-gcc-16"></span>
    <a href="#which-chilean-companies-should-review-gcc-16" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Companies maintaining software in C, C++, Fortran, Linux systems, firmware, security tools, cloud infrastructure, industrial systems, or native dependencies should test the migration.</p>
<h3>Is GCC 16 related to the Cybersecurity Framework Law?<span class="hx:absolute hx:-mt-20" id="is-gcc-16-related-to-the-cybersecurity-framework-law"></span>
    <a href="#is-gcc-16-related-to-the-cybersecurity-framework-law" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>There is no direct legal relationship. The connection is practical: better diagnostics, analysis, and traceability can support secure development processes required in regulated environments.</p>
<h3>Why mention data centers?<span class="hx:absolute hx:-mt-20" id="why-mention-data-centers"></span>
    <a href="#why-mention-data-centers" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Because expanding digital infrastructure in Chile increases the need to operate deep software: systems, networks, security, observability, runtimes, and toolchains.</p>
<h3>What should a Chilean company do now?<span class="hx:absolute hx:-mt-20" id="what-should-a-chilean-company-do-now"></span>
    <a href="#what-should-a-chilean-company-do-now" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Create a test matrix with GCC 16, pin the C++ standard explicitly, review new warnings, migrate diagnostics to SARIF if applicable, measure performance, and document compatibility decisions.</p>
]]></content>
  </entry>
  
  <entry>
    <title>GCC 16: technical migration guide for C++20, SARIF and diagnostics</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/05/03/gcc-16-technical-migration-guide-cpp20-sarif/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/05/03/gcc-16-technical-migration-guide-cpp20-sarif/</id>
    <published>2026-05-03T14:30:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/gcc-16-tecnico.avif" type="image/avif">
  <img src="/images/gcc-16-tecnico.png" alt="Technical migration flow for GCC 16 with CI, diagnostics, SARIF and build validation" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>GCC 16.1 was announced on April 30, 2026, and it is a relevant update for teams maintaining C, C++, Fortran, Linux toolchains, native libraries, embedded systems, or static analysis pipelines. The most visible change is that the C++ front end changes its default standard from GNU C++17 to GNU C++20. But that headline leaves out several points that can affect real migrations: diagnostic changes, SARIF output, new warnings, ABI differences in libstdc++, vectorization improvements, experimental C++26 support, changes for plugin authors, and a <code>-fanalyzer</code> that starts covering simple C++ examples.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/gcc-16-tecnico.avif" type="image/avif">
  <img src="/images/gcc-16-tecnico.png" alt="Technical migration flow for GCC 16 with CI, diagnostics, SARIF and build validation" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>GCC 16.1 was announced on April 30, 2026, and it is a relevant update for teams maintaining C, C++, Fortran, Linux toolchains, native libraries, embedded systems, or static analysis pipelines. The most visible change is that the C++ front end changes its default standard from GNU C++17 to GNU C++20. But that headline leaves out several points that can affect real migrations: diagnostic changes, SARIF output, new warnings, ABI differences in libstdc++, vectorization improvements, experimental C++26 support, changes for plugin authors, and a <code>-fanalyzer</code> that starts covering simple C++ examples.</p>
<p>This article is written for a technical audience. The goal is not to summarize every line of the official changes page, but to prioritize what can break builds, change results, improve CI, or require an explicit engineering decision. The main sources are the official GCC 16.1 announcement, the GCC 16 changes page, and the “Porting to GCC 16” guide. The Hacker News thread is used only as a signal of topics the community is discussing, especially <code>std::start_lifetime_as</code>.</p>
<h2>Executive summary for maintainers<span class="hx:absolute hx:-mt-20" id="executive-summary-for-maintainers"></span>
    <a href="#executive-summary-for-maintainers" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>If you maintain a C++ project and your build does not pin <code>-std=</code>, GCC 16 changes the effective language to GNU C++20. That is the first hypothesis to test. Do not assume that “it builds with GCC 15” implies “it builds with GCC 16”. Also do not assume every new error is a compiler regression: many can come from C++20 rules, reserved names, library changes, or stricter warnings.</p>
<p>If your pipeline consumes GCC diagnostics in JSON via <code>-fdiagnostics-format=json</code>, you need to review it. The official changes page says the format called <code>json</code> was removed and users who need machine-readable diagnostics should use SARIF. This affects internal integrations, ad hoc parsers, review bots, and flows that turn compiler errors into pull request annotations.</p>
<p>If you use libstdc++ with C++20 components that came from experimental support, review binary compatibility. The official documentation warns that some C++20 components have ABI changes in GCC 16 and that programs using C++20 components should assume incompatibility with older releases because that support was experimental before this series.</p>
<p>If warnings are a quality signal for your project, review <code>-Wunused-but-set-variable</code> and <code>-Wunused-but-set-parameter</code>. The porting guide explains that these warnings now have levels and that the default for options enabled by <code>-Wall</code> or <code>-Wextra</code> is stricter.</p>
<h2>C++20 by default: where it breaks first<span class="hx:absolute hx:-mt-20" id="c20-by-default-where-it-breaks-first"></span>
    <a href="#c20-by-default-where-it-breaks-first" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The default change from <code>gnu++17</code> to <code>gnu++20</code> appears in the GCC 16 changes page and is the most important migration point for C++. The main risk is not in modern projects that already compile with <code>-std=c++20</code> or <code>-std=gnu++20</code>. It is in projects that never pinned a standard or depend on old configuration scripts.</p>
<p>The porting guide lists several patterns. A common case is using identifiers that are now keywords, such as <code>concept</code> or <code>requires</code>. If an old codebase uses those names for variables, macros, or members, C++20 can produce parser errors. The clean solution is renaming; the transition solution is pinning <code>-std=c++17</code> while planning the change.</p>
<p>Another case is <code>operator!=</code>. In C++20, a type that defines <code>operator==</code> can receive a compiler-generated <code>operator!=</code>, which exposes ambiguities if the project already had overloads with unconventional signatures. Here it is better to review signatures, make them const-correct, and remove redundant overloads.</p>
<p>UTF-8 literals also change: <code>u8&quot;...&quot;</code> and <code>u8'...'</code> move to types related to <code>char8_t</code>, which can break APIs expecting <code>const char*</code>. In projects that cross C and C++, this often appears in interoperability, serialization, internationalization, or old wrappers.</p>
<p>The removal of obsolete <code>std::allocator</code> members in C++20 affects generic code and libraries written with pre-<code>std::allocator_traits</code> models. If you see errors about <code>destroy</code>, <code>construct</code>, <code>pointer</code>, <code>reference</code>, or <code>rebind</code>, the correct migration is to use <code>std::allocator_traits&lt;A&gt;</code>.</p>
<h2>Autoconf and the <code>-std=gnu++11</code> case<span class="hx:absolute hx:-mt-20" id="autoconf-and-the--stdgnu11-case"></span>
    <a href="#autoconf-and-the--stdgnu11-case" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The official porting guide mentions a specific problem: Autoconf before version 2.73 can add <code>-std=gnu++11</code> to Makefiles when processing <code>AC_PROG_CXX</code> and failing to verify that GCC 16 supports C++11 by default. The symptom can be paradoxical: a codebase that expected modern features ends up forced to C++11 and fails with errors such as missing <code>std::make_unique</code>.</p>
<p>In real migrations, this matters because it does not look like a C++20 problem, but like an accidental downgrade. The recommended review is to inspect the effective compile flags, not only the source files. In Autotools projects, regenerate with a current version or fix <code>configure.ac</code>. In CMake or Meson projects, pin the standard explicitly in project configuration, not only in local environment variables.</p>
<p>A practical rule: after updating to GCC 16, the first artifact to keep in CI should be the full compiler command line. Without that, diagnosing the effective standard becomes slow.</p>
<h2>Diagnostics: from text output to processable evidence<span class="hx:absolute hx:-mt-20" id="diagnostics-from-text-output-to-processable-evidence"></span>
    <a href="#diagnostics-from-text-output-to-processable-evidence" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>GCC 16 improves diagnostics in two directions. For humans, C++ errors can be shown with hierarchical structure, indentation, and bullets. This helps with template, constraint, and standard library trait errors. For machines, SARIF becomes the recommended format.</p>
<p>SARIF is not just “JSON with another name”. It is an interchange standard for static analysis. It can describe results, physical locations, logical locations, flows, fixes, and tool metadata. The changes page says GCC 16 improves SARIF in concrete ways: it respects the dump directory, captures nesting of logical locations, adds descriptions to <code>fix</code> objects, adds new values for non-standard control flow, and can capture graphs associated with diagnostics.</p>
<p>This creates an opportunity: treat compilation and analysis as quality data, not console text. In a mature organization, critical warnings should be annotatable in pull requests, correlated by module, measured over time, and able to block merges when they exceed agreed policies. GCC 16 provides better raw material for that.</p>
<p>The downside is that internal parsers for text or old JSON can break. If you have an in-house tool consuming <code>-fdiagnostics-format=json</code>, migrate it. A conservative recommendation is to create a SARIF adaptation layer, test it with small examples, and only then connect it to the full pipeline.</p>
<h2><code>-fanalyzer</code> and C++: useful, but not magic<span class="hx:absolute hx:-mt-20" id="-fanalyzer-and-c-useful-but-not-magic"></span>
    <a href="#-fanalyzer-and-c-useful-but-not-magic" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>GCC 16 says the static analyzer starts being usable on simple C++ examples, with support for Named Return Value Optimization and initial exception support. The documentation itself warns that, because of scaling issues, it is unlikely to be usable on production C++ code in this release.</p>
<p>That nuance matters. <code>-fanalyzer</code> can be useful for focused tests, small libraries, critical modules, or rule demos. It should not be sold internally as an immediate replacement for specialized tools or enabled without measurement in large monorepos. Memory and time costs can matter, and false positives change the team&rsquo;s conversation if there is no clear policy.</p>
<p>One change to watch is <code>-fanalyzer-assume-nothrow</code>. GCC 16 assumes that an external call not marked <code>nothrow</code> could throw an exception if <code>-fexceptions</code> is enabled. For C projects compiled with exceptions for C++ interoperability, that assumption can produce noise. The new option allows disabling that assumption as a workaround.</p>
<p>A practical strategy is to run <code>-fanalyzer</code> in non-blocking jobs at first, collect SARIF, classify results, and later promote only proven valuable rules and paths to blocking status.</p>
<h2>libstdc++: C++20 is no longer experimental, but there are costs<span class="hx:absolute hx:-mt-20" id="libstdc-c20-is-no-longer-experimental-but-there-are-costs"></span>
    <a href="#libstdc-c20-is-no-longer-experimental-but-there-are-costs" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The official changes page says libstdc++&rsquo;s C++20 implementation is no longer experimental. That is positive, but it does not mean universal binary compatibility with everything compiled before. The same section warns about ABI changes in C++20 components: atomic wait/notify functions and semaphores, <code>&lt;syncstream&gt;</code> synchronization, representation of <code>std::format</code> arguments, <code>std::partial_ordering</code>, interaction of <code>std::variant</code> with <code>std::jthread</code>, <code>std::stop_token</code> and <code>std::stop_source</code>, and some ranges adaptors.</p>
<p>The documentation also mentions a specific <code>std::variant</code> ABI change for conformance in some C++17 cases, with the restoration macro <code>_GLIBCXX_USE_VARIANT_CXX17_OLD_ABI</code>. This kind of flag should be treated as a transition, not a permanent design. If an old ABI is necessary for distributed binary compatibility, document the reason and retirement horizon.</p>
<p>In systems that distribute shared libraries, plugins, or native SDKs, migration is not limited to “builds or does not build”. You must review ABI boundaries: what is exposed in headers, what crosses DLL/shared object boundaries, what is serialized, what depends on layout, and what mixes with binaries compiled by an older GCC.</p>
<h2><code>std::start_lifetime_as</code>: the detail that caught the conversation<span class="hx:absolute hx:-mt-20" id="stdstart_lifetime_as-the-detail-that-caught-the-conversation"></span>
    <a href="#stdstart_lifetime_as-the-detail-that-caught-the-conversation" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>In the Hacker News thread about GCC 16, a relevant discussion focused on <code>std::start_lifetime_as</code>, added as part of the C++23 P2590R2 implementation. cppreference defines it as a function in <code>&lt;memory&gt;</code> that implicitly creates a complete object of type <code>T</code> in a storage region, with type, completeness, and alignment restrictions.</p>
<p>The typical case appears in low-level software: buffers from I/O, networks, shared memory, drivers, or binary formats. The historical anti-pattern is reading bytes and reinterpreting them as a structure with <code>reinterpret_cast&lt;T*&gt;</code>, assuming that is enough for a <code>T</code> object to exist. In C++, that assumption can violate lifetime, type accessibility, or alignment rules.</p>
<p><code>std::start_lifetime_as</code> is not a license to ignore alignment or input format validation. It also does not solve parsing security by itself. Its value is to provide a standard tool to express an operation that used to live among folklore, intrinsics, no-op <code>memmove</code>, misunderstood <code>std::launder</code>, and dangerous casts.</p>
<p>For teams maintaining binary parsers, network engines, embedded components, or high-performance systems, it is worth reviewing where type punning over buffers exists. This is not about doing a mechanical global migration. It is about identifying paths where undefined behavior was hidden behind “it always worked on x86”.</p>
<h2>Vectorization, LTO and targets: measurable impact, not assumed impact<span class="hx:absolute hx:-mt-20" id="vectorization-lto-and-targets-measurable-impact-not-assumed-impact"></span>
    <a href="#vectorization-lto-and-targets-measurable-impact-not-assumed-impact" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>GCC 16 improves vectorization in loops without a known count, reductions, alignment, and early exits. It also improves LTO for top-level asm with <code>-flto-toplevel-asm-heuristics</code> and expands speculative devirtualization to general indirect calls and more than one target.</p>
<p>In performance engineering terms, this should be treated as a measurable opportunity. A compiler update can change hot paths, binary size, register pressure, branch prediction profiles, and link behavior. Not every change will be positive for every workload.</p>
<p>The reasonable plan is to use representative benchmarks before and after, with frozen flags and comparable hardware. For numerical libraries or data infrastructure, measure throughput, latency, binary size, and consumption. For embedded systems, add flash size, RAM, startup times, and energy use where applicable.</p>
<p>On x86, GCC 16 adds support for recent targets such as <code>znver6</code>, <code>wildcatlake</code>, and <code>novalake</code>, along with AVX10 and AMX option changes. If you distribute generic binaries, using the newest <code>-march</code> is not enough. You need separate target builds, runtime dispatch, or a portable baseline.</p>
<h2>Recommended migration plan<span class="hx:absolute hx:-mt-20" id="recommended-migration-plan"></span>
    <a href="#recommended-migration-plan" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>First, pin the standard explicitly. If you want to adopt C++20, declare <code>-std=gnu++20</code> or <code>-std=c++20</code> in the build system. If you need continuity, temporarily pin <code>-std=gnu++17</code>. The worst state is depending on the default without knowing it.</p>
<p>Second, run a CI matrix with GCC 15 and GCC 16. Compile with relevant warnings, capture compiler command lines, and separate errors by category: standard, missing headers, new warnings, ABI, external dependency, build system, and potential compiler regression.</p>
<p>Third, migrate machine-readable diagnostics to SARIF. Avoid parsing text if your pipeline needs structured data. Validate that paths generated by GCC 16 match your annotation system.</p>
<p>Fourth, review ABI boundaries and C++20 libstdc++ components. If you distribute libraries, define compatibility and recompilation policy. In internal repos, a full rebuild may be enough; in public SDKs, it is not.</p>
<p>Fifth, benchmark. Do not present migration as a performance improvement without data. GCC 16 has real improvements, but their effect depends on the project.</p>
<p>Sixth, document exceptions. If you decide to keep <code>-std=c++17</code>, use an ABI macro, or disable a warning, leave the reason in the repo. Compatibility decisions age poorly when they remain only in conversations.</p>
<h2>Sources consulted<span class="hx:absolute hx:-mt-20" id="sources-consulted"></span>
    <a href="#sources-consulted" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><a href="https://gcc.gnu.org/pipermail/gcc-announce/2026/000190.html"target="_blank" rel="noopener">GCC 16.1 Released</a>, official announcement.</li>
<li><a href="https://gcc.gnu.org/gcc-16/changes.html"target="_blank" rel="noopener">GCC 16 Release Series: Changes, New Features, and Fixes</a>, official changes.</li>
<li><a href="https://gcc.gnu.org/gcc-16/porting_to.html"target="_blank" rel="noopener">Porting to GCC 16</a>, official migration guide.</li>
<li><a href="https://news.ycombinator.com/item?id=47961004"target="_blank" rel="noopener">Hacker News: GCC 16 has been released</a>, community context.</li>
<li><a href="https://en.cppreference.com/cpp/memory/start_lifetime_as"target="_blank" rel="noopener">cppreference: <code>std::start_lifetime_as</code></a>, C++ library reference.</li>
</ul>
<h2>Conclusion<span class="hx:absolute hx:-mt-20" id="conclusion"></span>
    <a href="#conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>GCC 16 is a toolchain migration with real impact. For C++, the default change to GNU C++20 forces an explicit decision about standard, compatibility, and modernization horizon. For CI, SARIF output and the removal of the old JSON format require integration review. For performance, vectorization and target improvements open opportunities, but they require measurement. For security and maintainability, better diagnostics and a more capable analyzer provide useful signals with clear limits.</p>
<p>The central recommendation is to treat GCC 16 as an engineering project, not a routine update. Pin standards, run a matrix, classify errors, measure performance, and document exceptions. If you do that, GCC 16 can help not only with “using the new compiler”, but with improving the technical health of a codebase.</p>
<h2>FAQ<span class="hx:absolute hx:-mt-20" id="faq"></span>
    <a href="#faq" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Does GCC 16 compile C++20 by default?<span class="hx:absolute hx:-mt-20" id="does-gcc-16-compile-c20-by-default"></span>
    <a href="#does-gcc-16-compile-c20-by-default" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Yes. The official documentation states that GCC 16 changes the C++ default from <code>-std=gnu++17</code> to <code>-std=gnu++20</code>.</p>
<h3>Should I add <code>-std=c++17</code> to avoid problems?<span class="hx:absolute hx:-mt-20" id="should-i-add--stdc17-to-avoid-problems"></span>
    <a href="#should-i-add--stdc17-to-avoid-problems" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Only if you need temporary continuity with a codebase that is not ready for C++20. The important point is to pin the standard explicitly and document the decision.</p>
<h3>What happened to <code>-fdiagnostics-format=json</code>?<span class="hx:absolute hx:-mt-20" id="what-happened-to--fdiagnostics-formatjson"></span>
    <a href="#what-happened-to--fdiagnostics-formatjson" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The GCC 16 changes page says the format called <code>json</code> was removed and recommends SARIF for machine-readable diagnostics.</p>
<h3>Is <code>-fanalyzer</code> ready for C++ in production?<span class="hx:absolute hx:-mt-20" id="is--fanalyzer-ready-for-c-in-production"></span>
    <a href="#is--fanalyzer-ready-for-c-in-production" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>GCC 16 improves support on simple C++ examples, but the documentation warns about scaling issues for production. It is better to test it first in non-blocking jobs.</p>
<h3>Can GCC 16 break ABI?<span class="hx:absolute hx:-mt-20" id="can-gcc-16-break-abi"></span>
    <a href="#can-gcc-16-break-abi" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>It can affect ABI in specific cases, especially C++20 libstdc++ components that were experimental before and documented <code>std::variant</code> changes. Review binary boundaries before distribution.</p>
]]></content>
  </entry>
  
  <entry>
    <title>GCC 16 explained: why it matters even if you do not code</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/05/03/gcc-16-explained-for-non-technical-readers/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/05/03/gcc-16-explained-for-non-technical-readers/</id>
    <published>2026-05-03T14:20:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/gcc-16-divulgativo.avif" type="image/avif">
  <img src="/images/gcc-16-divulgativo.png" alt="Editorial illustration of GCC 16 as a software compilation toolchain" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>GCC 16 is not a new app, a social network, or a device you can buy. It is quieter than that. It is an infrastructure component that helps turn code written by people into programs computers can understand. That may sound distant, but it affects Linux systems, servers, development tools, scientific software, industrial applications, firmware, libraries, and many open source projects.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/gcc-16-divulgativo.avif" type="image/avif">
  <img src="/images/gcc-16-divulgativo.png" alt="Editorial illustration of GCC 16 as a software compilation toolchain" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>GCC 16 is not a new app, a social network, or a device you can buy. It is quieter than that. It is an infrastructure component that helps turn code written by people into programs computers can understand. That may sound distant, but it affects Linux systems, servers, development tools, scientific software, industrial applications, firmware, libraries, and many open source projects.</p>
<p>On April 30, 2026, the GCC team announced version 16.1, the first stable release of the GCC 16 series. In its official announcement, the project highlighted three easy-to-summarize changes: the C++ compiler now uses GNU C++20 by default, a new experimental front end for Algol 68 appears, and diagnostics, analysis, and performance received important improvements. The GCC 16 changes page adds more detail: vectorization improvements, Link-Time Optimization, OpenMP, OpenACC, C++, Fortran, SARIF diagnostics, static analyzer work, and support for new processors.</p>
<p>For a non-technical reader, the reasonable question is: why should this matter? The short answer is that compilers are part of the invisible chain that lets software become safer, faster, more portable, and easier to maintain. When a compiler changes its default standard, warnings, machine-readable output, or optimization capabilities, it does not only affect people who write programs. It can also affect the final quality of software used by companies, governments, universities, and individuals.</p>
<h2>What GCC is in plain language<span class="hx:absolute hx:-mt-20" id="what-gcc-is-in-plain-language"></span>
    <a href="#what-gcc-is-in-plain-language" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>GCC means GNU Compiler Collection. The full name already gives a clue: it is not one small program, but a collection of compilers. A compiler takes source code, such as C, C++, Fortran, or Ada, and turns it into instructions a machine can execute.</p>
<p>A useful analogy is a recipe. Source code is the recipe written in a human language for developers. The computer does not understand that recipe directly. The compiler translates it into a precise list of actions in machine language. If the translation is poor, the result can be slow, wrong, or unsafe. If the translation is good, the result can be more efficient and reliable.</p>
<p>GCC is especially relevant because it is part of the history of free software and many Unix and Linux systems. It is not the only important compiler; LLVM/Clang also plays a huge role. But GCC remains a central reference for projects that need to compile software across many architectures, from servers to embedded systems.</p>
<p>The value of such a tool is not only compilation. It is also detecting errors before software reaches production, using hardware better, following modern language standards, and keeping compatibility with large projects. In software, many expensive failures begin as small details: an ambiguous comparison, an unsafe type conversion, an old memory assumption, or a dependency on behavior that was never guaranteed.</p>
<h2>What changed in GCC 16<span class="hx:absolute hx:-mt-20" id="what-changed-in-gcc-16"></span>
    <a href="#what-changed-in-gcc-16" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The most headline-friendly change is that GCC 16 compiles C++ using GNU C++20 by default. Previously, the default was GNU C++17. This means that if a project does not explicitly declare which C++ version it wants, GCC 16 assumes a more modern language version.</p>
<p>That change sounds technical, but its effect is practical for software teams. C++20 brings concepts such as <code>concepts</code>, ranges, concurrency improvements, comparison changes, <code>char8_t</code> for UTF-8 literals, and different rules for some older features. The official GCC 16 porting page warns that some older codebases may fail to compile because C++20 removed or changed elements that used to be accepted.</p>
<p>GCC 16 also improves diagnostics. In plain language, diagnostics are the messages the compiler shows when it finds errors or warnings. A clear message can save hours. A confusing one can send a team after the wrong problem. The changes page mentions C++ diagnostics with hierarchical structure and SARIF improvements, a standard format that lets analysis, security, and code review tools consume results automatically.</p>
<p>Another important improvement is performance. GCC 16 includes vectorization and optimization changes. Vectorization lets certain repetitive operations use parallel capabilities inside the processor. It does not magically make every program fast, but it can improve numerical code, data processing, multimedia, simulations, and some industrial workloads.</p>
<p>There is also a curious novelty: GCC 16 includes an experimental compiler for Algol 68. For most users this will have no direct impact. But it says something relevant about GCC as a project: it keeps expanding its language collection and preserving technical knowledge that, even if not mainstream, can matter for research, computing history, or specific niches.</p>
<h2>Why C++20 by default is more than a preference<span class="hx:absolute hx:-mt-20" id="why-c20-by-default-is-more-than-a-preference"></span>
    <a href="#why-c20-by-default-is-more-than-a-preference" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>When a compiler changes its default standard, it moves the baseline for what is considered normal. C++17 still exists, and projects can request it with a flag such as <code>-std=c++17</code>. But if a team declares nothing, GCC 16 pushes it toward C++20.</p>
<p>This has two effects. The first is modernization. Many projects already compatible with C++20 can get more current behavior without additional configuration. The second is exposure: older projects that worked by accident can show new errors. The official porting guide lists concrete examples: names such as <code>concept</code> or <code>requires</code> can no longer be used freely as identifiers, some uses of <code>operator!=</code> can become ambiguous, some <code>std::allocator</code> elements were removed, and reading from <code>istream</code> into <code>char*</code> changed because it was unsafe against overflows.</p>
<p>For a non-technical person, this resembles updating a building code. An old building may still stand, but when it is reviewed under a newer rule, problems appear that were not checked with the same rigor before. That does not mean the building was broken by the inspector. It means the safety and maintenance standard went up.</p>
<p>In enterprise software, that kind of change can be uncomfortable. It forces teams to review build scripts, dependencies, tests, and libraries. But it also prevents critical projects from staying tied to old practices. A default standard communicates where the ecosystem is heading.</p>
<h2>Error messages that help humans and machines<span class="hx:absolute hx:-mt-20" id="error-messages-that-help-humans-and-machines"></span>
    <a href="#error-messages-that-help-humans-and-machines" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>One of the least visible but most important changes is how GCC produces diagnostics. For people, better messages mean easier-to-understand errors. For tools, better formats mean stronger integration with security systems, CI/CD, and automated review.</p>
<p>GCC 16 removes the format called <code>json</code> for <code>-fdiagnostics-format=</code> and recommends SARIF for machine-readable diagnostics. SARIF is used by platforms and static analysis tools to represent code issues with location, severity, traces, and metadata. The GCC 16 changes page says that SARIF in this version better respects the output directory, captures nested logical locations, adds descriptions to fix objects, and improves representation of non-standard flows such as exceptions, <code>setjmp</code>, and <code>longjmp</code>.</p>
<p>Why does this matter outside a technical team? Because modern security increasingly depends on automated review chains. In a company, it is not enough for someone to read all code manually. Teams need to compile, test, and scan changes on every update. If the compiler provides clearer signals, automated systems can block errors before they reach users.</p>
<p>This does not turn GCC into a complete security tool. A compiler does not replace audits, tests, or responsible design. But it improves an early layer of defense. Detecting an error at compile time is usually cheaper than detecting it in production.</p>
<h2>Performance: when the compiler uses hardware better<span class="hx:absolute hx:-mt-20" id="performance-when-the-compiler-uses-hardware-better"></span>
    <a href="#performance-when-the-compiler-uses-hardware-better" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The official changes page mentions vectorization improvements: support for loops without a known count, better handling of reductions, alignment, and cases with early exits. In plain terms, GCC can find more opportunities for the processor to do parallel work inside a single instruction.</p>
<p>This matters in areas that process high volume: data science, simulation, compression, cryptography, image, audio, databases, physics engines, telecommunications, and industrial analysis. Not every program benefits equally. A slow website caused by a bad SQL query will not be fixed just by changing compilers. But in low-level software, numerical libraries, or intensive workloads, small accumulated improvements can matter.</p>
<p>There is also new support for recent x86 processors, such as AMD Zen 6 and Intel Wildcat Lake and Nova Lake, according to the changes page. These names are technical, but the point is simple: a modern compiler knows modern hardware better. When it knows more instructions and patterns, it can generate executables better suited to the machine where they run.</p>
<h2>Why Hacker News focused on <code>std::start_lifetime_as</code><span class="hx:absolute hx:-mt-20" id="why-hacker-news-focused-on-stdstart_lifetime_as"></span>
    <a href="#why-hacker-news-focused-on-stdstart_lifetime_as" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The Hacker News URL that originated this article links to “GCC 16 has been released” and contains a technical discussion. When reviewed on May 3, 2026, the thread had more than 300 points and dozens of comments. One highlighted topic was <code>std::start_lifetime_as</code>, a C++23 function implemented in GCC 16&rsquo;s standard library as part of proposal P2590R2.</p>
<p>You do not need all the details to understand the idea. In low-level software, a program sometimes receives bytes from the network, a file, a device, or shared memory and wants to treat them as a concrete structure. Historically, many developers used pointer conversions that seemed to work but could fall into undefined behavior under C++ rules. <code>std::start_lifetime_as</code> offers a standard way to explicitly start the lifetime of certain objects over existing storage, as long as requirements such as suitable type and alignment are met.</p>
<p>The Hacker News discussion is useful as a thermometer: it shows what details specialists worry about when a new version appears. It is not a normative source; for that, use GCC documentation, cppreference, and C++ committee documents. But it does reveal something important for a general audience: compiler improvements are not only about “more speed”. They also define more precisely what is correct and what is not in software that manipulates memory.</p>
<h2>Practical impact for companies and users<span class="hx:absolute hx:-mt-20" id="practical-impact-for-companies-and-users"></span>
    <a href="#practical-impact-for-companies-and-users" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>For companies that develop software, GCC 16 implies an evaluation task. It is not wise to update the production compiler without tests. The prudent path is to compile the project in CI, review new warnings, verify dependencies, run tests, and decide whether to adopt C++20 explicitly or temporarily pin C++17.</p>
<p>For end users, the impact will be indirect. Nobody opens an app and sees “made with GCC 16” like a design label. But over time, a more modern toolchain can improve the quality of programs that arrive through system updates, Linux distributions, open source packages, and specialized software.</p>
<p>For universities and students, GCC 16 also changes the starting point. Teaching modern C++ becomes more natural when the default compiler is no longer anchored in C++17. At the same time, it forces better explanations of compatibility, standards, and compiler flags. Learning to say “this project uses C++17” or “this project uses C++20” is a basic engineering skill, not a minor detail.</p>
<h2>Facts, interpretation, and projections<span class="hx:absolute hx:-mt-20" id="facts-interpretation-and-projections"></span>
    <a href="#facts-interpretation-and-projections" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The verified facts are clear: GCC 16.1 was officially announced on April 30, 2026; GCC 16 changes the default C++ standard to GNU C++20; it includes improvements in diagnostics, SARIF, vectorization, LTO, OpenMP, OpenACC, Fortran, C++, and target support; and the official porting guide warns about possible failures in older projects.</p>
<p>The interpretation is that GCC 16 pushes the ecosystem toward more modern practices. This does not mean everyone should migrate immediately or that the update has no cost. It means the center of gravity moved.</p>
<p>A reasonable projection is that Linux distributions, open source projects, and CI pipelines will start finding and fixing incompatibilities over the coming months. It is not possible to claim, without data from each project, that GCC 16 will improve the performance or security of a concrete application. It is defensible to say that it provides new tools to detect problems, generate more integrable diagnostics, and compile under newer standards.</p>
<h2>Sources consulted<span class="hx:absolute hx:-mt-20" id="sources-consulted"></span>
    <a href="#sources-consulted" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><a href="https://gcc.gnu.org/pipermail/gcc-announce/2026/000190.html"target="_blank" rel="noopener">GCC 16.1 Released</a>, official announcement from April 30, 2026.</li>
<li><a href="https://gcc.gnu.org/gcc-16/changes.html"target="_blank" rel="noopener">GCC 16 Release Series: Changes, New Features, and Fixes</a>, official change summary.</li>
<li><a href="https://gcc.gnu.org/gcc-16/porting_to.html"target="_blank" rel="noopener">Porting to GCC 16</a>, official porting guide.</li>
<li><a href="https://news.ycombinator.com/item?id=47961004"target="_blank" rel="noopener">Hacker News: GCC 16 has been released</a>, public discussion used as community context.</li>
<li><a href="https://en.cppreference.com/cpp/memory/start_lifetime_as"target="_blank" rel="noopener">cppreference: <code>std::start_lifetime_as</code></a>, technical reference on explicit lifetime management.</li>
</ul>
<h2>Conclusion<span class="hx:absolute hx:-mt-20" id="conclusion"></span>
    <a href="#conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>GCC 16 matters because it updates a fundamental piece of software infrastructure. It is not flashy consumer news, but it is a sign that the ecosystem continues moving toward modern standards, better diagnostics, integration with automated tools, and more efficient use of hardware.</p>
<p>For non-technical people, the central idea is simple: before an app reaches your phone, server, or computer, many tools work in the background. The compiler is one of them. When that tool improves, the effect can be felt in software quality even if users never see its name.</p>
<p>GCC 16 does not guarantee perfect software by itself. No tool does. But it provides a more modern base for building, reviewing, and maintaining programs. That is why a compiler release can be news.</p>
<h2>FAQ<span class="hx:absolute hx:-mt-20" id="faq"></span>
    <a href="#faq" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>What is GCC 16?<span class="hx:absolute hx:-mt-20" id="what-is-gcc-16"></span>
    <a href="#what-is-gcc-16" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>GCC 16 is a new series of the GNU Compiler Collection, a set of compilers used to transform source code into executable programs. The first stable release of the series, GCC 16.1, was announced on April 30, 2026.</p>
<h3>Why does GCC 16 matter if I am not a programmer?<span class="hx:absolute hx:-mt-20" id="why-does-gcc-16-matter-if-i-am-not-a-programmer"></span>
    <a href="#why-does-gcc-16-matter-if-i-am-not-a-programmer" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Because many programs, libraries, and systems are built with compilers. A more modern compiler can help detect errors, improve performance, and make it easier for teams to adopt current standards.</p>
<h3>What does C++20 by default mean?<span class="hx:absolute hx:-mt-20" id="what-does-c20-by-default-mean"></span>
    <a href="#what-does-c20-by-default-mean" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>It means that if a C++ project does not specify a language version, GCC 16 assumes GNU C++20. That can modernize projects, but it can also reveal incompatibilities in old code.</p>
<h3>Does GCC 16 make all software faster?<span class="hx:absolute hx:-mt-20" id="does-gcc-16-make-all-software-faster"></span>
    <a href="#does-gcc-16-make-all-software-faster" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Not automatically. GCC 16 includes optimization and vectorization improvements, but the benefit depends on the type of program, hardware, compiler options, and code quality.</p>
<h3>Is the Hacker News discussion an official source?<span class="hx:absolute hx:-mt-20" id="is-the-hacker-news-discussion-an-official-source"></span>
    <a href="#is-the-hacker-news-discussion-an-official-source" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>No. Hacker News provides community context to see what topics interest developers. For technical facts, primary sources such as GCC documentation and the official announcement should be used.</p>
]]></content>
  </entry>
  
  <entry>
    <title>Copy Fail in Chile: impact on servers, cloud and critical services</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/04/29/copy-fail-chile-cloud-servers-critical-services/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/04/29/copy-fail-chile-cloud-servers-critical-services/</id>
    <published>2026-04-29T10:10:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/copy-fail-chile-infraestructura.webp" type="image/webp">
  <img src="/images/blog/tech/copy-fail-chile-infraestructura.webp" alt="Editorial illustration about Copy Fail's impact on Chilean digital infrastructure" width="1659" height="948" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Copy Fail, CVE-2026-31431, is a local privilege escalation vulnerability in the Linux kernel. In Chile it should not be read only as an alert for system administrators, but as a practical test of operational maturity: how quickly an organization can know which kernels it runs, where untrusted code executes, which providers depend on Linux, and which services would be exposed if a limited user became root.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/copy-fail-chile-infraestructura.webp" type="image/webp">
  <img src="/images/blog/tech/copy-fail-chile-infraestructura.webp" alt="Editorial illustration about Copy Fail's impact on Chilean digital infrastructure" width="1659" height="948" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Copy Fail, CVE-2026-31431, is a local privilege escalation vulnerability in the Linux kernel. In Chile it should not be read only as an alert for system administrators, but as a practical test of operational maturity: how quickly an organization can know which kernels it runs, where untrusted code executes, which providers depend on Linux, and which services would be exposed if a limited user became root.</p>
<p>The vulnerability requires local execution. That reduces the risk for systems where no external party runs code. But many modern platforms provide local execution as part of their normal operation: CI/CD, containers, Kubernetes, hosted notebooks, training sandboxes, shared hosting, SaaS platforms with customer extensions, and services that process files or scripts. In those contexts, &ldquo;local&rdquo; does not mean irrelevant.</p>
<p>Chile also has a stronger institutional framework since Law 21,663, the Cybersecurity Framework Law. The law pushes risk management, resilience, continuity, essential services and operators of vital importance. A flaw like Copy Fail does not automatically create a regulatory incident, but it does require asking whether the organization can demonstrate inventory, prioritization, patching and provider coordination.</p>
<h2>Where it hits first in Chile<span class="hx:absolute hx:-mt-20" id="where-it-hits-first-in-chile"></span>
    <a href="#where-it-hits-first-in-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The first risk group is technology providers and companies that execute third-party code. Software agencies, testing platforms, SaaS startups, universities, hosting companies, teams with GitLab/GitHub runners, data labs and managed services often use Linux as a base. If those hosts mix workloads with different trust levels, a local escalation becomes an isolation problem.</p>
<p>The second group is organizations with critical continuity needs: banking, health, telecommunications, energy, transport, water, digital infrastructure and public services. Linux may appear in application servers, databases, gateways, monitoring, security, automation, backups and support tooling. Not all of those systems are equally exposed, but all should be inventoried.</p>
<p>The third group is cloud and SaaS buyers. Outsourcing infrastructure does not remove the need to ask questions. If a provider runs Chilean workloads on shared Linux hosts, the organization needs to know the patch schedule, temporary mitigations and continuity impact. For sensitive data, the question is not only &ldquo;which version do we use&rdquo;, but &ldquo;who controls the kernel that isolates us&rdquo;.</p>
<h2>What Chilean organizations should do<span class="hx:absolute hx:-mt-20" id="what-chilean-organizations-should-do"></span>
    <a href="#what-chilean-organizations-should-do" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The first task is inventory. It is not enough to know that a server runs Ubuntu, Debian, Red Hat, SUSE or a cloud image. You need kernel version, update method, host criticality, whether it runs third-party code, whether it hosts containers, whether it is part of CI/CD and who owns operations.</p>
<p>The second task is prioritization. Multi-tenant hosts, runners, sandboxes, Kubernetes nodes and shared development platforms should come before isolated workstations. Systems where local compromise can reach credentials, deployment secrets, signing keys, backups or administration tools should also be prioritized.</p>
<p>The third task is provider coordination. Chilean organizations often depend on integrators, cloud, hosting, SOC, MSP and SaaS platforms. Copy Fail is an opportunity to demand concrete answers: affected status, fixed version, mitigation until the patch lands, update date, possible reboot requirements and post-update evidence.</p>
<h2>Relationship with Chile&rsquo;s cybersecurity law<span class="hx:absolute hx:-mt-20" id="relationship-with-chiles-cybersecurity-law"></span>
    <a href="#relationship-with-chiles-cybersecurity-law" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Law 21,663 does not require the same reaction for every technical vulnerability. It does, however, encourage a risk-management and resilience culture. For essential services and operators of vital importance, a local Linux kernel vulnerability matters when it can affect continuity, confidentiality, integrity, authentication or recovery.</p>
<p>A reasonable approach is to document the assessment. Which systems were reviewed, which were exposed, which vendors confirmed status, which patches were applied, which risks were temporarily accepted and which compensating controls were used. That evidence is more useful than a generic &ldquo;we are monitoring&rdquo; message.</p>
<p>Future procurement should also change. If a contract includes Linux platforms, Kubernetes, CI, code processing or script execution, it should require a patch process, kernel management, tenant separation and capacity to respond to local CVEs. Security by design includes being able to update without improvising.</p>
<h2>Priority for CI and Kubernetes<span class="hx:absolute hx:-mt-20" id="priority-for-ci-and-kubernetes"></span>
    <a href="#priority-for-ci-and-kubernetes" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>In Chile, many incidents begin with credentials, dependencies, pipelines or poorly segmented servers rather than kernel vulnerabilities. Copy Fail matters because it can amplify that first issue. A malicious PR, a compromised CI job or a stolen development account could try to jump from a limited environment to the host.</p>
<p>Shared runners deserve special review. Critical and untrusted projects should not mix on the same host. Deployment secrets should not be available to low-trust jobs. Nodes that build, sign or publish software should have stronger isolation than nodes that only run ephemeral tests.</p>
<p>Kubernetes is not a magic barrier either. Containers share the host kernel. If a vulnerability allows escalation from local execution to host root, the real strength depends on configuration, security policies, runtime, seccomp, AppArmor/SELinux, container privileges and node patching speed.</p>
<h2>Conclusion for Chile<span class="hx:absolute hx:-mt-20" id="conclusion-for-chile"></span>
    <a href="#conclusion-for-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Copy Fail does not mean every Chilean server is compromised. It means Linux-dependent organizations must be able to respond quickly and with evidence. The practical question for Chile is: if another local kernel CVE appears tomorrow, do we know where we are exposed and who must act?</p>
<p>The mature answer combines inventory, prioritization, patching, isolation and provider coordination. For technology companies, universities, public services and critical operators, that discipline is no longer an optional best practice. It is part of the country&rsquo;s digital continuity.</p>
<h2>Sources consulted<span class="hx:absolute hx:-mt-20" id="sources-consulted"></span>
    <a href="#sources-consulted" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li>Xint Code analysis of Copy Fail: <a href="https://xint.io/blog/copy-fail-linux-distributions"target="_blank" rel="noopener">https://xint.io/blog/copy-fail-linux-distributions</a></li>
<li>Copy Fail public site: <a href="https://copy.fail/"target="_blank" rel="noopener">https://copy.fail/</a></li>
<li>Hacker News discussion: <a href="https://news.ycombinator.com/item?id=47952181"target="_blank" rel="noopener">https://news.ycombinator.com/item?id=47952181</a></li>
<li>Debian Security Tracker: <a href="https://security-tracker.debian.org/tracker/CVE-2026-31431"target="_blank" rel="noopener">https://security-tracker.debian.org/tracker/CVE-2026-31431</a></li>
<li>Ubuntu Security: <a href="https://ubuntu.com/security/CVE-2026-31431"target="_blank" rel="noopener">https://ubuntu.com/security/CVE-2026-31431</a></li>
<li>SUSE CVE tracker: <a href="https://www.suse.com/security/cve/CVE-2026-31431.html"target="_blank" rel="noopener">https://www.suse.com/security/cve/CVE-2026-31431.html</a></li>
<li>Chilean Law 21,663, Cybersecurity Framework Law: <a href="https://www.bcn.cl/leychile/navegar?i=1202434"target="_blank" rel="noopener">https://www.bcn.cl/leychile/navegar?i=1202434</a></li>
</ul>
]]></content>
  </entry>
  
  <entry>
    <title>Copy Fail technical analysis: AF_ALG, splice and page cache behind CVE-2026-31431</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/04/29/copy-fail-af-alg-splice-page-cache-technical-analysis/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/04/29/copy-fail-af-alg-splice-page-cache-technical-analysis/</id>
    <published>2026-04-29T10:05:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/copy-fail-af-alg-page-cache.webp" type="image/webp">
  <img src="/images/blog/tech/copy-fail-af-alg-page-cache.webp" alt="Technical illustration of AF_ALG, splice and page cache in Copy Fail" width="1659" height="948" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Copy Fail, CVE-2026-31431, is a local privilege escalation vulnerability in the Linux kernel. The short version is that a combination of <code>AF_ALG</code>, <code>splice()</code>, the <code>authencesn</code> crypto template and an in-place <code>algif_aead</code> optimization allows a controlled 4-byte write into page cache. The useful version for security teams is less dramatic and more operational: this is a boundary failure between scatterlists that should never have shared a writable destination.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/copy-fail-af-alg-page-cache.webp" type="image/webp">
  <img src="/images/blog/tech/copy-fail-af-alg-page-cache.webp" alt="Technical illustration of AF_ALG, splice and page cache in Copy Fail" width="1659" height="948" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Copy Fail, CVE-2026-31431, is a local privilege escalation vulnerability in the Linux kernel. The short version is that a combination of <code>AF_ALG</code>, <code>splice()</code>, the <code>authencesn</code> crypto template and an in-place <code>algif_aead</code> optimization allows a controlled 4-byte write into page cache. The useful version for security teams is less dramatic and more operational: this is a boundary failure between scatterlists that should never have shared a writable destination.</p>
<p>The sensitive piece is <code>AF_ALG</code>, the socket interface that exposes kernel crypto primitives to userspace. With <code>splice()</code>, userspace can move data from a file into a pipe without copying every byte. Along that path, the kernel may keep references to page-cache pages. When those pages end up chained into a scatterlist that the crypto subsystem treats as a destination, the dangerous condition appears.</p>
<p>According to Xint Code&rsquo;s analysis, <code>authencesn</code> uses part of the destination buffer as temporary scratch space to rearrange bytes related to ESN. That behavior made sense under its original assumptions, but became dangerous when combined with the AF_ALG AEAD in-place path introduced years earlier. The temporary write crosses the legitimate region and reaches pages representing the in-memory copy of a readable file.</p>
<h2>Why page cache changes the impact<span class="hx:absolute hx:-mt-20" id="why-page-cache-changes-the-impact"></span>
    <a href="#why-page-cache-changes-the-impact" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The page cache is not a private copy owned by the attacker process. It is the in-memory representation that other system paths may read. If that copy belongs to a setuid binary, a temporary memory change can affect execution without modifying the persistent file on disk. That is why checks based only on the physical file are not enough to reason about impact.</p>
<p>The reported change is small: 4 bytes per operation. But size does not define severity by itself. A small, reliable and repeatable primitive can be enough if the target is sensitive. The technical value of Copy Fail is the combination of control, reliability and portability across affected kernels and distributions, not the byte count of a PoC.</p>
<p>This also explains why the severity debate is reasonable. The issue requires local execution and does not provide initial remote access. That pushes several vendors toward medium or moderate priority. At the same time, in multi-tenant, CI, container and sandbox environments, the boundary between &ldquo;local&rdquo; and &ldquo;critical&rdquo; is thin: local code execution is exactly what those platforms provide.</p>
<h2>The fix<span class="hx:absolute hx:-mt-20" id="the-fix"></span>
    <a href="#the-fix" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The main fix returns <code>algif_aead</code> to out-of-place operation. Instead of allowing source and destination to share a combined structure with page-cache pages chained into it, the fix separates input and output scatterlists. That removes the condition that let the temporary <code>authencesn</code> write reach file-backed memory.</p>
<p>For operators, the practical message is clear: update the distribution kernel to a version that includes the fix. Manually carrying commits is not advisable unless the team maintains its own kernel and has a validation process. In normal fleets, the remediation unit is the vendor kernel package, AMI/base image, or managed cloud kernel.</p>
<p>As a temporary mitigation, the Copy Fail site recommends disabling <code>algif_aead</code> or blocking <code>AF_ALG</code> socket creation with policies such as seccomp for untrusted workloads. That is a reasonable surface reduction, especially for runners and sandboxes, but it should be tested. Some embedded environments or explicit crypto-offload configurations may depend on AF_ALG.</p>
<h2>Defensive checklist<span class="hx:absolute hx:-mt-20" id="defensive-checklist"></span>
    <a href="#defensive-checklist" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>First, inventory actual kernels, not just distributions. Kernel versions, backports and cloud builds matter more than product names. Second, identify hosts where users, containers or CI jobs share a kernel. Those systems should be prioritized over single-user servers.</p>
<p>Third, review whether sandbox policies block unnecessary socket families. Many workloads never need to open <code>AF_ALG</code>; if your model runs third-party code, blocking unused surfaces reduces exploitation room beyond this specific incident. Fourth, separate runners for external code and avoid reusing privileged hosts for low-trust PRs or pipelines.</p>
<p>Fifth, validate against vendor advisories. The public discussion contains useful details, but also mistakes and disagreements, including the debated reference to a non-existent RHEL version on the public page. For change management, use official trackers and record state by platform.</p>
<h2>What the patch does not solve<span class="hx:absolute hx:-mt-20" id="what-the-patch-does-not-solve"></span>
    <a href="#what-the-patch-does-not-solve" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Patching Copy Fail does not eliminate the broader problem of running untrusted code on shared kernels. It does not replace strong isolation, syscall control, tenant separation or base-image rotation. The technical lesson is broader: in-place optimizations that mix references from different origins need careful review when zero-copy paths from userspace exist.</p>
<p>Teams maintaining platforms should review regression coverage around <code>splice()</code>, page cache, crypto APIs exposed to userspace and sandboxes that allow rarely used syscalls. Copy Fail shows how a locally reasonable decision can become dangerous when another subsystem changes the memory model years later.</p>
<p>The conclusion is not panic. It is priority. Wherever a potential attacker can already execute local code, such as CI, multi-tenant Linux, Kubernetes, shared desktops or development hosts, reliable local escalation is not a secondary detail. It is a trust-boundary failure.</p>
<h2>Sources consulted<span class="hx:absolute hx:-mt-20" id="sources-consulted"></span>
    <a href="#sources-consulted" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li>Xint Code analysis of Copy Fail: <a href="https://xint.io/blog/copy-fail-linux-distributions"target="_blank" rel="noopener">https://xint.io/blog/copy-fail-linux-distributions</a></li>
<li>Copy Fail public site: <a href="https://copy.fail/"target="_blank" rel="noopener">https://copy.fail/</a></li>
<li>Hacker News discussion: <a href="https://news.ycombinator.com/item?id=47952181"target="_blank" rel="noopener">https://news.ycombinator.com/item?id=47952181</a></li>
<li>Debian Security Tracker: <a href="https://security-tracker.debian.org/tracker/CVE-2026-31431"target="_blank" rel="noopener">https://security-tracker.debian.org/tracker/CVE-2026-31431</a></li>
<li>Ubuntu Security: <a href="https://ubuntu.com/security/CVE-2026-31431"target="_blank" rel="noopener">https://ubuntu.com/security/CVE-2026-31431</a></li>
<li>SUSE CVE tracker: <a href="https://www.suse.com/security/cve/CVE-2026-31431.html"target="_blank" rel="noopener">https://www.suse.com/security/cve/CVE-2026-31431.html</a></li>
</ul>
]]></content>
  </entry>
  
  <entry>
    <title>Copy Fail on Linux explained without jargon: what CVE-2026-31431 means</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/04/29/copy-fail-linux-explained-without-jargon/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/04/29/copy-fail-linux-explained-without-jargon/</id>
    <published>2026-04-29T10:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/copy-fail-linux-no-tecnico.webp" type="image/webp">
  <img src="/images/blog/tech/copy-fail-linux-no-tecnico.webp" alt="Editorial illustration of Copy Fail on Linux explained without jargon" width="1659" height="948" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Copy Fail is the public name for CVE-2026-31431, a Linux kernel vulnerability disclosed by Xint Code on April 29, 2026. The headline is strong: an unprivileged local user can become an administrator. The important part is to read that accurately. This is not, by itself, an open door from the internet. It is a way to escalate privileges after an attacker can already run code on the machine.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/copy-fail-linux-no-tecnico.webp" type="image/webp">
  <img src="/images/blog/tech/copy-fail-linux-no-tecnico.webp" alt="Editorial illustration of Copy Fail on Linux explained without jargon" width="1659" height="948" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Copy Fail is the public name for CVE-2026-31431, a Linux kernel vulnerability disclosed by Xint Code on April 29, 2026. The headline is strong: an unprivileged local user can become an administrator. The important part is to read that accurately. This is not, by itself, an open door from the internet. It is a way to escalate privileges after an attacker can already run code on the machine.</p>
<p>In plain language, Linux keeps temporary copies of file data in memory so files can be read faster. That memory is called the page cache. Copy Fail can alter a few bytes in that in-memory copy without changing the real file on disk. If the altered copy belongs to a special program that runs with root privileges, the system may execute the temporary modified version.</p>
<p>The original file is not permanently changed, and a reboot clears the memory. The impact is still serious because, during that window, the system can give administrator rights to someone who should not have them. On shared servers, development platforms, CI systems, labs, container hosts, and Kubernetes clusters, that can change the risk profile completely.</p>
<h2>Who should care<span class="hx:absolute hx:-mt-20" id="who-should-care"></span>
    <a href="#who-should-care" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The risk is highest where many users or workloads share the same Linux kernel. That includes shared development boxes, CI/CD runners that execute third-party code, SaaS platforms that process customer scripts, hosted notebooks, sandboxes, container hosts, and Kubernetes clusters. In those environments, a limited local user may be able to become host administrator.</p>
<p>On a single-team production server, the risk depends on whether someone first obtains a normal account, a stolen credential, or local code execution through another bug. Copy Fail does not provide that first step, but it can turn it into full control. On a personal single-user laptop, the risk is usually lower, although local malware could still use it to gain more control.</p>
<p>The Hacker News discussion added a useful nuance: the Copy Fail site uses very emphatic language, while several distribution trackers classify the issue as medium or moderate because local access is required. Both views can be true. This is not the same as unauthenticated remote code execution, but a reliable local escalation to root still matters to defenders.</p>
<h2>What users and teams should do<span class="hx:absolute hx:-mt-20" id="what-users-and-teams-should-do"></span>
    <a href="#what-users-and-teams-should-do" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The main action is to update the kernel through official distribution channels. Do not pull random patches or run commands copied from unofficial pages. Debian, Ubuntu, SUSE, and Red Hat publish their own status pages; for managed servers, the source of truth should be the vendor advisory or the base image used by your infrastructure.</p>
<p>Until patching is possible, reduce exposure. Avoid running untrusted code on shared hosts, separate CI runners by trust level, review multi-tenant workloads, and ask cloud or SaaS providers when a corrected kernel will be available. For containers, updating the container image is not enough: the relevant component is the host kernel.</p>
<p>Monitoring assumptions also deserve a review. Because the vulnerability changes the memory copy rather than the file on disk, a simple checksum comparison of the real file may miss the issue. That does not make monitoring useless; it means defense should combine patching, isolation, local execution controls, and review of privileged events.</p>
<h2>A responsible reading<span class="hx:absolute hx:-mt-20" id="a-responsible-reading"></span>
    <a href="#a-responsible-reading" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Copy Fail is good news in one sense: it was reported, received a CVE, and has a kernel fix. The bad news is that it touches a common surface and affects operational models where organizations run code from other people. The right response is not panic or dismissal; it is inventory and patching.</p>
<p>If you administer Linux, identify which kernels you run, which hosts are multi-user, which runners process external contributions, and which platforms depend on containers. Prioritize those systems before isolated low-risk workstations. If you consume third-party services, ask for update timelines and mitigation evidence.</p>
<p>The practical sentence is simple: Copy Fail does not provide initial access, but it can turn limited local access into administrator control. That distinction matters. It also defines the priority: patch first wherever local access is not fully trusted.</p>
<h2>Sources consulted<span class="hx:absolute hx:-mt-20" id="sources-consulted"></span>
    <a href="#sources-consulted" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li>Xint Code analysis of Copy Fail: <a href="https://xint.io/blog/copy-fail-linux-distributions"target="_blank" rel="noopener">https://xint.io/blog/copy-fail-linux-distributions</a></li>
<li>Copy Fail public site: <a href="https://copy.fail/"target="_blank" rel="noopener">https://copy.fail/</a></li>
<li>Hacker News discussion: <a href="https://news.ycombinator.com/item?id=47952181"target="_blank" rel="noopener">https://news.ycombinator.com/item?id=47952181</a></li>
<li>Debian Security Tracker: <a href="https://security-tracker.debian.org/tracker/CVE-2026-31431"target="_blank" rel="noopener">https://security-tracker.debian.org/tracker/CVE-2026-31431</a></li>
<li>Ubuntu Security: <a href="https://ubuntu.com/security/CVE-2026-31431"target="_blank" rel="noopener">https://ubuntu.com/security/CVE-2026-31431</a></li>
<li>SUSE CVE tracker: <a href="https://www.suse.com/security/cve/CVE-2026-31431.html"target="_blank" rel="noopener">https://www.suse.com/security/cve/CVE-2026-31431.html</a></li>
</ul>
]]></content>
  </entry>
  
  <entry>
    <title>GnuPG 2.5.19 and ML-KEM: technical guide to prepare for post-quantum OpenPGP</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/04/26/gnupg-2519-ml-kem-kyber-openpgp-technical-guide/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/04/26/gnupg-2519-ml-kem-kyber-openpgp-technical-guide/</id>
    <published>2026-04-26T10:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/gnupg-mlkem-tecnico.webp" type="image/webp">
  <img src="/images/blog/tech/gnupg-mlkem-tecnico.webp" alt="Editorial image about GnuPG 2.5.19 and ML-KEM: technical guide to prepare for post-quantum OpenPGP" width="1792" height="1024" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>On April 24, 2026, Werner Koch announced GnuPG 2.5.19 in the official GnuPG listing. The announcement was not strident: it talked about a new version, some improvements, bug fixes and a transition from the 2.4 series to a more modern base. However, one line concentrated the most important change: the 2.5 series introduces Kyber, also known today as ML-KEM and standardized by NIST as FIPS 203, as a post-quantum encryption algorithm.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/gnupg-mlkem-tecnico.webp" type="image/webp">
  <img src="/images/blog/tech/gnupg-mlkem-tecnico.webp" alt="Editorial image about GnuPG 2.5.19 and ML-KEM: technical guide to prepare for post-quantum OpenPGP" width="1792" height="1024" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>On April 24, 2026, Werner Koch announced GnuPG 2.5.19 in the official GnuPG listing. The announcement was not strident: it talked about a new version, some improvements, bug fixes and a transition from the 2.4 series to a more modern base. However, one line concentrated the most important change: the 2.5 series introduces Kyber, also known today as ML-KEM and standardized by NIST as FIPS 203, as a post-quantum encryption algorithm.</p>
<p>GnuPG matters because it is not a laboratory curiosity. It is a free implementation of OpenPGP and S/MIME, used to encrypt files, sign packages, protect emails, verify releases, automate deployments and maintain chains of trust that have been working for years. When a tool with that role incorporates post-quantum cryptography into its main branch, the conversation stops being purely academic and enters the operational field.</p>
<p>The underlying idea is simple: many public-key encryption techniques we use today depend on mathematical problems that a sufficiently large quantum computer could solve much more efficiently than a classical computer. That doesn&rsquo;t mean that everything will break tomorrow. It means that data encrypted today can have a longer lifespan than the protection we give it if someone captures it now and waits to decrypt it later.</p>
<p>This risk is often called harvest now, decrypt later: collect now, decrypt later. Not all data deserves the same concern. A temporary password, a backup that is destroyed in ninety days, or a message with no future value have a different profile than contracts, medical records, trade secrets, court files, infrastructure plans, identity of whistleblowers, or historical backups that must remain private for decades.</p>
<p>NIST approved three federal post-quantum cryptography standards in August 2024: FIPS 203 for ML-KEM, FIPS 204 for ML-DSA, and FIPS 205 for SLH-DSA. FIPS 203 comes from CRYSTALS-Kyber and defines a key encapsulation mechanism, that is, a way to establish a shared secret over a public channel. GnuPG moves precisely in that area when one person encrypts for another using public keys.</p>
<p>The discussion in Hacker News was useful because it grounded the topic in practical questions: when is it advisable to migrate, how much do the keys and ciphertexts weigh, what happens with smartcards and HSM, how do they mix ML-KEM and X25519, and what the tensions between different OpenPGP families imply. More than a technical celebration, the conversation showed that the difficult part is not understanding that you have to migrate; The hard part is finding all the places where crypto lives quietly.</p>
<p>The official announcement also warns that the old 2.4 series reaches end of life two months after the announcement. This makes the news more than just an optional enhancement: those who package, manage workstations, maintain scripts, or rely on GPGME should plan for upgrade, testing, and compatibility. In security, leaving everything until the last day rarely reduces risk.</p>
<p>The responsible way to read this news is not as an alarm or as a fashion. It is an early sign of transition. Post-quantum cryptography will have a long period of coexistence with classic algorithms, with legacy formats and with equipment that is not updated at the same pace. The advantage of starting now is that organizations can learn, inventory and test without having a crisis yet.</p>
<h2>Technical reading of the advertisement<span class="hx:absolute hx:-mt-20" id="technical-reading-of-the-advertisement"></span>
    <a href="#technical-reading-of-the-advertisement" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>GnuPG 2.5.19 should not be read as a simple minor release. The announcement presents it as a version with new features and fixes, but also as the branch that prepares the jump to a 2.6 base where PQC support will no longer be an experimental rarity. For teams integrating gpg, gpg-agent, dirmngr, scdaemon or GPGME into real flows, the critical point is operational compatibility.</p>
<p>The mention of Kyber, ML-KEM and FIPS 203 is accurate. Kyber was the original proposal within the NIST post-quantum standardization process; ML-KEM is the standardized name for the key encapsulation mechanism based on modules and lattices. It does not replace symmetric encryptors that protect the payload. In an OpenPGP flow, its value is in establishing secrets for recipients.</p>
<p>The detail that should guide adoption is the hybrid approach. In the community discussion it was highlighted that ML-KEM is often combined with X25519 or another classical algorithm, so that security does not depend on a single mathematical family. This reduces the risk of betting prematurely on a new algorithm and, at the same time, reduces future exposure to a cryptographically relevant quantum computer.</p>
<h2>OpenPGP compatibility, formats and debt<span class="hx:absolute hx:-mt-20" id="openpgp-compatibility-formats-and-debt"></span>
    <a href="#openpgp-compatibility-formats-and-debt" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The OpenPGP world suffers from a well-known tension: modernizing without breaking too many installations. RFC 4880, RFC 9580, LibrePGP, historical implementations and new libraries coexist with different priorities. For a technical team, the bottom line should not be to reflexively choose sides, but rather to map which clients, keys, key servers, frontends, and automations are involved in each exchange.</p>
<p>GnuPG claims that its new versions maintain compatibility with previous versions. That promise helps, but it doesn&rsquo;t eliminate evidence. A message that encrypts well on a station may fail on an old pipeline, on a frozen container image, on a mail frontend that invokes gpg with outdated options, or on a hardware token that doesn&rsquo;t support the expected stuff.</p>
<p>The PQC transition also changes size assumptions. Public keys, wrappers, and certain metadata can grow. For emails and loose files it&rsquo;s probably not a bottleneck. For high-volume protocols, mass storage of small messages, embedded systems, or channels with strict limits, size does enter the decision matrix. OpenPGP isn&rsquo;t typically on the latency hot road, but not all uses are created equal.</p>
<h2>Inventory before migration<span class="hx:absolute hx:-mt-20" id="inventory-before-migration"></span>
    <a href="#inventory-before-migration" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The first technical deliverable is not to install 2.5.19 everywhere. It is a cryptographic inventory. It lists where GnuPG is used directly, where it appears via GPGME, what scripts invoke gpg, what jobs verify signatures, what backups encrypt with PGP recipients, what keys live on smartcards, what packages are signed, and what external systems expect a certain format.</p>
<p>This inventory must record useful life of the data, criticality, process owner, installed version, operating system, distribution method, hardware dependency, and rollback plan. Without that foundation, the migration becomes a collection of local changes. With that basis, you can decide which flows require early PQC and which can wait for the normal platform cycle.</p>
<p>Data useful life is the most missing criterion in many organizations. A file encrypted for transport and destroyed the next day does not have the same risk as a contract signed and archived for twenty years. A rotating backup is not evaluated the same as a historical repository. The migration matrix should sort by future confidentiality, not by ease of update.</p>
<h2>Smartcards, HSMs and hardware<span class="hx:absolute hx:-mt-20" id="smartcards-hsms-and-hardware"></span>
    <a href="#smartcards-hsms-and-hardware" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The biggest frictions will probably appear in hardware. Smartcards and HSMs have long life cycles, certifications, controlled firmware, and memory or compute limits. Some devices may incorporate firmware support; others don&rsquo;t. Some manufacturers include reprogrammable acceleration; others depend on fixed silicon. For keys with a life of five to ten years, the 2026 purchasing decision should already ask for PQC.</p>
<p>The practical recommendation is to separate key roles. Don&rsquo;t mix a long-term root signing key with an operational encryption key that needs to evolve quickly. Keep subkeys, rotation and expiration well defined. GnuPG allows for fairly flexible key management models; Using them with discipline reduces the pressure when an algorithm, device, or policy changes.</p>
<p>In environments with HSM, add real performance tests. ML-KEM may be computationally efficient, but its sizes and integration paths affect buffers, logs, API limits, backups, replication, and auditing. The question is not just whether the algorithm runs fast, but whether the entire system around it accepts the new objects without truncating, rejecting or registering sensitive material.</p>
<h2>Upgrade plan for equipment<span class="hx:absolute hx:-mt-20" id="upgrade-plan-for-equipment"></span>
    <a href="#upgrade-plan-for-equipment" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>A reasonable plan starts with laboratories. Install GnuPG 2.5.19 in controlled environments, generate test keys, encrypt for mixed recipients, verify signatures, test import and export, run your existing scripts and compare outputs. Document warnings, format changes, new options and dependencies. Repeat on Linux, macOS, Windows, and containers if your organization uses them.</p>
<p>Then test interoperability with your real clients: mail frontends, password managers that use OpenPGP, release systems, internal repositories, backup tools, S/MIME if applicable and CI/CD automations. Claimed compatibility is no substitute for test arrays because bugs often live at the edges: encryption, agent permissions, pinentry, trustdb, socket routes, and local security policies.</p>
<p>The update should also consider the 2.4 series. The official announcement indicates that it reaches the end of life two months later. If you have base images, internal packages, or endpoints that are still stuck at 2.4, define a freeze date, a deployment date, and a remediation date. The worst outcome is discovering the end of support when an operational bug or security alert appears.</p>
<h2>Technical checklist<span class="hx:absolute hx:-mt-20" id="technical-checklist"></span>
    <a href="#technical-checklist" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Check versions with <code>gpg --version</code> and document supporting libraries. Check if your pipelines install from the operating system, from their own repositories or from tarballs. Confirms that GnuPG release signatures are validated with trusted signing keys and not just checksums copied from a page. In supply chain security, the way to update is part of the control.</p>
<p>Create a set of test messages: classic recipient, PQC recipient, mixed recipients, large file, small file, separate signature, attached signature, combined encryption and signature. Save expected results and automate verifications. If a third-party tool doesn&rsquo;t understand a format, don&rsquo;t uncover it with productive data or business urgency on top of it.</p>
<p>Evaluate expiration policies. PQC does not eliminate the need for rotation. On the contrary, an orderly transition needs keys with clear dates to avoid eternal objects that no one dares to touch. It defines how to publish new keys, how to revoke old ones, how to communicate changes to counterparties, and how to preserve decryption capacity for historical files without continuing to encrypt with weak material.</p>
<h2>Risks not resolved by ML-KEM<span class="hx:absolute hx:-mt-20" id="risks-not-resolved-by-ml-kem"></span>
    <a href="#risks-not-resolved-by-ml-kem" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>ML-KEM does not fix compromised endpoints. If the user&rsquo;s computer has malware, the text may be leaked before encryption or after decryption. It also does not fix bad passwords, copied private keys, uncontrolled backups, secrets stuck in tickets or verification processes skipped due to pressure. The post-quantum transition must coexist with classic operational security controls.</p>
<p>Nor does it replace post-quantum signatures. At NIST, ML-KEM pertains to key establishment; ML-DSA and SLH-DSA address digital signatures. OpenPGP uses both encryption and signatures, and each property must be evaluated separately. A serious roadmap must distinguish future confidentiality, future authenticity, non-repudiation, long-term archiving, and software verification.</p>
<p>Finally, it does not solve the fragmentation of standards. OpenPGP interoperability will continue to be an engineering and governance issue. Teams that rely on external sharing must document accepted profiles, minimum versions, and exception procedures. In cryptography, what is not written ends up being oral tradition, and oral tradition fails during incidents.</p>
<h2>Technical conclusion<span class="hx:absolute hx:-mt-20" id="technical-conclusion"></span>
    <a href="#technical-conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>GnuPG 2.5.19 is an opportunity to start a drama-free migration. The relevant algorithm already has NIST standardization, the tool already incorporates it in the main branch and the 2.4 series already has an end-of-life date close. That doesn&rsquo;t force you to activate PQC in every flow tomorrow, but it does force you to stop treating it as a future slide.</p>
<p>The recommended strategy is: inventory, laboratory, compatibility, hardware, key policies, gradual deployment and monitoring. Teams that do that now will turn the arrival of post-quantum cryptography into planned maintenance. Those who wait for an external obligation or a crisis will make the same migration, but with less time and more risk.</p>
<h2>Sources consulted<span class="hx:absolute hx:-mt-20" id="sources-consulted"></span>
    <a href="#sources-consulted" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li>GnuPG 2.5.19 official announcement: <a href="https://lists.gnupg.org/pipermail/gnupg-announce/2026q2/000504.html"target="_blank" rel="noopener">https://lists.gnupg.org/pipermail/gnupg-announce/2026q2/000504.html</a></li>
<li>Community discussion on Hacker News: <a href="https://news.ycombinator.com/item?id=47907018"target="_blank" rel="noopener">https://news.ycombinator.com/item?id=47907018</a></li>
<li>NIST, FIPS 203, FIPS 204 and FIPS 205 approved: <a href="https://csrc.nist.gov/News/2024/postquantum-cryptography-fips-approved"target="_blank" rel="noopener">https://csrc.nist.gov/News/2024/postquantum-cryptography-fips-approved</a></li>
<li>Chilean Law 21,663, Cybersecurity Framework Law: <a href="https://www.diariooficial.interior.gob.cl/publicaciones/2024/04/08/43820/01/2475674.pdf"target="_blank" rel="noopener">https://www.diariooficial.interior.gob.cl/publicaciones/2024/04/08/43820/01/2475674.pdf</a></li>
</ul>
]]></content>
  </entry>
  
  <entry>
    <title>GnuPG and post-quantum cryptography: why it matters for your privacy</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/04/26/gnupg-post-quantum-cryptography-privacy/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/04/26/gnupg-post-quantum-cryptography-privacy/</id>
    <published>2026-04-26T10:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/gnupg-pqc-privacidad.webp" type="image/webp">
  <img src="/images/blog/tech/gnupg-pqc-privacidad.webp" alt="Editorial image on GnuPG and post-quantum cryptography: why it matters for your privacy" width="1792" height="1024" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>On April 24, 2026, Werner Koch announced GnuPG 2.5.19 in the official GnuPG listing. The announcement was not strident: it talked about a new version, some improvements, bug fixes and a transition from the 2.4 series to a more modern base. However, one line concentrated the most important change: the 2.5 series introduces Kyber, also known today as ML-KEM and standardized by NIST as FIPS 203, as a post-quantum encryption algorithm.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/gnupg-pqc-privacidad.webp" type="image/webp">
  <img src="/images/blog/tech/gnupg-pqc-privacidad.webp" alt="Editorial image on GnuPG and post-quantum cryptography: why it matters for your privacy" width="1792" height="1024" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>On April 24, 2026, Werner Koch announced GnuPG 2.5.19 in the official GnuPG listing. The announcement was not strident: it talked about a new version, some improvements, bug fixes and a transition from the 2.4 series to a more modern base. However, one line concentrated the most important change: the 2.5 series introduces Kyber, also known today as ML-KEM and standardized by NIST as FIPS 203, as a post-quantum encryption algorithm.</p>
<p>GnuPG matters because it is not a laboratory curiosity. It is a free implementation of OpenPGP and S/MIME, used to encrypt files, sign packages, protect emails, verify releases, automate deployments and maintain chains of trust that have been working for years. When a tool with that role incorporates post-quantum cryptography into its main branch, the conversation stops being purely academic and enters the operational field.</p>
<p>The underlying idea is simple: many public-key encryption techniques we use today depend on mathematical problems that a sufficiently large quantum computer could solve much more efficiently than a classical computer. That doesn&rsquo;t mean that everything will break tomorrow. It means that data encrypted today can have a longer lifespan than the protection we give it if someone captures it now and waits to decrypt it later.</p>
<p>This risk is often called harvest now, decrypt later: collect now, decrypt later. Not all data deserves the same concern. A temporary password, a backup that is destroyed in ninety days, or a message with no future value have a different profile than contracts, medical records, trade secrets, court files, infrastructure plans, identity of whistleblowers, or historical backups that must remain private for decades.</p>
<p>NIST approved three federal post-quantum cryptography standards in August 2024: FIPS 203 for ML-KEM, FIPS 204 for ML-DSA, and FIPS 205 for SLH-DSA. FIPS 203 comes from CRYSTALS-Kyber and defines a key encapsulation mechanism, that is, a way to establish a shared secret over a public channel. GnuPG moves precisely in that area when one person encrypts for another using public keys.</p>
<p>The discussion in Hacker News was useful because it grounded the topic in practical questions: when is it advisable to migrate, how much do the keys and ciphertexts weigh, what happens with smartcards and HSM, how do they mix ML-KEM and X25519, and what the tensions between different OpenPGP families imply. More than a technical celebration, the conversation showed that the difficult part is not understanding that you have to migrate; The hard part is finding all the places where crypto lives quietly.</p>
<p>The official announcement also warns that the old 2.4 series reaches end of life two months after the announcement. This makes the news more than just an optional enhancement: those who package, manage workstations, maintain scripts, or rely on GPGME should plan for upgrade, testing, and compatibility. In security, leaving everything until the last day rarely reduces risk.</p>
<p>The responsible way to read this news is not as an alarm or as a fashion. It is an early sign of transition. Post-quantum cryptography will have a long period of coexistence with classic algorithms, with legacy formats and with equipment that is not updated at the same pace. The advantage of starting now is that organizations can learn, inventory and test without having a crisis yet.</p>
<h2>Privacy also has an expiration date<span class="hx:absolute hx:-mt-20" id="privacy-also-has-an-expiration-date"></span>
    <a href="#privacy-also-has-an-expiration-date" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>When we talk about privacy we usually think of something immediate: that a conversation is not read today, that a photo is not leaked this week, that an account is not taken over by an attacker. But there is information that ages in a different way. A family contract, a journalistic investigation, a business negotiation, a backup of tax documents or a medical record can remain sensitive long after they have been sent.</p>
<p>Classical cryptography works like a mathematical safe. As long as the mathematical problem is insurmountable, the attacker can have the box in front of him and still not open it. Quantum computing changes the type of tools available for certain problems. It doesn&rsquo;t create universal magic or break every type of encryption, but it does threaten a very important part of public key cryptography: RSA, Diffie-Hellman, and various elliptic curves.</p>
<p>That&rsquo;s why GnuPG 2.5.19 is interesting news for people who don&rsquo;t live in a terminal. Not because they must immediately learn the name of each algorithm, but because a historic privacy tool is paving the way for a new reality. The practical message is: lasting privacy requires updating locks before attackers have new keys.</p>
<h2>What changes with GnuPG 2.5.19<span class="hx:absolute hx:-mt-20" id="what-changes-with-gnupg-2519"></span>
    <a href="#what-changes-with-gnupg-2519" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>GnuPG was already used to encrypt and sign. The novelty is that the 2.5 series incorporates Kyber, today also called ML-KEM, as part of its post-quantum encryption support. ML-KEM does not encrypt the entire file like a symmetric algorithm would; Its role is to help two parties agree on a secret key securely. That key is then used to protect the actual content.</p>
<p>In practice, this is less like changing a home&rsquo;s entire electrical system and more like changing the mechanism that allows the key to be safely handed over. The house may still have familiar doors, windows, and routines, but key sharing is reinforced to resist future attacks. That transition is easier to accept when tools try to maintain backward compatibility.</p>
<p>GnuPG&rsquo;s announcement insists that new versions are compatible with previous ones. That point is important because privacy doesn&rsquo;t hold up if it only works for those who update on the first day. In the real world there are colleagues with old versions, servers that are slow to update, forgotten automations, and people who just want to send a file without learning a complete architecture.</p>
<h2>The risk of saving today to decrypt tomorrow<span class="hx:absolute hx:-mt-20" id="the-risk-of-saving-today-to-decrypt-tomorrow"></span>
    <a href="#the-risk-of-saving-today-to-decrypt-tomorrow" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The threat that makes this topic urgent does not need a quantum computer available today. Simply have someone capture encrypted traffic, protected emails, backups or stolen files and save them. If enough capacity appears years from now to break the old public key scheme, that old data could then be read. For short-lived information, it may not matter. For information that must remain private for a decade, it does matter.</p>
<p>The right question is not whether a quantum machine capable of breaking cryptography is just around the corner. The useful question is how long the secret should live. If the secret must last five, ten or twenty years, the migration begins before the threat becomes daily. That logic explains why banks, states, hospitals, universities and companies with intellectual property should pay attention now.</p>
<p>It also explains why the sensible reaction is not to delete everything or buy products with flashy labels. The first step is to know where there is encrypted information, who can read it, how long it is kept and what tools are used. In many homes and small businesses, GnuPG appears indirectly: when verifying software, receiving backups, signing packages, or protecting shared files.</p>
<h2>What it means to a normal person<span class="hx:absolute hx:-mt-20" id="what-it-means-to-a-normal-person"></span>
    <a href="#what-it-means-to-a-normal-person" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>For most people, this news does not mean changing habits this afternoon. It does mean understanding that security software needs maintenance. If you use GnuPG directly, it is advisable to follow the stable versions, verify downloads and not depend indefinitely on a branch that is entering end of life. If you use an application that incorporates GnuPG underneath, the task is to keep that application up to date.</p>
<p>Everyday privacy is a lot like health: it is not solved by heroic action, but by reasonable routines. Updating systems, using password managers, enabling multi-factor authentication, encrypting backups, verifying signatures, and being wary of dubious installers is still more important than obsessing over words like quantum. Post-quantum cryptography adds a layer of the future, but it does not replace basic hygiene.</p>
<p>There is an important nuance: post-quantum does not mean invulnerable. It means designed to resist known quantum attacks that threaten classical public key systems. Human error, infected computers, weak passwords, exposed private keys, and negligent vendors remain very real problems. A modern algorithm does not compensate for sloppy operation.</p>
<h2>Why the hybrid approach is reassuring<span class="hx:absolute hx:-mt-20" id="why-the-hybrid-approach-is-reassuring"></span>
    <a href="#why-the-hybrid-approach-is-reassuring" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>An idea repeated in the technical discussion is the value of combining classical cryptography with post-quantum cryptography. Instead of going all-in on a new algorithm, many systems use hybrid constructions: if the post-quantum algorithm has an unexpected weakness, the classical part still provides protection; If a quantum computer appears capable of breaking the classical part, the post-quantum part maintains the defense.</p>
<p>For a non-technical person, the analogy is simple: it is not putting two identical locks, but two locks based on different principles. If tomorrow a lock is discovered for one, the other does not necessarily fall at the same time. That redundancy has costs, such as slightly larger messages and more compatibility testing, but for files and emails those costs are usually acceptable.</p>
<p>The conversation also reminds that the transition can be slow for physical reasons. Smartcards, hardware tokens, and HSMs cannot always learn new algorithms with a software update. Some devices will have to wait for firmware, others will need replacement, and others will remain as support for old keys. That&rsquo;s all the more reason to start with inventories, not promises.</p>
<h2>What should you do now<span class="hx:absolute hx:-mt-20" id="what-should-you-do-now"></span>
    <a href="#what-should-you-do-now" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>If you are an individual user, keep your tools up to date and avoid relying on unsupported versions. If you run a small business, ask what encrypted data should remain confidential for years. If you buy software, start asking about the post-quantum roadmap, not to demand a perfect answer today, but to distinguish vendors who are thinking about the problem from those who will only react late.</p>
<p>If you handle sensitive information, check your backups. Many future leaks will not come from messages intercepted in transit, but from files copied from compromised systems. An encrypted backup with current best practices is better than one without encryption; a backup with future-proof mechanisms will be better even if the retention period is long.</p>
<p>It is also convenient to separate confidentiality from authenticity. GnuPG is used to encrypt and sign. ML-KEM is related to establishing secrets for encryption; Post-quantum signatures go their own way, with standards like ML-DSA and SLH-DSA. In other words, protecting that no one reads content and proving who signed it are different objectives, although both live under the umbrella of cryptography.</p>
<h2>A small piece of news with a cultural effect<span class="hx:absolute hx:-mt-20" id="a-small-piece-of-news-with-a-cultural-effect"></span>
    <a href="#a-small-piece-of-news-with-a-cultural-effect" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The most interesting thing about GnuPG 2.5.19 is that it normalizes a transition that for years sounded distant. Quantum computing stops being just a headline threat and becomes a concrete pressure on versions, packages, compatibility and updating habits. That&rsquo;s good: societies are better prepared when changes come in known tools and not as miracle products.</p>
<p>Privacy does not depend only on governments or large companies. It also depends on free software maintained by communities, on publicly reviewed standards, on users who verify signatures, and on administrators who update judiciously. GnuPG is part of that discrete infrastructure. Moving towards post-quantum cryptography does not solve everything, but it marks a clear direction.</p>
<p>The practical conclusion is calm: there is no need to panic, but it is also not advisable to wait until the problem is urgent. If your secrets are short-lived, the risk is lower. If your secrets live long, the post-quantum transition is already part of your privacy calendar. And if you don&rsquo;t know how long your secrets live, that&rsquo;s the first question worth answering.</p>
<h2>Sources consulted<span class="hx:absolute hx:-mt-20" id="sources-consulted"></span>
    <a href="#sources-consulted" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li>GnuPG 2.5.19 official announcement: <a href="https://lists.gnupg.org/pipermail/gnupg-announce/2026q2/000504.html"target="_blank" rel="noopener">https://lists.gnupg.org/pipermail/gnupg-announce/2026q2/000504.html</a></li>
<li>Community discussion on Hacker News: <a href="https://news.ycombinator.com/item?id=47907018"target="_blank" rel="noopener">https://news.ycombinator.com/item?id=47907018</a></li>
<li>NIST, FIPS 203, FIPS 204 and FIPS 205 approved: <a href="https://csrc.nist.gov/News/2024/postquantum-cryptography-fips-approved"target="_blank" rel="noopener">https://csrc.nist.gov/News/2024/postquantum-cryptography-fips-approved</a></li>
<li>Chilean Law 21,663, Cybersecurity Framework Law: <a href="https://www.diariooficial.interior.gob.cl/publicaciones/2024/04/08/43820/01/2475674.pdf"target="_blank" rel="noopener">https://www.diariooficial.interior.gob.cl/publicaciones/2024/04/08/43820/01/2475674.pdf</a></li>
</ul>
]]></content>
  </entry>
  
  <entry>
    <title>Post-quantum cryptography in Chile: impact for companies, the State and digital providers</title>
    <link href="https://elcsoft.cl/en/blog/tech/2026/04/26/post-quantum-cryptography-chile-digital-ecosystem/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/tech/2026/04/26/post-quantum-cryptography-chile-digital-ecosystem/</id>
    <published>2026-04-26T10:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/pqc-chile-ecosistema.webp" type="image/webp">
  <img src="/images/blog/tech/pqc-chile-ecosistema.webp" alt="Editorial image about Post-quantum Cryptography in Chile: impact for companies, the State and digital providers" width="1792" height="1024" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>On April 24, 2026, Werner Koch announced GnuPG 2.5.19 in the official GnuPG listing. The announcement was not strident: it talked about a new version, some improvements, bug fixes and a transition from the 2.4 series to a more modern base. However, one line concentrated the most important change: the 2.5 series introduces Kyber, also known today as ML-KEM and standardized by NIST as FIPS 203, as a post-quantum encryption algorithm.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/blog/tech/pqc-chile-ecosistema.webp" type="image/webp">
  <img src="/images/blog/tech/pqc-chile-ecosistema.webp" alt="Editorial image about Post-quantum Cryptography in Chile: impact for companies, the State and digital providers" width="1792" height="1024" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>On April 24, 2026, Werner Koch announced GnuPG 2.5.19 in the official GnuPG listing. The announcement was not strident: it talked about a new version, some improvements, bug fixes and a transition from the 2.4 series to a more modern base. However, one line concentrated the most important change: the 2.5 series introduces Kyber, also known today as ML-KEM and standardized by NIST as FIPS 203, as a post-quantum encryption algorithm.</p>
<p>GnuPG matters because it is not a laboratory curiosity. It is a free implementation of OpenPGP and S/MIME, used to encrypt files, sign packages, protect emails, verify releases, automate deployments and maintain chains of trust that have been working for years. When a tool with that role incorporates post-quantum cryptography into its main branch, the conversation stops being purely academic and enters the operational field.</p>
<p>The underlying idea is simple: many public-key encryption techniques we use today depend on mathematical problems that a sufficiently large quantum computer could solve much more efficiently than a classical computer. That doesn&rsquo;t mean that everything will break tomorrow. It means that data encrypted today can have a longer lifespan than the protection we give it if someone captures it now and waits to decrypt it later.</p>
<p>This risk is often called harvest now, decrypt later: collect now, decrypt later. Not all data deserves the same concern. A temporary password, a backup that is destroyed in ninety days, or a message with no future value have a different profile than contracts, medical records, trade secrets, court files, infrastructure plans, identity of whistleblowers, or historical backups that must remain private for decades.</p>
<p>NIST approved three federal post-quantum cryptography standards in August 2024: FIPS 203 for ML-KEM, FIPS 204 for ML-DSA, and FIPS 205 for SLH-DSA. FIPS 203 comes from CRYSTALS-Kyber and defines a key encapsulation mechanism, that is, a way to establish a shared secret over a public channel. GnuPG moves precisely in that area when one person encrypts for another using public keys.</p>
<p>The discussion in Hacker News was useful because it grounded the topic in practical questions: when is it advisable to migrate, how much do the keys and ciphertexts weigh, what happens with smartcards and HSM, how do they mix ML-KEM and X25519, and what the tensions between different OpenPGP families imply. More than a technical celebration, the conversation showed that the difficult part is not understanding that you have to migrate; The hard part is finding all the places where crypto lives quietly.</p>
<p>The official announcement also warns that the old 2.4 series reaches end of life two months after the announcement. This makes the news more than just an optional enhancement: those who package, manage workstations, maintain scripts, or rely on GPGME should plan for upgrade, testing, and compatibility. In security, leaving everything until the last day rarely reduces risk.</p>
<p>The responsible way to read this news is not as an alarm or as a fashion. It is an early sign of transition. Post-quantum cryptography will have a long period of coexistence with classic algorithms, with legacy formats and with equipment that is not updated at the same pace. The advantage of starting now is that organizations can learn, inventory and test without having a crisis yet.</p>
<h2>Why this news matters in Chile<span class="hx:absolute hx:-mt-20" id="why-this-news-matters-in-chile"></span>
    <a href="#why-this-news-matters-in-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>At first glance, GnuPG 2.5.19 seems like news for international developers. But Chile is in the process of maturing its cybersecurity institutions. Law 21,663, published on April 8, 2024, created the Cybersecurity Framework Law, defined the National Cybersecurity Agency and established obligations for essential services and operators of vital importance. In this context, cryptography stops being a technical detail and becomes part of national resilience.</p>
<p>Chilean law talks about confidentiality, integrity, availability, resilience, authentication, risk management and security by design. Those concepts are not met with firewalls or training alone. They also depend on cryptographic decisions: how data is protected in transit, how backups are kept, how updates are signed, how systems are authenticated, and how long critical information should remain secret.</p>
<p>Post-quantum cryptography comes in right there. Not because all Chilean organizations must change their algorithm tomorrow, but because entities that handle long-lived data must incorporate risk into their plans. Healthcare, banking, energy, telecommunications, digital infrastructure, utilities and IT providers have conservation horizons that can far outpace technology fad cycles.</p>
<h2>Essential services and long-lasting data<span class="hx:absolute hx:-mt-20" id="essential-services-and-long-lasting-data"></span>
    <a href="#essential-services-and-long-lasting-data" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The Framework Law identifies as essential services State agencies, public service concessions and private sectors such as energy, fuel, water, telecommunications, digital infrastructure, technology services managed by third parties, transportation, banking, means of payment, social security, health and pharmaceuticals. Many of these sectors encrypt information that can maintain value for decades.</p>
<p>A hospital does not protect just one medical appointment this week. Protects medical records, diagnoses, family history, images, prescriptions and decisions that may affect employment, insurance, reputation and private life. A bank doesn&rsquo;t just protect an instant transfer. Protects contracts, risk profiles, asset information, audits and regulatory evidence. An electric one does not only protect internal email. Protects plans, telemetry, credentials and operational continuity.</p>
<p>The harvest now, decrypt later risk is especially relevant for that information. An attacker who steals encrypted backups from a Chilean institution today may not have a way to read them now, but he could keep them. If the schema used becomes obsolete before the data becomes insensitive, the organization will inherit a lazy leak. In regulation, reputation and public trust, a delayed leak is still a leak.</p>
<h2>ANCI, CSIRT and technology purchases<span class="hx:absolute hx:-mt-20" id="anci-csirt-and-technology-purchases"></span>
    <a href="#anci-csirt-and-technology-purchases" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The ANCI and CSIRT will have to coordinate incidents, guidelines, obligations and communication with multiple sectors. Post-quantum crypto should not be treated as an isolated purchase, but rather as a risk management dimension. For public organizations, municipalities, hospitals and state companies, the question should appear in technical bases, tenders, infrastructure renewals and contracts with suppliers.</p>
<p>A bad way to approach the issue would be to require generic labels such as quantum safe without defining profiles, standards, interoperability or dates. A good way would be to ask for cryptographic inventory, support roadmap for ML-KEM and post-quantum signatures, update mechanisms, support for recognized standards, evidence of testing and transition plan for long-term keys.</p>
<p>Chile buys a lot of software as a service. That shifts the problem to suppliers. If a foreign platform stores Chilean data for ten years, the local entity still needs to ask how it is encrypted, who controls the keys, what algorithms are used for exchange, if there is support for client-managed keys and how post-quantum migration will be planned. Outsourcing infrastructure does not externalize reputational responsibility.</p>
<h2>Private ecosystem: banking, health, energy and telecom<span class="hx:absolute hx:-mt-20" id="private-ecosystem-banking-health-energy-and-telecom"></span>
    <a href="#private-ecosystem-banking-health-energy-and-telecom" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Chilean banking will likely be one of the first industries where the conversation becomes concrete. Not only for confidentiality, but for auditing, continuity, compliance and dependence on global suppliers. Banking security teams should cross PQC with key management, HSM, B2B channels, software signing, APIs, document custody, backups and Financial Market Commission requirements where applicable.</p>
<p>In health, the challenge will be twofold: patient privacy and continuity of services. Many hospitals operate with heterogeneous systems, legacy integrations, and specialized vendors. Migration cannot rely on a general update. It requires identifying clinical repositories, laboratory integrations, images, listing platforms, referral channels, credentials and endorsements that may need long-term protection.</p>
<p>In energy, water and telecommunications, the question connects with operational technology. Not everything can be updated quickly, and not everything should be touched without testing. But new purchases of gateways, monitoring platforms, management channels, ticketing systems, configuration repositories and remote maintenance tools can be required to have a clear path to modern algorithms and key replacement.</p>
<h2>Chilean software providers<span class="hx:absolute hx:-mt-20" id="chilean-software-providers"></span>
    <a href="#chilean-software-providers" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>For Chilean companies that develop software, the GnuPG news is a commercial signal. Customers will begin to ask about PQC, even if they do so vaguely at first. Responding well does not mean promising an immediate full migration. It means demonstrating that the product knows where it uses cryptography, that it separates encryption from signatures, that it can rotate keys, and that it does not depend on abandoned libraries.</p>
<p>Vendors that distribute packages, mobile applications, agents, or firmware should review their signature strings. Trust in an update depends on being able to verify that it comes from who it says it comes from. Although ML-KEM is related to encryption and not directly to signing, the post-quantum movement will push questions about the entire cryptographic cycle. It is better to have organized answers than to improvise in the face of an audit.</p>
<p>There is also an opportunity for professional services. Cryptographic inventories, data lifetime analysis, interoperability testing, PKI redesign, key governance, HSM evaluation, and executive training will be real needs. Chile does not need to wait for everything to come packaged from outside. You can build local capacity by turning this transition into disciplined practice.</p>
<h2>Public sector and municipalities<span class="hx:absolute hx:-mt-20" id="public-sector-and-municipalities"></span>
    <a href="#public-sector-and-municipalities" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The Chilean public sector is diverse. A ministry, a centralized service, a regional hospital and a municipality do not have the same equipment or budgets. That is why planning must be proportional. Not all institutions need advanced pilots in 2026, but all should be able to answer basic questions: what sensitive data they retain, how they encrypt it, who manages keys, how they verify software, and what contracts they rely on third parties.</p>
<p>Municipalities deserve special attention because they manage social information, permits, payments, local security, benefits and citizen documents. They often depend on external suppliers and limited budgets. Simple national guidance on crypto inventory and data preservation would have more impact than requiring complex, unsupported solutions. The post-quantum transition must be designed for institutions large and small.</p>
<p>Security by default and by design, recognized by law, helps justify this approach. If a new system is put out to tender today to operate for ten years, it is not enough for it to meet current minimums. It should be able to upgrade crypto without completely redesigning itself. That capacity for change is part of resilience.</p>
<h2>What the Chilean ecosystem should do in 2026<span class="hx:absolute hx:-mt-20" id="what-the-chilean-ecosystem-should-do-in-2026"></span>
    <a href="#what-the-chilean-ecosystem-should-do-in-2026" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>First, inventory. Each relevant organization should identify algorithms, libraries, certificates, PGP keys, tunnels, encrypted backups, signing mechanisms, HSMs, smart cards and systems that use cryptography without central visibility. The goal is not to solve everything, but to know where the risk is.</p>
<p>Second, classify by useful life. Data that must remain confidential for more than five years deserves priority. Third, update supported tools and avoid end-of-life branches, such as GnuPG 2.4 once the deadline indicated by the project has passed. Fourth, require suppliers to have a specific roadmap, not just marketing.</p>
<p>Fifth, test in laboratories. Chilean institutions can create pilots with files, backups, package signatures, exchange between areas and real clients. Sixth, coordinate sectorally. Banks, health, energy, telecom and the State should not discover incompatibilities separately if they can share non-sensitive learning.</p>
<h2>Conclusion for Chile<span class="hx:absolute hx:-mt-20" id="conclusion-for-chile"></span>
    <a href="#conclusion-for-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The arrival of ML-KEM to GnuPG does not immediately transform country risk, but it does show that the transition is already entering concrete tools. For Chile, which has just strengthened its institutional cybersecurity framework, this is an opportunity to incorporate post-quantum cryptography in risk management, procurement, audits and system design.</p>
<p>The right approach is not panic or indifference. It&rsquo;s preparation. The question is not whether every Chilean service should activate PQC tomorrow, but what Chilean data will still be sensitive when classic public-key cryptography starts to lose margin. Those who answer that question with inventory, testing, and key governance will be better positioned than those who wait for a last-minute instruction.</p>
<p>In cybersecurity, successful transitions look boring from the outside: updated versions, clear contracts, rotated keys, vetted vendors, tested backups, and teams that know what to do. If GnuPG 2.5.19 serves to push that conversation in Chile, then a technical line in a free software announcement will have had a much broader impact than its changelog.</p>
<h2>Sources consulted<span class="hx:absolute hx:-mt-20" id="sources-consulted"></span>
    <a href="#sources-consulted" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li>GnuPG 2.5.19 official announcement: <a href="https://lists.gnupg.org/pipermail/gnupg-announce/2026q2/000504.html"target="_blank" rel="noopener">https://lists.gnupg.org/pipermail/gnupg-announce/2026q2/000504.html</a></li>
<li>Community discussion on Hacker News: <a href="https://news.ycombinator.com/item?id=47907018"target="_blank" rel="noopener">https://news.ycombinator.com/item?id=47907018</a></li>
<li>NIST, FIPS 203, FIPS 204 and FIPS 205 approved: <a href="https://csrc.nist.gov/News/2024/postquantum-cryptography-fips-approved"target="_blank" rel="noopener">https://csrc.nist.gov/News/2024/postquantum-cryptography-fips-approved</a></li>
<li>Chilean Law 21,663, Cybersecurity Framework Law: <a href="https://www.diariooficial.interior.gob.cl/publicaciones/2024/04/08/43820/01/2475674.pdf"target="_blank" rel="noopener">https://www.diariooficial.interior.gob.cl/publicaciones/2024/04/08/43820/01/2475674.pdf</a></li>
</ul>
]]></content>
  </entry>
  
  <entry>
    <title>How to Block a Number on Movistar Chile: Step-by-Step Guide</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/04/23/how-to-block-number-movistar-chile/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/04/23/how-to-block-number-movistar-chile/</id>
    <published>2026-04-23T11:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Block numbers on Movistar Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>If you use Movistar in Chile and you&rsquo;re tired of phone spam, collections, or commercial calls you didn&rsquo;t ask for, this guide explains all available options for blocking numbers effectively.</p>
<h2>What Options Exist to Block Numbers on Movistar Chile?<span class="hx:absolute hx:-mt-20" id="what-options-exist-to-block-numbers-on-movistar-chile"></span>
    <a href="#what-options-exist-to-block-numbers-on-movistar-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Like other carriers in Chile, Movistar doesn&rsquo;t offer a standard personalized blacklist service for specific numbers on residential mobile plans. Incoming call control is primarily managed from the device.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Block numbers on Movistar Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>If you use Movistar in Chile and you&rsquo;re tired of phone spam, collections, or commercial calls you didn&rsquo;t ask for, this guide explains all available options for blocking numbers effectively.</p>
<h2>What Options Exist to Block Numbers on Movistar Chile?<span class="hx:absolute hx:-mt-20" id="what-options-exist-to-block-numbers-on-movistar-chile"></span>
    <a href="#what-options-exist-to-block-numbers-on-movistar-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Like other carriers in Chile, Movistar doesn&rsquo;t offer a standard personalized blacklist service for specific numbers on residential mobile plans. Incoming call control is primarily managed from the device.</p>
<p>However, you have available:</p>
<ol>
<li><strong>Native iOS and Android tools</strong> for individual blocking</li>
<li><strong>ChaoSPAM</strong> for automatic prefix-based spam blocking</li>
<li><strong>Movistar customer service</strong> for harassment or fraud situations</li>
</ol>
<h2>Block a Number on Movistar from iPhone<span class="hx:absolute hx:-mt-20" id="block-a-number-on-movistar-from-iphone"></span>
    <a href="#block-a-number-on-movistar-from-iphone" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The process is identical to any carrier because it happens in iOS, not on Movistar&rsquo;s network:</p>
<h3>From Recent Calls<span class="hx:absolute hx:-mt-20" id="from-recent-calls"></span>
    <a href="#from-recent-calls" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ol>
<li>Open the <strong>Phone</strong> app</li>
<li>Go to the <strong>Recents</strong> tab</li>
<li>Tap the <strong>ⓘ</strong> icon next to the number</li>
<li>Scroll down to <strong>Block this Caller</strong></li>
<li>Confirm with <strong>Block Contact</strong></li>
</ol>
<p>The number is completely silenced: it cannot call you, send SMS, or contact you via FaceTime.</p>
<h3>From a Saved Contact<span class="hx:absolute hx:-mt-20" id="from-a-saved-contact"></span>
    <a href="#from-a-saved-contact" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>If the number is in your contacts:</p>
<ol>
<li>Open <strong>Contacts</strong></li>
<li>Find and tap the contact</li>
<li>Scroll to the bottom and tap <strong>Block this Contact</strong></li>
<li>Confirm</li>
</ol>
<h3>Review Your Blocked List<span class="hx:absolute hx:-mt-20" id="review-your-blocked-list"></span>
    <a href="#review-your-blocked-list" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li><strong>Settings &gt; Phone &gt; Blocked Contacts</strong></li>
<li>Here you can add numbers manually and remove any you no longer want to block</li>
</ul>
<h2>Block a Number on Movistar from Android<span class="hx:absolute hx:-mt-20" id="block-a-number-on-movistar-from-android"></span>
    <a href="#block-a-number-on-movistar-from-android" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The process depends on your device manufacturer. General steps:</p>
<ol>
<li>Open the <strong>Phone</strong> or <strong>Dialer</strong> app</li>
<li>Go to <strong>Recents</strong> and tap the call to block</li>
<li>Select <strong>Block</strong> or <strong>Reject calls from this number</strong></li>
<li>Confirm</li>
</ol>
<p><strong>On Samsung with Movistar:</strong>
Phone &gt; Recents &gt; long press the number &gt; Block/Reject calls</p>
<p><strong>On Xiaomi:</strong>
Phone &gt; Recents &gt; long press &gt; Block</p>
<p><strong>On Huawei:</strong>
Phone &gt; Recents &gt; tap the number &gt; More &gt; Block contact</p>
<p><strong>Blocked numbers management:</strong>
Phone &gt; Settings (⋮) &gt; Blocked numbers</p>
<h2>Movistar and Phone Spam: The Real Problem<span class="hx:absolute hx:-mt-20" id="movistar-and-phone-spam-the-real-problem"></span>
    <a href="#movistar-and-phone-spam-the-real-problem" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Movistar customers in Chile receive the same type of spam as everyone else: call centers for insurance, card offers, collections, surveys. These don&rsquo;t come from Movistar (though sometimes they may be Movistar&rsquo;s own campaigns): most are external companies that have your number from some database.</p>
<p>The typical pattern is that spam comes from 600, 800, or 809 prefixes, constantly rotating among different numbers within the same range. Blocking each number individually is inefficient against this volume.</p>
<h2>Solution for Mass Spam with Movistar Line: ChaoSPAM<span class="hx:absolute hx:-mt-20" id="solution-for-mass-spam-with-movistar-line-chaospam"></span>
    <a href="#solution-for-mass-spam-with-movistar-line-chaospam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> is the most effective solution for high-volume spam. Compatible with any Chilean carrier including Movistar:</p>
<ul>
<li>Automatically blocks <strong>all 600s</strong>, <strong>all 800s</strong>, and <strong>all 809s</strong></li>
<li>No manual management required: once activated, it operates on its own</li>
<li>Works in the background with no impact on battery or performance</li>
<li>Completely free for iPhone and Android</li>
<li>Your data remains on your device: ChaoSPAM doesn&rsquo;t upload contacts to external servers</li>
</ul>
<p>The difference from manual blocking is fundamental: instead of chasing each new number, you block the entire pattern at once.</p>
<h2>Special Cases with Movistar Chile<span class="hx:absolute hx:-mt-20" id="special-cases-with-movistar-chile"></span>
    <a href="#special-cases-with-movistar-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>If You Receive Commercial Calls from Movistar Itself<span class="hx:absolute hx:-mt-20" id="if-you-receive-commercial-calls-from-movistar-itself"></span>
    <a href="#if-you-receive-commercial-calls-from-movistar-itself" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Movistar may call you from their own numbers to offer plan upgrades, additional services, or billing information. If you don&rsquo;t want these calls:</p>
<ol>
<li>Call <strong>600 600 0123</strong> (Movistar support)</li>
<li>Request to be excluded from marketing campaigns</li>
</ol>
<p>You can also manage this through the Mi Movistar app or movistar.cl website.</p>
<h3>If You Suspect Fraud in Movistar&rsquo;s Name<span class="hx:absolute hx:-mt-20" id="if-you-suspect-fraud-in-movistars-name"></span>
    <a href="#if-you-suspect-fraud-in-movistars-name" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>If you receive a call where someone claims to be from Movistar and asks for passwords, card numbers, or verification codes:</p>
<ul>
<li>Don&rsquo;t provide any data</li>
<li>Hang up and call 600 600 0123 to verify if the communication was legitimate</li>
<li>Report the fraud attempt</li>
</ul>
<h3>For Systematic Phone Harassment<span class="hx:absolute hx:-mt-20" id="for-systematic-phone-harassment"></span>
    <a href="#for-systematic-phone-harassment" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>For cases of repeated harassment with documentation (times, frequency), Movistar can assist at the network level in extreme cases. Contact customer service with available evidence.</p>
<p><strong>How to Contact Movistar:</strong></p>
<ul>
<li>From Movistar mobile: 105</li>
<li>From another phone: 600 600 0123</li>
<li>App: Mi Movistar</li>
</ul>
<h2>Comparison Table of Blocking Methods for Movistar<span class="hx:absolute hx:-mt-20" id="comparison-table-of-blocking-methods-for-movistar"></span>
    <a href="#comparison-table-of-blocking-methods-for-movistar" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><table>
  <thead>
      <tr>
          <th>Method</th>
          <th>Effort</th>
          <th>Covers</th>
          <th>Limitation</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Individual blocking (iOS/Android)</td>
          <td>Per number</td>
          <td>Specific number</td>
          <td>Call centers rotate numbers</td>
      </tr>
      <tr>
          <td>Silence unknown callers</td>
          <td>One setting</td>
          <td>All unknowns</td>
          <td>Also blocks legitimate calls</td>
      </tr>
      <tr>
          <td>ChaoSPAM</td>
          <td>One setting</td>
          <td>600, 800, 809 prefixes and more</td>
          <td>Doesn&rsquo;t cover mobile spam numbers</td>
      </tr>
      <tr>
          <td>Contact Movistar</td>
          <td>Support management</td>
          <td>Documented harassment cases</td>
          <td>Only extreme cases</td>
      </tr>
  </tbody>
</table>
<h2>Tips for Movistar Customers Who Want Less Spam<span class="hx:absolute hx:-mt-20" id="tips-for-movistar-customers-who-want-less-spam"></span>
    <a href="#tips-for-movistar-customers-who-want-less-spam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><strong>Save known Movistar numbers</strong>: the support number (105 from Movistar) and any number you&rsquo;ve received legitimate communications from.</li>
<li><strong>Don&rsquo;t respond to suspicious SMS</strong>: phishing via SMS is just as common as by call. Don&rsquo;t click links or respond to SMS from unknown numbers claiming to be Movistar.</li>
<li><strong>Use ChaoSPAM for prefix spam</strong>: the most efficient way to reduce the volume of interruptions without affecting your ability to receive real calls.</li>
<li><strong>Activate Mi Movistar app notifications</strong>: to receive account information via app instead of by call, reducing the need for Movistar to call you for account notices.</li>
</ul>
<h2>Frequently Asked Questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Does ChaoSPAM work the same on Movistar as on other carriers?</strong>
Yes. ChaoSPAM operates at the operating system level (iOS or Android), not the carrier network. It works exactly the same with Movistar, Entel, WOM, Claro, or others.</p>
<p><strong>Can I accidentally block Movistar&rsquo;s support number?</strong>
If you block 105 or 600 600 0123, you won&rsquo;t receive Movistar communications. We recommend saving those numbers in your contacts before activating general blocks or silencing unknown callers.</p>
<p><strong>Does number blocking work with Movistar prepaid?</strong>
Yes. Device-level blocking doesn&rsquo;t depend on plan type. It works equally with prepaid and postpaid.</p>
<p><strong>Does Movistar offer any network-integrated caller ID service?</strong>
Movistar doesn&rsquo;t offer an advanced caller ID service as standard for residential customers in Chile beyond what the standard network transmits. Additional identification of spam numbers is delegated to device apps.</p>
<p><strong>If I block a number with Movistar, does it affect my bill?</strong>
No. Blocking incoming calls generates no charges and doesn&rsquo;t affect your plan.</p>
<p><strong>Can I set automatic time-based blocking on Movistar?</strong>
Not directly with Movistar. However, on iPhone you can use &ldquo;Do Not Disturb&rdquo; mode to silence all calls during specific hours. ChaoSPAM operates continuously without time restrictions.</p>
<h2>Fewer Interruptions, Same Connectivity<span class="hx:absolute hx:-mt-20" id="fewer-interruptions-same-connectivity"></span>
    <a href="#fewer-interruptions-same-connectivity" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Being a Movistar customer doesn&rsquo;t mean accepting spam. With your phone&rsquo;s native settings and <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> to block the most frequent spam prefixes in Chile, you regain total control over who can make your phone ring.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>How to Block a Number on WOM Chile: Complete Guide</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/04/23/how-to-block-number-wom-chile/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/04/23/how-to-block-number-wom-chile/</id>
    <published>2026-04-23T10:50:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Block numbers on WOM Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>You&rsquo;re a WOM customer in Chile and you&rsquo;re receiving spam calls, telemarketing, or simply want to block a specific someone. Your carrier has limited capabilities for individual blocking, but your phone&rsquo;s operating system and specialized apps give you all the control you need.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Block numbers on WOM Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>You&rsquo;re a WOM customer in Chile and you&rsquo;re receiving spam calls, telemarketing, or simply want to block a specific someone. Your carrier has limited capabilities for individual blocking, but your phone&rsquo;s operating system and specialized apps give you all the control you need.</p>
<h2>What Can You Do as a WOM Customer to Block Calls?<span class="hx:absolute hx:-mt-20" id="what-can-you-do-as-a-wom-customer-to-block-calls"></span>
    <a href="#what-can-you-do-as-a-wom-customer-to-block-calls" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Individual number blocking in Chile is not managed through the carrier on standard mobile plans. WOM, like Entel, Movistar, and Claro, doesn&rsquo;t offer a personalized blacklist service by number for residential customers. Effective blocking happens at the phone level.</p>
<p>What WOM can do in extreme cases is assist you if there is documented phone harassment or fraud in their name. For that, contact customer service directly.</p>
<p>For daily use, the tools are:</p>
<ul>
<li><strong>Native iPhone or Android settings</strong>: number-by-number blocking</li>
<li><strong>ChaoSPAM</strong>: automatic blocking of spam prefixes like 600, 800, and 809</li>
</ul>
<h2>How to Block a Number on WOM from iPhone<span class="hx:absolute hx:-mt-20" id="how-to-block-a-number-on-wom-from-iphone"></span>
    <a href="#how-to-block-a-number-on-wom-from-iphone" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The process is the same as with any carrier, since it occurs in iOS:</p>
<h3>Method 1: From Call History<span class="hx:absolute hx:-mt-20" id="method-1-from-call-history"></span>
    <a href="#method-1-from-call-history" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ol>
<li>Open the <strong>Phone</strong> app</li>
<li>Go to the <strong>Recents</strong> tab</li>
<li>Tap the <strong>ⓘ</strong> button to the right of the number you want to block</li>
<li>Scroll to the bottom and tap <strong>Block this Caller</strong></li>
<li>Confirm with <strong>Block Contact</strong></li>
</ol>
<p>From that moment, that number cannot make your phone ring, send you SMS, or contact you via FaceTime.</p>
<h3>Method 2: From the Contacts App<span class="hx:absolute hx:-mt-20" id="method-2-from-the-contacts-app"></span>
    <a href="#method-2-from-the-contacts-app" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>If the number is saved:</p>
<ol>
<li>Open <strong>Contacts</strong></li>
<li>Find the contact</li>
<li>Scroll to the bottom and tap <strong>Block this Contact</strong></li>
</ol>
<h3>Managing Blocked Numbers on iPhone<span class="hx:absolute hx:-mt-20" id="managing-blocked-numbers-on-iphone"></span>
    <a href="#managing-blocked-numbers-on-iphone" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>To view or edit your blocked number list:
<strong>Settings &gt; Phone &gt; Blocked Contacts</strong></p>
<h2>How to Block a Number on WOM from Android<span class="hx:absolute hx:-mt-20" id="how-to-block-a-number-on-wom-from-android"></span>
    <a href="#how-to-block-a-number-on-wom-from-android" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Android allows blocking from the phone app. Steps vary slightly by device brand:</p>
<p><strong>General steps:</strong></p>
<ol>
<li>Open the <strong>Phone</strong> app</li>
<li>Find the call in <strong>Recents</strong></li>
<li>Long press the number or tap to see details</li>
<li>Select <strong>Block number</strong> or <strong>Add to rejection list</strong></li>
</ol>
<p><strong>On Samsung with WOM:</strong></p>
<ul>
<li><strong>Phone &gt; Recents &gt; tap the number &gt; ⋮ &gt; Block</strong></li>
</ul>
<p><strong>On Xiaomi/Redmi:</strong></p>
<ul>
<li><strong>Phone &gt; Recents &gt; long press the number &gt; Block</strong></li>
</ul>
<p><strong>On Motorola:</strong></p>
<ul>
<li><strong>Phone &gt; Recents &gt; long press &gt; Block/Mark as spam</strong></li>
</ul>
<p>To manage blocked numbers: <strong>Phone &gt; Settings &gt; Blocked numbers</strong></p>
<h2>The Mass Spam Problem on WOM: Why Individual Blocking Isn&rsquo;t Enough<span class="hx:absolute hx:-mt-20" id="the-mass-spam-problem-on-wom-why-individual-blocking-isnt-enough"></span>
    <a href="#the-mass-spam-problem-on-wom-why-individual-blocking-isnt-enough" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>If you&rsquo;re a WOM customer frequently receiving spam calls, you&rsquo;ve probably noticed that blocking one number doesn&rsquo;t solve the problem: the next day a different number calls, same type of call.</p>
<p>Telemarketing and collection call centers operate with hundreds of available lines. When one is blocked, they move to the next. Blocking one by one is like emptying the sea with a cup.</p>
<p>The real solution is blocking by pattern, not by individual number.</p>
<h2>ChaoSPAM: The Solution for Mass Spam on WOM<span class="hx:absolute hx:-mt-20" id="chaospam-the-solution-for-mass-spam-on-wom"></span>
    <a href="#chaospam-the-solution-for-mass-spam-on-wom" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> is a free app for iPhone and Android that automatically blocks the most problematic prefixes in Chile:</p>
<ul>
<li><strong>600</strong>: customer service lines used for telemarketing and collections</li>
<li><strong>800</strong>: free corporate lines also used in outbound campaigns</li>
<li><strong>809</strong>: value-added services frequently associated with dubious practices</li>
</ul>
<p>ChaoSPAM works at the operating system level, not the WOM network, so it&rsquo;s compatible with any carrier. Once installed and activated:</p>
<ul>
<li>Your phone doesn&rsquo;t ring when a call from a blocked prefix comes in</li>
<li>The screen doesn&rsquo;t light up</li>
<li>You don&rsquo;t receive a missed call notification</li>
<li>Your battery and performance are not affected</li>
</ul>
<p>Your contacts and call data never leave the device: the app operates completely locally.</p>
<h2>Specific Blocking Cases on WOM<span class="hx:absolute hx:-mt-20" id="specific-blocking-cases-on-wom"></span>
    <a href="#specific-blocking-cases-on-wom" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Blocking Commercial Calls from WOM Itself<span class="hx:absolute hx:-mt-20" id="blocking-commercial-calls-from-wom-itself"></span>
    <a href="#blocking-commercial-calls-from-wom-itself" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Sometimes the spam doesn&rsquo;t come from outside: WOM (like any carrier) may contact you to offer plan upgrades, additional services, or billing information. If you want to avoid these calls:</p>
<ol>
<li>Contact WOM at <strong>600 600 9666</strong> and request to be excluded from marketing campaigns</li>
<li>You can also indicate this through WOM&rsquo;s digital channels</li>
</ol>
<p>This doesn&rsquo;t guarantee immediate cessation, but it&rsquo;s the right channel to make the request.</p>
<h3>Blocking Collection Calls from Third Parties<span class="hx:absolute hx:-mt-20" id="blocking-collection-calls-from-third-parties"></span>
    <a href="#blocking-collection-calls-from-third-parties" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>If you receive calls from a 600 number claiming to be a collection company related to WOM or any service:</p>
<ul>
<li>Verify the debt directly with WOM before providing any data</li>
<li>You can block the collection company&rsquo;s number from your phone</li>
<li>If you believe it&rsquo;s fraud, report it to WOM and SUBTEL</li>
</ul>
<h2>How to Contact WOM to Report Spam or Harassment<span class="hx:absolute hx:-mt-20" id="how-to-contact-wom-to-report-spam-or-harassment"></span>
    <a href="#how-to-contact-wom-to-report-spam-or-harassment" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>If the problem exceeds what you can handle from your phone:</p>
<ul>
<li><strong>From your WOM mobile</strong>: *611</li>
<li><strong>From another phone</strong>: 600 600 9666</li>
<li><strong>Web</strong>: wom.cl &gt; Support</li>
</ul>
<h2>Tips for WOM Customers Who Want Less Spam<span class="hx:absolute hx:-mt-20" id="tips-for-wom-customers-who-want-less-spam"></span>
    <a href="#tips-for-wom-customers-who-want-less-spam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><strong>Install ChaoSPAM as soon as possible</strong>: don&rsquo;t wait for spam to become unbearable.</li>
<li><strong>Save WOM numbers in your contacts</strong>: the customer service number (*611 from WOM) and any number you&rsquo;ve received legitimate communications from.</li>
<li><strong>Activate voicemail</strong>: to not miss legitimate calls from numbers you haven&rsquo;t saved, even when blocking unknowns.</li>
<li><strong>Combine individual blocking + ChaoSPAM</strong>: use native blocking for specific one-off cases and ChaoSPAM for general coverage of spam prefixes.</li>
<li><strong>Check your account status in the WOM app</strong>: so you reduce your need to depend on calls for information about your plan.</li>
</ul>
<h2>Frequently Asked Questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Does ChaoSPAM work with my WOM prepaid line?</strong>
Yes. ChaoSPAM operates at the phone level and doesn&rsquo;t distinguish between prepaid and postpaid, or between carriers. It works equally with WOM prepaid, postpaid, or any other SIM.</p>
<p><strong>Can WOM block specific numbers at the network level upon my request?</strong>
For standard mobile plans, WOM doesn&rsquo;t offer this network-level blocking service per individual customer. Blocking is managed from the device.</p>
<p><strong>If I block someone, does WOM find out?</strong>
No. The block is between your device and the caller. WOM doesn&rsquo;t record or process this information.</p>
<p><strong>Do blocked spam calls I block affect my plan minutes?</strong>
No. Blocked incoming calls before being answered don&rsquo;t consume plan minutes.</p>
<p><strong>Can I block a number from the official WOM app?</strong>
The WOM app is oriented toward plan management (balance, billing, services). Number blocking is done from the phone&rsquo;s operating system app or with specialized apps like ChaoSPAM.</p>
<p><strong>Does ChaoSPAM work abroad with my WOM SIM on roaming?</strong>
ChaoSPAM operates at the phone operating system level. In roaming, incoming calls pass through the local foreign network before reaching your phone, so behavior may vary. For regular use in Chile, it works with full effectiveness.</p>
<h2>Stop Receiving Unwanted Calls on Your WOM Line<span class="hx:absolute hx:-mt-20" id="stop-receiving-unwanted-calls-on-your-wom-line"></span>
    <a href="#stop-receiving-unwanted-calls-on-your-wom-line" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Phone spam is not a problem exclusive to any carrier: it affects all telecom users in Chile. With <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> and your phone&rsquo;s native settings, you have all the tools to regain control, whether you&rsquo;re a WOM, Entel, Movistar, or any other carrier customer.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>How to Block a Number on Entel: Complete Guide for Chile</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/04/23/how-to-block-number-entel-chile/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/04/23/how-to-block-number-entel-chile/</id>
    <published>2026-04-23T10:40:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Block numbers on Entel Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>If you&rsquo;re an Entel customer in Chile receiving spam calls, unsolicited collections, or simply want to block a specific number, you have several options available. This guide explains each method step by step—from operating system settings to specialized apps.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Block numbers on Entel Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>If you&rsquo;re an Entel customer in Chile receiving spam calls, unsolicited collections, or simply want to block a specific number, you have several options available. This guide explains each method step by step—from operating system settings to specialized apps.</p>
<h2>What Options Does Entel Have for Blocking Numbers?<span class="hx:absolute hx:-mt-20" id="what-options-does-entel-have-for-blocking-numbers"></span>
    <a href="#what-options-does-entel-have-for-blocking-numbers" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Entel, as a telecommunications carrier in Chile, does not offer individual number blocking as a standard service for residential mobile customers. Blocking specific numbers is handled at the device level.</p>
<p>The main options are:</p>
<ol>
<li><strong>Phone blocking</strong> (iPhone or Android): the most direct and immediate method</li>
<li><strong>ChaoSPAM</strong>: for automatic blocking of spam and commercial prefixes</li>
<li><strong>Contact Entel</strong> for harassment or fraud cases: in serious situations, the carrier can intervene at the network level</li>
</ol>
<h2>How to Block a Number on Entel from iPhone<span class="hx:absolute hx:-mt-20" id="how-to-block-a-number-on-entel-from-iphone"></span>
    <a href="#how-to-block-a-number-on-entel-from-iphone" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>If you have an iPhone with an Entel line, blocking is done directly in iOS:</p>
<h3>From the Call History<span class="hx:absolute hx:-mt-20" id="from-the-call-history"></span>
    <a href="#from-the-call-history" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ol>
<li>Open the <strong>Phone</strong> app</li>
<li>Go to <strong>Recents</strong></li>
<li>Tap the <strong>ⓘ</strong> icon next to the number you want to block</li>
<li>Scroll down to <strong>Block this Caller</strong></li>
<li>Confirm by tapping <strong>Block Contact</strong></li>
</ol>
<h3>From Contacts<span class="hx:absolute hx:-mt-20" id="from-contacts"></span>
    <a href="#from-contacts" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>If the number is saved as a contact:</p>
<ol>
<li>Open the <strong>Contacts</strong> app or find the name in <strong>Phone</strong></li>
<li>Tap the contact name</li>
<li>Scroll down to <strong>Block this Contact</strong></li>
<li>Confirm</li>
</ol>
<h3>View and Manage Blocked List on iPhone<span class="hx:absolute hx:-mt-20" id="view-and-manage-blocked-list-on-iphone"></span>
    <a href="#view-and-manage-blocked-list-on-iphone" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li><strong>Settings &gt; Phone &gt; Blocked Contacts</strong></li>
<li>Here you can see all blocked numbers and unblock any by swiping left</li>
</ul>
<h2>How to Block a Number on Entel from Android<span class="hx:absolute hx:-mt-20" id="how-to-block-a-number-on-entel-from-android"></span>
    <a href="#how-to-block-a-number-on-entel-from-android" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>For Entel customers with Android:</p>
<ol>
<li>Open the <strong>Phone</strong> app</li>
<li>Tap the recent call from the number to block</li>
<li>Select <strong>Block number</strong> or <strong>Add to block list</strong> (name varies by manufacturer)</li>
<li>Confirm</li>
</ol>
<p>On Samsung devices with Entel, the path may be:</p>
<ul>
<li><strong>Phone &gt; Recents &gt; long press the number &gt; Block/Reject calls</strong></li>
</ul>
<p>To manage the blocked list on Android:</p>
<ul>
<li><strong>Phone &gt; More options (⋮) &gt; Settings &gt; Blocked numbers</strong></li>
</ul>
<h2>When to Contact Entel Directly<span class="hx:absolute hx:-mt-20" id="when-to-contact-entel-directly"></span>
    <a href="#when-to-contact-entel-directly" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Device-level blocking is sufficient for most cases. However, some situations warrant contacting the carrier:</p>
<ul>
<li><strong>Systematic phone harassment</strong>: if you receive threatening or harassing calls from the same number repeatedly, Entel can log the complaint and, in extreme cases, coordinate with authorities.</li>
<li><strong>Fraud or phishing</strong>: if you suspect a number is being used to commit fraud using Entel&rsquo;s name, report it to Entel and the relevant authorities.</li>
<li><strong>Fraudulent international calls generating charges</strong>: if you notice unauthorized charges on your account linked to calls, contact Entel immediately.</li>
</ul>
<p>To contact Entel:</p>
<ul>
<li><strong>From your Entel phone</strong>: dial 103</li>
<li><strong>From another phone</strong>: 600 360 0 103</li>
<li><strong>Web</strong>: entel.cl &gt; Customer Service</li>
</ul>
<h2>Blocking 600, 800 and 809 Spam Prefixes on Entel<span class="hx:absolute hx:-mt-20" id="blocking-600-800-and-809-spam-prefixes-on-entel"></span>
    <a href="#blocking-600-800-and-809-spam-prefixes-on-entel" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The most common problem for Entel customers (and any carrier customer) isn&rsquo;t blocking a specific person—it&rsquo;s the constant flow of telemarketing and collection calls that constantly change numbers.</p>
<p>Blocking one by one doesn&rsquo;t work when the call center has hundreds of available numbers. The most effective solution is prefix-level blocking.</p>
<p><strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> is a free app compatible with any carrier in Chile, including Entel. It works at the operating system level (not the carrier&rsquo;s network) to automatically block:</p>
<ul>
<li>Calls from all numbers with the 600 prefix</li>
<li>Calls from all numbers with the 800 prefix</li>
<li>Calls from all numbers with the 809 prefix</li>
<li>Other common spam patterns in Chile</li>
</ul>
<p>Once installed and configured, it runs in the background without significant battery consumption. Your phone doesn&rsquo;t ring when a blocked call comes in, regardless of how many different numbers the call center uses.</p>
<h2>Tips for Entel Customers Receiving Spam<span class="hx:absolute hx:-mt-20" id="tips-for-entel-customers-receiving-spam"></span>
    <a href="#tips-for-entel-customers-receiving-spam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><strong>Save Entel&rsquo;s support number (103) in your contacts</strong>: so you don&rsquo;t confuse it with spam if they call from a different number for plan management.</li>
<li><strong>Be suspicious of calls claiming to be from Entel from unknown numbers</strong>: Entel may contact you from various numbers, but should never ask for passwords, card details, or verification codes by phone.</li>
<li><strong>Activate voicemail</strong>: the way to not miss a legitimate call even when silencing unknown callers or blocking unknowns.</li>
<li><strong>Check your plan regularly in the Entel app</strong>: to stay informed about renewals and changes without depending on calls.</li>
<li><strong>Use ChaoSPAM alongside native blocking</strong>: ChaoSPAM covers commercial prefixes automatically; native iOS/Android blocking covers specific individual numbers.</li>
</ul>
<h2>Frequently Asked Questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Can I ask Entel to block a number at the network level?</strong>
For residential customers on standard mobile plans, Entel doesn&rsquo;t offer individual number blocking at the network level as a standard service. Blocking is done at the device level. For serious harassment cases, Entel can coordinate special measures through their emergency response area.</p>
<p><strong>Does ChaoSPAM work with my Entel SIM?</strong>
Yes. ChaoSPAM works at the phone&rsquo;s operating system level, not the SIM. It works with any Chilean carrier: Entel, WOM, Movistar, Claro, VTR Mobile, or others.</p>
<p><strong>Does blocking a number on my iPhone with Entel also block SMS?</strong>
Yes. Blocking in iOS affects both calls and SMS from the blocked number.</p>
<p><strong>If I block a number, does that person know they&rsquo;re blocked?</strong>
No. The caller receives no notification that they are blocked.</p>
<p><strong>Can Entel give me information about who called from an unknown number?</strong>
No. Caller identification data is confidential. Entel cannot reveal which person or company a number belongs to upon customer request.</p>
<p><strong>How many numbers can I block on my phone with an Entel line?</strong>
There is no limit imposed by Entel. The limit is set by your phone&rsquo;s operating system, which in practice has no relevant cap for normal use.</p>
<h2>Silence Spam, Not Important Calls<span class="hx:absolute hx:-mt-20" id="silence-spam-not-important-calls"></span>
    <a href="#silence-spam-not-important-calls" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>With the right tools, being an Entel customer doesn&rsquo;t mean tolerating phone spam. Combine individual blocking through the operating system with <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> for an effective defense against the commercial prefixes that bother most people in Chile.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Restricted Call: What It Means and How to Block It in Chile</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/04/23/restricted-call-what-it-means-how-to-block-chile/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/04/23/restricted-call-what-it-means-how-to-block-chile/</id>
    <published>2026-04-23T10:30:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Block restricted calls in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Your phone rings and the screen shows &ldquo;Restricted,&rdquo; &ldquo;Private Number,&rdquo; or just a question mark. No number visible. Do you answer? Who calls with a hidden number? And can you actually block these calls?</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Block restricted calls in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Your phone rings and the screen shows &ldquo;Restricted,&rdquo; &ldquo;Private Number,&rdquo; or just a question mark. No number visible. Do you answer? Who calls with a hidden number? And can you actually block these calls?</p>
<p>This guide answers all those questions clearly.</p>
<h2>What Does &ldquo;Restricted Call&rdquo; Mean?<span class="hx:absolute hx:-mt-20" id="what-does-restricted-call-mean"></span>
    <a href="#what-does-restricted-call-mean" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>A restricted or private call is a call in which the caller has deliberately hidden their phone number. The recipient sees text such as:</p>
<ul>
<li>&ldquo;Restricted&rdquo;</li>
<li>&ldquo;Private Number&rdquo;</li>
<li>&ldquo;Hidden Number&rdquo;</li>
<li>&ldquo;No Caller ID&rdquo;</li>
<li>&ldquo;Unknown&rdquo; or &ldquo;Not Available&rdquo;</li>
</ul>
<p>These messages mean the same thing: the caller activated a feature on their phone or service to prevent their number from being transmitted to the network.</p>
<h2>Why Someone Hides Their Number<span class="hx:absolute hx:-mt-20" id="why-someone-hides-their-number"></span>
    <a href="#why-someone-hides-their-number" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>There are legitimate and less legitimate reasons:</p>
<p><strong>Legitimate reasons:</strong></p>
<ul>
<li>Healthcare professionals calling from clinic phones or management systems</li>
<li>Lawyers or consultants who prefer not to reveal their direct number</li>
<li>Companies using switchboards whose caller ID doesn&rsquo;t correctly transmit the number</li>
<li>People who want privacy on a particular call</li>
</ul>
<p><strong>More problematic reasons:</strong></p>
<ul>
<li>Telemarketing call centers that hide their number to avoid being blocked</li>
<li>Fraudsters who don&rsquo;t want to be traced</li>
<li>People seeking anonymous contact for reasons they don&rsquo;t want to reveal</li>
</ul>
<p>The reality in Chile is that a significant proportion of restricted calls people receive are from call centers that hide their number precisely to avoid being blocked. It&rsquo;s a tactic to evade spam filters.</p>
<h2>How Someone Hides Their Number<span class="hx:absolute hx:-mt-20" id="how-someone-hides-their-number"></span>
    <a href="#how-someone-hides-their-number" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The most common ways to hide a number are:</p>
<ol>
<li><strong>Dialing #31# before the number</strong> (on many carriers): <code>#31# + destination number</code></li>
<li><strong>Setting Caller ID to &ldquo;Restricted&rdquo;</strong> in phone settings</li>
<li><strong>From VoIP services and switchboards</strong>: many enterprise systems don&rsquo;t transmit the originating number</li>
<li><strong>Carrier configuration</strong>: some business services have number hiding as standard</li>
</ol>
<h2>Can I See the Number Behind a Restricted Call?<span class="hx:absolute hx:-mt-20" id="can-i-see-the-number-behind-a-restricted-call"></span>
    <a href="#can-i-see-the-number-behind-a-restricted-call" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>In general, no. Number restriction operates at the telephone network level: the number simply isn&rsquo;t transmitted to the destination. There is no app that &ldquo;discovers&rdquo; the number from a restricted call because the information isn&rsquo;t available in the signal your phone receives.</p>
<p>What you can do is deduce the origin if:</p>
<ul>
<li>You answer and the context is recognizable (your bank, a clinic)</li>
<li>The caller identifies themselves</li>
<li>There&rsquo;s a voicemail that provides context</li>
</ul>
<p>If a restricted call leaves no message and you can&rsquo;t identify it, it is essentially anonymous to you.</p>
<h2>How to Block Restricted Calls on iPhone<span class="hx:absolute hx:-mt-20" id="how-to-block-restricted-calls-on-iphone"></span>
    <a href="#how-to-block-restricted-calls-on-iphone" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>iOS allows you to block calls from unknown numbers, which includes restricted ones:</p>
<ol>
<li>Go to <strong>Settings</strong></li>
<li>Tap <strong>Phone</strong></li>
<li>Enable <strong>Silence Unknown Callers</strong></li>
</ol>
<p>With this option activated, calls from numbers not in your contacts—including restricted ones—go straight to voicemail without your phone ringing.</p>
<p><strong>Limitation</strong>: this also silences legitimate calls from new numbers you haven&rsquo;t saved.</p>
<p>Another option is to use call identification apps (Call ID extensions) like <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong>, which can be configured to block categories of problematic calls.</p>
<h2>How to Block Restricted Calls on Android<span class="hx:absolute hx:-mt-20" id="how-to-block-restricted-calls-on-android"></span>
    <a href="#how-to-block-restricted-calls-on-android" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The process varies by manufacturer, but the general path is:</p>
<ol>
<li>Open the <strong>Phone</strong> app</li>
<li>Go to <strong>Settings</strong> (three dots or gear icon)</li>
<li>Look for <strong>Block calls</strong> or <strong>Filter spam</strong></li>
<li>Enable the option to block anonymous or restricted calls</li>
</ol>
<p>On some Samsung devices: <strong>Phone &gt; More options &gt; Settings &gt; Block numbers &gt; Block unknown/private numbers</strong></p>
<p>On Xiaomi: <strong>Phone &gt; Settings &gt; Block calls &gt; Anonymous calls</strong></p>
<h2>Should I Always Ignore Restricted Calls?<span class="hx:absolute hx:-mt-20" id="should-i-always-ignore-restricted-calls"></span>
    <a href="#should-i-always-ignore-restricted-calls" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Not necessarily. There are contexts where it may be a legitimate call:</p>
<ul>
<li>If you&rsquo;re waiting for medical results and the clinic uses a centralized system</li>
<li>If you made a purchase and the seller uses a CRM that doesn&rsquo;t transmit a number</li>
<li>If you recently requested a service</li>
</ul>
<p>The practical recommendation is:</p>
<ol>
<li>Let it go to voicemail</li>
<li>If it leaves a message and is legitimate, you can call back or save the context</li>
<li>If there&rsquo;s no message and it&rsquo;s recurring, it&rsquo;s probably spam</li>
</ol>
<h2>ChaoSPAM and Restricted Calls<span class="hx:absolute hx:-mt-20" id="chaospam-and-restricted-calls"></span>
    <a href="#chaospam-and-restricted-calls" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> is designed to block spam numbers in Chile, especially those using known prefixes like 600, 800, and 809. For completely restricted calls (no visible number), the first line of defense is the native operating system settings.</p>
<p>Where ChaoSPAM particularly excels is when call centers don&rsquo;t hide the number but simply rotate among hundreds of numbers with the same prefix. In that case, blocking the entire prefix with ChaoSPAM is more effective than trying to manage each number individually.</p>
<h2>Tips for Handling Restricted Calls in Chile<span class="hx:absolute hx:-mt-20" id="tips-for-handling-restricted-calls-in-chile"></span>
    <a href="#tips-for-handling-restricted-calls-in-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><strong>Activate voicemail</strong>: it&rsquo;s the safety net for not missing important calls. If someone calls restricted for a valid reason, they&rsquo;ll leave a message.</li>
<li><strong>Don&rsquo;t call back restricted numbers you don&rsquo;t recognize</strong>: especially if the call was very short (possible attempt to get you to call back a premium number).</li>
<li><strong>If you receive harassment from a restricted number, contact your carrier</strong>: Entel, WOM, Movistar, Claro, and other carriers have processes for investigating phone harassment even from restricted numbers.</li>
<li><strong>Use &ldquo;Silence Unknown Callers&rdquo; during sensitive periods</strong>: vacations, important meetings, or times when you know you&rsquo;re not expecting calls from new numbers.</li>
<li><strong>Combine with ChaoSPAM</strong>: block known spam prefixes with ChaoSPAM and silence restricted calls with the native operating system function for more complete coverage.</li>
</ul>
<h2>Frequently Asked Questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Can a restricted call be from my phone carrier?</strong>
Yes. Some carrier communications, such as service notices or plan renewals, may arrive as a private number. However, it&rsquo;s more common for them to use an identified 600 number. If you receive a restricted call claiming to be from your carrier asking for data, be suspicious.</p>
<p><strong>Do restricted calls appear on my phone bill?</strong>
Your bill shows a record of the received call (duration, time), but not the originating number, because that information was not transmitted.</p>
<p><strong>Can I tell if a restricted call was from my bank?</strong>
If your bank calls you with a restricted number and it&rsquo;s legitimate, they&rsquo;ll most likely also leave a message or send an SMS or email with context. If there&rsquo;s no follow-up, it may be a phishing call impersonating your bank. Always contact your bank through their official published channels.</p>
<p><strong>Is it legal to hide your number when calling in Chile?</strong>
Yes, hiding your own number is a standard telephone network feature and is not prohibited. However, using it for harassment or fraud is illegal.</p>
<p><strong>Can caller ID apps reveal restricted numbers?</strong>
Not directly. Some apps like Truecaller have user report databases, but if the number wasn&rsquo;t transmitted, they can&rsquo;t show it.</p>
<p><strong>If I block unknown callers, do I also block restricted calls?</strong>
Yes. On iPhone, the &ldquo;Silence Unknown Callers&rdquo; option includes private and restricted calls.</p>
<h2>Take Control of Who Can Call You<span class="hx:absolute hx:-mt-20" id="take-control-of-who-can-call-you"></span>
    <a href="#take-control-of-who-can-call-you" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Restricted calls don&rsquo;t have to dictate the rhythm of your day. With the right combination of operating system settings and <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> for spam with known prefixes, you can drastically reduce unwanted interruptions.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>How to Block a Phone Number in Chile: Step-by-Step Guide</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/04/23/how-to-block-phone-number-chile/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/04/23/how-to-block-phone-number-chile/</id>
    <published>2026-04-23T10:20:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - How to block phone numbers in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Unwanted calls are a daily reality in Chile. Collections, telemarketing, surveys, phone fraud: they all share the same entry point—your phone number. Knowing how to block a number is a basic skill every smartphone user should master.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - How to block phone numbers in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Unwanted calls are a daily reality in Chile. Collections, telemarketing, surveys, phone fraud: they all share the same entry point—your phone number. Knowing how to block a number is a basic skill every smartphone user should master.</p>
<p>This guide covers all available methods: from native iPhone and Android blocking to more advanced solutions for those who receive a high volume of unwanted calls.</p>
<h2>Method 1: Block a Number from iPhone Call History<span class="hx:absolute hx:-mt-20" id="method-1-block-a-number-from-iphone-call-history"></span>
    <a href="#method-1-block-a-number-from-iphone-call-history" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The fastest method on iOS is directly from the recent call history:</p>
<ol>
<li>Open the <strong>Phone</strong> app</li>
<li>Go to the <strong>Recents</strong> tab</li>
<li>Tap the <strong>ⓘ</strong> icon next to the number you want to block</li>
<li>Scroll down and tap <strong>Block this Caller</strong></li>
<li>Confirm by tapping <strong>Block Contact</strong></li>
</ol>
<p>From that moment, calls, messages, and FaceTime from that number will be silently blocked.</p>
<h3>Managing Your Blocked List on iPhone<span class="hx:absolute hx:-mt-20" id="managing-your-blocked-list-on-iphone"></span>
    <a href="#managing-your-blocked-list-on-iphone" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>To view or remove blocked numbers on iOS:</p>
<ul>
<li>Go to <strong>Settings &gt; Phone &gt; Blocked Contacts</strong></li>
<li>Here you&rsquo;ll see all blocked numbers</li>
<li>Swipe left on any number to unblock it</li>
</ul>
<h2>Method 2: Block a Number on Android<span class="hx:absolute hx:-mt-20" id="method-2-block-a-number-on-android"></span>
    <a href="#method-2-block-a-number-on-android" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The process varies slightly by manufacturer (Samsung, Xiaomi, Motorola, etc.), but the general flow is:</p>
<ol>
<li>Open the <strong>Phone</strong> or <strong>Dialer</strong> app</li>
<li>Tap on the recent call from the number you want to block</li>
<li>Select <strong>More options</strong> (three dots) or long-press the number</li>
<li>Tap <strong>Block number</strong> or <strong>Add to block list</strong></li>
<li>Confirm the action</li>
</ol>
<p>On some Samsung devices: <strong>Phone &gt; Recents &gt; number &gt; Block/Reject calls</strong></p>
<h3>Managing Blocked Numbers on Android<span class="hx:absolute hx:-mt-20" id="managing-blocked-numbers-on-android"></span>
    <a href="#managing-blocked-numbers-on-android" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>To view your blocked list:</p>
<ul>
<li><strong>Phone &gt; More options (⋮) &gt; Settings &gt; Blocked numbers</strong></li>
</ul>
<p>The exact path depends on manufacturer and Android version.</p>
<h2>Method 3: Silence Calls from Unknown Numbers<span class="hx:absolute hx:-mt-20" id="method-3-silence-calls-from-unknown-numbers"></span>
    <a href="#method-3-silence-calls-from-unknown-numbers" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Both iPhone and Android offer the option to automatically silence calls from numbers not in your contacts.</p>
<p><strong>On iPhone:</strong></p>
<ul>
<li><strong>Settings &gt; Phone &gt; Silence Unknown Callers</strong> → Enable</li>
</ul>
<p>With this option active, calls from unknown numbers go straight to voicemail. Your phone only rings if the number is in your contacts, if you&rsquo;ve called them before, or if the number recently appeared in your email or messages.</p>
<p><strong>On Android:</strong>
The option varies by manufacturer. Look in <strong>Phone app Settings &gt; Filter spam calls</strong> or similar.</p>
<p><strong>Important limitation</strong>: this option also blocks legitimate calls from numbers you haven&rsquo;t saved—a technician, a doctor, a new work contact.</p>
<h2>Method 4: Block Entire Prefixes with ChaoSPAM<span class="hx:absolute hx:-mt-20" id="method-4-block-entire-prefixes-with-chaospam"></span>
    <a href="#method-4-block-entire-prefixes-with-chaospam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The previous methods work for specific numbers. The problem in Chile is that phone spam doesn&rsquo;t come from one number: it comes from dozens or hundreds of numbers from the same call center, all using prefixes like 600, 800, or 809.</p>
<p>Blocking one by one is inefficient when the call center simply moves to the next number on their list.</p>
<p><strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> solves this with prefix-level blocking:</p>
<ul>
<li>Automatically blocks all numbers starting with 600, 800, 809, and other spam patterns in Chile</li>
<li>No manual action required: once configured, it operates on its own in the background</li>
<li>Your phone doesn&rsquo;t ring, screen doesn&rsquo;t light up when a blocked call comes in</li>
<li>Available free for iPhone and Android</li>
<li>Your data and contacts never leave your device</li>
</ul>
<p>This is the most effective solution for those who receive multiple spam calls per day.</p>
<h2>Comparison of Blocking Methods<span class="hx:absolute hx:-mt-20" id="comparison-of-blocking-methods"></span>
    <a href="#comparison-of-blocking-methods" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><table>
  <thead>
      <tr>
          <th>Method</th>
          <th>Effort</th>
          <th>Effectiveness against mass spam</th>
          <th>Risk of blocking legitimate calls</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Individual blocking (call history)</td>
          <td>Per number</td>
          <td>Low (they rotate numbers)</td>
          <td>None</td>
      </tr>
      <tr>
          <td>Silence unknown callers</td>
          <td>One-time setting</td>
          <td>High</td>
          <td>High</td>
      </tr>
      <tr>
          <td>ChaoSPAM (prefixes)</td>
          <td>One-time setting</td>
          <td>Very high</td>
          <td>Very low</td>
      </tr>
  </tbody>
</table>
<h2>When to Use Each Method<span class="hx:absolute hx:-mt-20" id="when-to-use-each-method"></span>
    <a href="#when-to-use-each-method" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Use individual blocking when:</strong></p>
<ul>
<li>A specific number calls you repeatedly (harassment, persistent wrong number)</li>
<li>You want to block a specific person or company without affecting other numbers</li>
</ul>
<p><strong>Use silence unknown callers when:</strong></p>
<ul>
<li>You&rsquo;re not expecting calls from new numbers for a period</li>
<li>You can regularly check voicemail to not miss important calls</li>
</ul>
<p><strong>Use ChaoSPAM when:</strong></p>
<ul>
<li>You receive spam calls daily or several times a week</li>
<li>Numbers keep changing (different 600, 800, 809 numbers)</li>
<li>You don&rsquo;t want to manually manage blocked lists</li>
<li>You want a solution that works without ongoing attention</li>
</ul>
<h2>What Happens When You Block a Number<span class="hx:absolute hx:-mt-20" id="what-happens-when-you-block-a-number"></span>
    <a href="#what-happens-when-you-block-a-number" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>On iPhone, when a blocked number tries to call you:</p>
<ul>
<li>Your phone doesn&rsquo;t ring</li>
<li>The screen doesn&rsquo;t light up</li>
<li>The caller may hear a busy signal or be sent to voicemail</li>
<li>You receive no notification of the missed call</li>
</ul>
<p>On Android, the behavior is similar though may vary between devices.</p>
<p>The blocked number <strong>doesn&rsquo;t know</strong> they are blocked on your phone. They only experience that the call goes unanswered or to voicemail.</p>
<h2>Tips for More Effective Blocking<span class="hx:absolute hx:-mt-20" id="tips-for-more-effective-blocking"></span>
    <a href="#tips-for-more-effective-blocking" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><strong>Block promptly</strong>: as soon as you identify a spam number, blocking it quickly prevents more interruptions from that specific number.</li>
<li><strong>Combine methods</strong>: individual blocking for specific personal numbers + ChaoSPAM for mass spam from commercial prefixes.</li>
<li><strong>Don&rsquo;t block without checking</strong>: before blocking an unknown number, search it on Google. It may be a legitimate notification from your bank or medical service.</li>
<li><strong>Update the app regularly</strong>: ChaoSPAM updates its spam pattern database. Keeping the app updated ensures new spam schemes are blocked.</li>
<li><strong>Use voicemail</strong>: if someone important calls and isn&rsquo;t in your contacts, they&rsquo;ll probably leave a message. Spam calls rarely leave coherent messages.</li>
</ul>
<h2>Frequently Asked Questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Does blocking a number also block their text messages?</strong>
Yes. On iPhone and Android, blocking a number from the call history also blocks their SMS and iMessages.</p>
<p><strong>Can I block a number without the person knowing?</strong>
Yes. The block is silent. The other person receives no notification that they are blocked.</p>
<p><strong>How many numbers can I block on iPhone?</strong>
There is no documented Apple limit for the blocked list. You can add as many numbers as you need.</p>
<p><strong>Does the block carry over if I switch phones?</strong>
On iPhone, if you restore from an iCloud backup, the blocked list transfers. On Android it depends on the manufacturer and whether you use Google backup. For ChaoSPAM, reinstalling the app on a new device restores full functionality.</p>
<p><strong>Can I block international numbers in Chile?</strong>
Yes. The process is the same. Include the country code when manually blocking, or use the international unknown caller blocking option if your operating system offers it.</p>
<p><strong>Does ChaoSPAM also block numbers on WhatsApp and other messaging apps?</strong>
No. ChaoSPAM operates at the level of phone calls (mobile network), not internet messaging applications. To block on WhatsApp, use the app&rsquo;s built-in blocking feature.</p>
<h2>Take Back Control of Your Phone<span class="hx:absolute hx:-mt-20" id="take-back-control-of-your-phone"></span>
    <a href="#take-back-control-of-your-phone" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Blocking unwanted calls in Chile is easier than it seems. With native operating system methods and <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> for mass spam from commercial prefixes, you can go from constant interruptions to a phone that only rings when it really matters.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Spam Numbers in Chile: How to Identify Who Is Calling You</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/04/23/spam-numbers-chile-how-to-identify/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/04/23/spam-numbers-chile-how-to-identify/</id>
    <published>2026-04-23T10:10:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Identify and block spam numbers in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Your phone rings with an unknown number. Is it spam? A collection agency? Someone important you haven&rsquo;t saved? Making that decision in two seconds while the phone rings is a skill everyone in Chile develops by force. But it doesn&rsquo;t have to be that way.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Identify and block spam numbers in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Your phone rings with an unknown number. Is it spam? A collection agency? Someone important you haven&rsquo;t saved? Making that decision in two seconds while the phone rings is a skill everyone in Chile develops by force. But it doesn&rsquo;t have to be that way.</p>
<p>This guide explains how to identify whether a number that called you is spam, what patterns to use to recognize them before answering, and what tools exist so the problem stops reaching your screen.</p>
<h2>What Is a Spam Number in the Chilean Context?<span class="hx:absolute hx:-mt-20" id="what-is-a-spam-number-in-the-chilean-context"></span>
    <a href="#what-is-a-spam-number-in-the-chilean-context" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>In Chile, &ldquo;spam numbers&rdquo; are those used for unsolicited calls with commercial or fraudulent purposes. They include:</p>
<ul>
<li><strong>Telemarketing call centers</strong>: selling insurance, credit cards, telecom plans, subscription services.</li>
<li><strong>Collection companies</strong>: contacting people with debts, or sometimes wrong numbers.</li>
<li><strong>Phone scams</strong>: attempting to obtain personal or banking data, or make unauthorized charges.</li>
<li><strong>Dubious value-added services</strong>: calling so you call back a premium number.</li>
</ul>
<p>The difference between a spam number and a legitimate unknown number isn&rsquo;t always obvious when the call comes in. That&rsquo;s why methods exist to identify them.</p>
<h2>How to Identify a Spam Number Before Answering<span class="hx:absolute hx:-mt-20" id="how-to-identify-a-spam-number-before-answering"></span>
    <a href="#how-to-identify-a-spam-number-before-answering" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>1. Recognize High-Risk Prefixes<span class="hx:absolute hx:-mt-20" id="1-recognize-high-risk-prefixes"></span>
    <a href="#1-recognize-high-risk-prefixes" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>In Chile, certain prefixes are strongly associated with telemarketing and collections:</p>
<table>
  <thead>
      <tr>
          <th>Prefix</th>
          <th>Number type</th>
          <th>Spam risk</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>600</td>
          <td>Customer service line (with cost)</td>
          <td>High</td>
      </tr>
      <tr>
          <td>800</td>
          <td>Free corporate line</td>
          <td>Medium</td>
      </tr>
      <tr>
          <td>809</td>
          <td>Value-added service</td>
          <td>High</td>
      </tr>
      <tr>
          <td>+56 2</td>
          <td>Santiago landline (may be call center)</td>
          <td>Variable</td>
      </tr>
      <tr>
          <td>+56 9</td>
          <td>Chilean mobile</td>
          <td>Variable</td>
      </tr>
      <tr>
          <td>+1, +44, +52&hellip;</td>
          <td>Unknown international</td>
          <td>Very high if not expected</td>
      </tr>
  </tbody>
</table>
<p>A number starting with 600, 800, or 809 has a high probability of being a commercial or collection call. If you&rsquo;re not expecting any business from a company, it&rsquo;s most likely unsolicited advertising.</p>
<h3>2. Observe the Call Pattern<span class="hx:absolute hx:-mt-20" id="2-observe-the-call-pattern"></span>
    <a href="#2-observe-the-call-pattern" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Call centers have characteristic behaviors:</p>
<ul>
<li><strong>They call during business hours</strong>: between 9:00 AM and 8:00 PM weekdays, sometimes Saturdays.</li>
<li><strong>They call multiple times in a row</strong>: if you miss the call, they redial immediately or within minutes.</li>
<li><strong>They don&rsquo;t leave voicemail</strong>: automated dialing systems don&rsquo;t usually leave coherent messages.</li>
<li><strong>They call from slightly different numbers</strong>: they rotate among hundreds of numbers within the same prefix to avoid being blocked.</li>
</ul>
<h3>3. Search the Number Online<span class="hx:absolute hx:-mt-20" id="3-search-the-number-online"></span>
    <a href="#3-search-the-number-online" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The most direct way to identify an unknown number in Chile is to search it on Google. Type the full number (with country code if applicable) in quotes: <code>&quot;+56 600 XXX XXXX&quot;</code>. Results will show:</p>
<ul>
<li>Official company pages if it&rsquo;s a legitimate customer service number</li>
<li>Spam reporting forums and sites</li>
<li>Comments from other users who received the same call</li>
</ul>
<p>This search takes less than 30 seconds and in most cases is enough to confirm whether the number belongs to a known company or a spam call center.</p>
<h2>Platforms to Identify Spam Numbers in Chile<span class="hx:absolute hx:-mt-20" id="platforms-to-identify-spam-numbers-in-chile"></span>
    <a href="#platforms-to-identify-spam-numbers-in-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Several online resources exist where users report suspicious numbers:</p>
<ul>
<li><strong>Google</strong>: searching the number directly often shows complaint forum results.</li>
<li><strong>truecaller.com</strong>: global database with millions of reported numbers, including many Chilean ones.</li>
<li><strong>Reddit r/chile</strong>: users frequently share numbers from call centers or active scams.</li>
</ul>
<p>These platforms are useful for identifying a number after receiving it, but they don&rsquo;t protect you in real time: the phone already rang, already interrupted what you were doing.</p>
<h2>Why Reactive Identification Isn&rsquo;t Enough<span class="hx:absolute hx:-mt-20" id="why-reactive-identification-isnt-enough"></span>
    <a href="#why-reactive-identification-isnt-enough" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Looking up a number after receiving it works, but has two problems:</p>
<ol>
<li><strong>Too late for that call</strong>: it already interrupted your focus, your meeting, or your rest.</li>
<li><strong>Doesn&rsquo;t prevent the next one</strong>: even if you confirm it was spam, the same number (or another from the same call center) can call again.</li>
</ol>
<p>Reactive identification is useful for knowing what happened. The real solution is proactive blocking.</p>
<h2>How to Block Spam Numbers Automatically in Chile<span class="hx:absolute hx:-mt-20" id="how-to-block-spam-numbers-automatically-in-chile"></span>
    <a href="#how-to-block-spam-numbers-automatically-in-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Manual Blocking<span class="hx:absolute hx:-mt-20" id="manual-blocking"></span>
    <a href="#manual-blocking" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>iPhone and Android let you block individual numbers from the call history. Effective for a specific number, but call centers constantly rotate among hundreds of numbers with the same prefix. Blocking one by one is a losing battle.</p>
<h3>Silencing Unknown Callers<span class="hx:absolute hx:-mt-20" id="silencing-unknown-callers"></span>
    <a href="#silencing-unknown-callers" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>iOS has the &ldquo;Silence Unknown Callers&rdquo; option in Settings &gt; Phone. Android has similar features. The problem: it also silences real people you haven&rsquo;t saved—doctors, technicians, new work contacts.</p>
<h3>ChaoSPAM: Smart Blocking for Chile<span class="hx:absolute hx:-mt-20" id="chaospam-smart-blocking-for-chile"></span>
    <a href="#chaospam-smart-blocking-for-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p><strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> is a free app designed specifically for the Chilean context. Instead of blocking number by number, it blocks by complete prefixes and patterns:</p>
<ul>
<li>Automatically blocks all 600, 800, 809, and other spam prefixes</li>
<li>Works in the background: your phone doesn&rsquo;t ring or screen light up</li>
<li>Doesn&rsquo;t upload your contacts to any server: everything happens locally on your device</li>
<li>Available for iPhone and Android, completely free</li>
</ul>
<p>Once installed, ChaoSPAM eliminates the problem at the root: calls from these numbers are blocked before they reach your attention.</p>
<h2>Tips to Reduce Phone Spam in Chile<span class="hx:absolute hx:-mt-20" id="tips-to-reduce-phone-spam-in-chile"></span>
    <a href="#tips-to-reduce-phone-spam-in-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><strong>Don&rsquo;t publish your mobile number on unnecessary forms</strong>: every form you fill out is a potential source of your number for commercial databases.</li>
<li><strong>Read the terms when registering for services</strong>: many companies include in fine print permission to contact you for commercial purposes.</li>
<li><strong>Request to be removed from lists</strong>: if you receive a commercial call and answer, you have the right to ask to be removed from their database.</li>
<li><strong>Use a secondary number for online registrations</strong>: if you have access to a second number, use it for store forms, contests, and subscriptions.</li>
<li><strong>Install ChaoSPAM for automatic blocking</strong>: the most practical solution for daily life without manually managing a blocked list.</li>
</ul>
<h2>Frequently Asked Questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Can I find out the name of the company calling from a 600?</strong>
If the number is published on the company&rsquo;s website, a Google search will show it. If the number doesn&rsquo;t appear anywhere official, it&rsquo;s likely a call center operating on behalf of multiple companies and not publishing its numbers.</p>
<p><strong>What do I do if I keep receiving calls from the same number after blocking it?</strong>
Call centers usually have hundreds of available numbers. Blocking one doesn&rsquo;t stop the next. The solution is to block the entire prefix, something ChaoSPAM does automatically.</p>
<p><strong>Is it effective to report a spam number on online platforms?</strong>
Yes, it helps the community: if others search that number, they&rsquo;ll see your report. However, reporting doesn&rsquo;t block future calls on your own phone. Combine reporting with a blocking app.</p>
<p><strong>Can I block unknown international calls in Chile?</strong>
Yes. Both iPhone and Android let you block unknown international calls. If you&rsquo;re not expecting any calls from abroad, activating this option significantly reduces international spam.</p>
<p><strong>Has phone spam in Chile increased in recent years?</strong>
Yes. The growth of digital telemarketing, greater availability of databases, and the ease of operating virtual call centers have increased the volume of unwanted calls worldwide, including Chile.</p>
<p><strong>Can ChaoSPAM identify the name behind an unknown number?</strong>
ChaoSPAM focuses on blocking spam numbers based on known prefixes and patterns, not on identifying the caller&rsquo;s name. For identifying unknown numbers, complement with a Google search or Truecaller.</p>
<h2>Stop Guessing and Start Blocking<span class="hx:absolute hx:-mt-20" id="stop-guessing-and-start-blocking"></span>
    <a href="#stop-guessing-and-start-blocking" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Identifying spam numbers in Chile is possible with the right tools. But the best strategy isn&rsquo;t identify-and-decide: it&rsquo;s block before it rings. Download <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> for free and let the app do the work for you.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>What Are 600, 800 and 809 Numbers in Chile: Complete Guide</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/04/23/what-are-600-800-809-numbers-chile/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/04/23/what-are-600-800-809-numbers-chile/</id>
    <published>2026-04-23T10:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Block 600, 800 and 809 numbers in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Your phone rings. Unknown number. It starts with 600, 800, or 809. Do you answer? Do you ignore it? And what does that prefix actually mean?</p>
<p>In Chile, number prefixes are not random: each corresponds to a type of service, a billing structure, and often a specific industry. Knowing the difference between a 600, an 800, and an 809 lets you make a more informed decision about whether to answer.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Block 600, 800 and 809 numbers in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Your phone rings. Unknown number. It starts with 600, 800, or 809. Do you answer? Do you ignore it? And what does that prefix actually mean?</p>
<p>In Chile, number prefixes are not random: each corresponds to a type of service, a billing structure, and often a specific industry. Knowing the difference between a 600, an 800, and an 809 lets you make a more informed decision about whether to answer.</p>
<h2>What Is a 600 Number in Chile?<span class="hx:absolute hx:-mt-20" id="what-is-a-600-number-in-chile"></span>
    <a href="#what-is-a-600-number-in-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>600 numbers are customer service lines in Chile. They work as a centralized contact point for companies operating nationwide: banks, department stores, insurance companies, telecom companies, debt collection agencies, and more.</p>
<p><strong>Key characteristics of the 600 prefix:</strong></p>
<ul>
<li><strong>Not free</strong>: calling a 600 number has a cost that varies by carrier and plan. From landlines it may be cheaper; from mobile phones it can be considerably more expensive.</li>
<li><strong>Shared cost</strong>: in some cases, the cost is split between the caller and the company receiving the call.</li>
<li><strong>National access</strong>: from any point in Chile, a 600 number reaches the same service center regardless of region.</li>
</ul>
<h3>Who Uses 600 Numbers?<span class="hx:absolute hx:-mt-20" id="who-uses-600-numbers"></span>
    <a href="#who-uses-600-numbers" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Regular users of this prefix include:</p>
<ul>
<li>Banks and financial companies (collections, customer service, product offers)</li>
<li>Insurance companies</li>
<li>Telecom companies</li>
<li>Retailers and department stores with credit departments</li>
<li>Direct marketing call centers</li>
<li>Subscription services</li>
</ul>
<p>The problem with 600 is that many companies use it for unsolicited outbound calls: credit card offers, unsolicited insurance, debt refinancing, and advertising. It is one of the prefixes most associated with phone spam in Chile.</p>
<h2>What Is an 800 Number in Chile?<span class="hx:absolute hx:-mt-20" id="what-is-an-800-number-in-chile"></span>
    <a href="#what-is-an-800-number-in-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>800 numbers are free lines, also called &ldquo;0800 lines,&rdquo; though in Chile the standard format is simply &ldquo;800.&rdquo; The receiving party (the company) pays the full cost. For the caller, the call has no charge.</p>
<p><strong>Key characteristics of the 800 prefix:</strong></p>
<ul>
<li><strong>Free for the caller</strong>: from both landlines and, in most cases, mobile phones.</li>
<li><strong>Cost borne by the company</strong>: the 800 number holder pays for each received call.</li>
<li><strong>Institutional and commercial use</strong>: typically used by customer service, technical support lines, corporate emergency services, and government entities.</li>
</ul>
<h3>Why Can an 800 Number Be Spam?<span class="hx:absolute hx:-mt-20" id="why-can-an-800-number-be-spam"></span>
    <a href="#why-can-an-800-number-be-spam" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Although 800 is associated with legitimate customer service, it is also used by companies for outbound call campaigns. If a company makes mass calls from an 800 number, you receive the call at no direct cost—but it is still an unwanted interruption. Collection call centers and telemarketers use 600, 800, and other prefixes interchangeably for their campaigns.</p>
<h2>What Is an 809 Number in Chile?<span class="hx:absolute hx:-mt-20" id="what-is-an-809-number-in-chile"></span>
    <a href="#what-is-an-809-number-in-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The 809 prefix is more specific and, in the Chilean context, is strongly associated with value-added services and, in many cases, operations that push the boundaries of legitimacy.</p>
<p><strong>Key characteristics of the 809 prefix:</strong></p>
<ul>
<li><strong>Value-added service</strong>: originally intended for information services, entertainment, or premium content.</li>
<li><strong>Premium rate</strong>: calls to 809 numbers can have a significantly higher cost than normal calls.</li>
<li><strong>Less regulation</strong>: historically, this prefix has been used by services whose billing transparency is not always clear.</li>
</ul>
<h3>Why Are 809 Numbers Particularly Problematic?<span class="hx:absolute hx:-mt-20" id="why-are-809-numbers-particularly-problematic"></span>
    <a href="#why-are-809-numbers-particularly-problematic" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The 809 prefix frequently appears in schemes where the person does not know exactly how much they are paying per call. It is also used by automatic subscription services that activate when you call or are called. In the context of spam in Chile, receiving a missed call from an 809 and trying to call back can generate unexpected charges on your account.</p>
<h2>Comparison: 600 vs 800 vs 809<span class="hx:absolute hx:-mt-20" id="comparison-600-vs-800-vs-809"></span>
    <a href="#comparison-600-vs-800-vs-809" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><table>
  <thead>
      <tr>
          <th>Prefix</th>
          <th>Cost to caller</th>
          <th>Typical use</th>
          <th>Spam risk</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>600</td>
          <td>Yes, shared or full cost</td>
          <td>Customer service, collections, telemarketing</td>
          <td>High</td>
      </tr>
      <tr>
          <td>800</td>
          <td>No (free)</td>
          <td>Support, institutional service, telemarketing</td>
          <td>Medium</td>
      </tr>
      <tr>
          <td>809</td>
          <td>Yes, possible premium rate</td>
          <td>Value-added services</td>
          <td>High</td>
      </tr>
  </tbody>
</table>
<h2>Why You Receive Calls from These Numbers Without Contacting Them<span class="hx:absolute hx:-mt-20" id="why-you-receive-calls-from-these-numbers-without-contacting-them"></span>
    <a href="#why-you-receive-calls-from-these-numbers-without-contacting-them" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The most common question is: how did they get my number? The answers are several:</p>
<ol>
<li><strong>Commercial databases</strong>: companies buy contact lists that may include your number if you ever entered it in a purchase form, contest, or registration.</li>
<li><strong>Debt data</strong>: if you have or had a debt, your number may have been transferred to a collection company.</li>
<li><strong>Contractual relationships</strong>: if you are or were a customer of a company, they have your number and can use it for offers.</li>
<li><strong>Random generation</strong>: some call centers dial numbers sequentially or randomly to find active lines.</li>
</ol>
<h2>How to Block Calls from 600, 800 and 809 Numbers<span class="hx:absolute hx:-mt-20" id="how-to-block-calls-from-600-800-and-809-numbers"></span>
    <a href="#how-to-block-calls-from-600-800-and-809-numbers" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Option 1: Manual blocking on your phone<span class="hx:absolute hx:-mt-20" id="option-1-manual-blocking-on-your-phone"></span>
    <a href="#option-1-manual-blocking-on-your-phone" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Both iPhone and Android let you block individual numbers directly from the call history. Useful for a specific number that repeatedly bothers you, but it doesn&rsquo;t solve the systemic problem: call centers constantly rotate numbers.</p>
<h3>Option 2: Silence unknown callers<span class="hx:absolute hx:-mt-20" id="option-2-silence-unknown-callers"></span>
    <a href="#option-2-silence-unknown-callers" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>iOS and Android both have a feature to silence calls from numbers not in your contacts. The problem is that it also silences legitimate calls from real people you haven&rsquo;t saved—doctors, plumbers, new work contacts.</p>
<h3>Option 3: Use ChaoSPAM (the most effective)<span class="hx:absolute hx:-mt-20" id="option-3-use-chaospam-the-most-effective"></span>
    <a href="#option-3-use-chaospam-the-most-effective" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p><strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> is a free app for iPhone and Android designed specifically for the Chilean context. It includes predefined rules to automatically block:</p>
<ul>
<li>All numbers with the <strong>600</strong> prefix</li>
<li>All numbers with the <strong>800</strong> prefix</li>
<li>All numbers with the <strong>809</strong> prefix</li>
<li>Other common spam patterns in Chile</li>
</ul>
<p>Once installed and activated, ChaoSPAM works in the background. When a call comes in from a blocked number, your phone doesn&rsquo;t even ring. No extra battery drain, no device slowdown, and your personal data never leaves your phone.</p>
<h2>Tips for Managing Calls from Commercial Prefixes<span class="hx:absolute hx:-mt-20" id="tips-for-managing-calls-from-commercial-prefixes"></span>
    <a href="#tips-for-managing-calls-from-commercial-prefixes" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><strong>Don&rsquo;t call back missed calls from 809 numbers</strong>: if you received a missed call from an 809 and don&rsquo;t know who it is, don&rsquo;t call back without first checking online whether the number belongs to a known service.</li>
<li><strong>Register your number with consumer protection authorities</strong>: although effectiveness is not immediate, you can request to be excluded from commercial contact lists.</li>
<li><strong>Use ChaoSPAM for automatic blocking</strong>: manual blocking is useful for specific cases, but only an app with prefix rules can stop the constant flow of calls from these ranges.</li>
<li><strong>Check your service contracts</strong>: if you have an active service contract with a company, their 600 calls may be legitimate notifications about changes or billing. Blocking the entire prefix could cause you to miss these.</li>
<li><strong>Save known numbers in your contacts</strong>: if a family member calls you from a 600 because they work at a company, save it with a name so it isn&rsquo;t blocked.</li>
</ul>
<h2>Frequently Asked Questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Is it illegal for a company to call me from a 600 number without my permission?</strong>
In Chile, the Consumer Protection Law regulates direct marketing, but its enforcement is limited. Receiving unsolicited calls is annoying but not always illegal. What you can do is formally request to be removed from the company&rsquo;s contact list.</p>
<p><strong>Is an 800 number always free?</strong>
For the call recipient yes: if someone calls you from an 800, you pay nothing. If you call an 800, in most cases you also don&rsquo;t pay, though it depends on your plan. Check with your carrier if in doubt.</p>
<p><strong>Can I block only some 600 numbers and not all of them?</strong>
Yes. You can block individual numbers from your phone&rsquo;s call history. ChaoSPAM also allows you to configure which prefixes to block globally. If you need to receive some 600 calls (from your bank, for example), you can add that specific number to your contacts and exceptions.</p>
<p><strong>Does ChaoSPAM also block text messages from these numbers?</strong>
ChaoSPAM focuses on calls. For spam messages, management is different and depends on system operating tools.</p>
<p><strong>How do I know if a specific 600 number is legitimate or spam?</strong>
Search the exact number on Google. Most customer service numbers from well-known companies are published on their websites. If no results appear or spam reports show up, it is probably an unwanted call.</p>
<p><strong>Does ChaoSPAM work on Android as well as iPhone?</strong>
Yes. ChaoSPAM is available for both iPhone (iOS) and Android, and works on both systems to block calls with problematic prefixes like 600, 800, and 809.</p>
<h2>Stop Receiving Unwanted Calls Today<span class="hx:absolute hx:-mt-20" id="stop-receiving-unwanted-calls-today"></span>
    <a href="#stop-receiving-unwanted-calls-today" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The 600, 800, and 809 prefixes are not inherently your enemy: they are how many legitimate companies communicate. The problem is when those prefixes are used to interrupt you without your consent. Knowing what they mean gives you context; having an app like <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> gives you control.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>What Time Does the Bus Come? Free Real-Time App for Santiago</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/04/23/what-time-does-the-bus-come-santiago/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/04/23/what-time-does-the-bus-come-santiago/</id>
    <published>2026-04-23T09:30:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Know what time the bus comes in Santiago" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>You need to be somewhere at a specific time. What time does the bus come? How long until it arrives? Fixed timetables aren&rsquo;t enough — Santiago&rsquo;s traffic means any printed schedule is just an estimate. What you need is the real position of the bus right now.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Know what time the bus comes in Santiago" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>You need to be somewhere at a specific time. What time does the bus come? How long until it arrives? Fixed timetables aren&rsquo;t enough — Santiago&rsquo;s traffic means any printed schedule is just an estimate. What you need is the real position of the bus right now.</p>
<h2>Why doesn&rsquo;t the bus have a fixed timetable?<span class="hx:absolute hx:-mt-20" id="why-doesnt-the-bus-have-a-fixed-timetable"></span>
    <a href="#why-doesnt-the-bus-have-a-fixed-timetable" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Unlike the Metro, RED buses run on roads with variable traffic. An accident, a closed street, or simply rush hour can delay or speed up any route by several minutes. The approximate schedules you find online are averages, not guarantees.</p>
<p>The only reliable way to know when the bus will pass is to check <strong>where the bus is at this very moment</strong> and calculate how long it will take to reach your stop.</p>
<h2>How to use the app to know what time the bus comes<span class="hx:absolute hx:-mt-20" id="how-to-use-the-app-to-know-what-time-the-bus-comes"></span>
    <a href="#how-to-use-the-app-to-know-what-time-the-bus-comes" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> is a free app for iPhone and Android that shows the GPS position of every RED bus in real time. Here&rsquo;s how to use it to plan your departure:</p>
<ol>
<li><strong>Open the app</strong> and you&rsquo;ll see the map with active buses near your location</li>
<li><strong>Find your route</strong> in the list to filter only the buses you care about</li>
<li><strong>Count how many blocks</strong> the nearest bus is from your stop</li>
<li><strong>Decide</strong> whether to leave now, wait a few minutes, or take another option</li>
</ol>
<p>Since version <strong>2.4.0</strong>, bus markers slide smoothly across the map, making it far more accurate to estimate arrival time by visually tracking the bus&rsquo;s real movement.</p>
<h2>Alerts and notifications: always in the loop<span class="hx:absolute hx:-mt-20" id="alerts-and-notifications-always-in-the-loop"></span>
    <a href="#alerts-and-notifications-always-in-the-loop" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Version <strong>2.4.0</strong> added a <strong>dedicated notifications section inside the app</strong> and made <strong>Metro alerts arrive faster</strong>. You&rsquo;ll know about service interruptions or route changes before reaching the stop, giving you time to adjust your trip.</p>
<p>If you combine the Metro with a bus connection, this improvement is especially useful: faster alerts mean you can reroute before it&rsquo;s too late.</p>
<h2>How long does the bus usually take? Reference frequency table<span class="hx:absolute hx:-mt-20" id="how-long-does-the-bus-usually-take-reference-frequency-table"></span>
    <a href="#how-long-does-the-bus-usually-take-reference-frequency-table" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>While there&rsquo;s no fixed schedule, these are the typical ranges by route type:</p>
<table>
  <thead>
      <tr>
          <th>Situation</th>
          <th>Estimated wait</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Rush hour, trunk route</td>
          <td>3 to 8 minutes</td>
      </tr>
      <tr>
          <td>Off-peak weekday</td>
          <td>10 to 20 minutes</td>
      </tr>
      <tr>
          <td>Weekend or holiday</td>
          <td>20 to 40 minutes</td>
      </tr>
      <tr>
          <td>Peripheral route</td>
          <td>Variable, can exceed 30 min</td>
      </tr>
  </tbody>
</table>
<p>These are guidelines. The app gives you the exact real-time answer, which is always more accurate than any table.</p>
<h2>Better reliability since version 2.2.0<span class="hx:absolute hx:-mt-20" id="better-reliability-since-version-220"></span>
    <a href="#better-reliability-since-version-220" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Version <strong>2.2.0</strong> improved overall app speed and stability, with fixes that make information load more reliably. The interface adapts better to different screen sizes, from the smallest iPhone to large Android devices.</p>
<h2>Tips to never miss your bus again<span class="hx:absolute hx:-mt-20" id="tips-to-never-miss-your-bus-again"></span>
    <a href="#tips-to-never-miss-your-bus-again" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><strong>Check the map 5 minutes before leaving</strong>: Seeing the bus position in advance lets you time your departure precisely. If the bus is ten blocks away, you have time. If it&rsquo;s two blocks away, it&rsquo;s time to move.</li>
<li><strong>Enable app notifications</strong>: The notifications section added in version 2.4.0 lets you receive service alerts affecting your route or your Metro + bus combination.</li>
<li><strong>Watch the bus direction on the map</strong>: Some routes have buses going in both directions past the same stop. Always check the direction arrow on each marker to avoid boarding one going the wrong way.</li>
<li><strong>Compare with the next bus</strong>: If the first bus is very far away, check whether the next bus on the same route is close enough to be worth waiting for instead.</li>
<li><strong>Use the app alongside the Metro</strong>: Metro alerts now arrive faster (version 2.4.0), so if a Metro disruption affects your connection, you can instantly see alternative bus positions on the same screen.</li>
</ul>
<h2>Frequently asked questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>How do I know exactly how many minutes until the bus arrives?</strong>
The app shows real-time GPS position on the map. It doesn&rsquo;t display an exact minute countdown, but by watching the distance between the bus and your stop and how quickly the marker advances, you can estimate arrival time quite accurately.</p>
<p><strong>Can I get an alert when the bus is nearby?</strong>
Version 2.4.0 introduced a notifications section in the app. Keep the app updated to access the latest alert features available.</p>
<p><strong>Does the app show estimated route frequency?</strong>
The app focuses on showing real-time GPS positions of active buses. You can observe the gap between buses of the same route on the map to get a sense of the current frequency.</p>
<p><strong>What should I do if the bus appears very delayed?</strong>
If the map shows the nearest bus is still far away, use that time to check whether alternative routes nearby are closer, or whether a Metro + bus combination might work better for that particular moment.</p>
<p><strong>Does this app work for Santiago&rsquo;s Metro too?</strong>
The app is focused on RED buses, but since version 2.4.0 it includes faster Metro alerts so you can coordinate combined trips from a single place.</p>
<h2>Download the app and plan your trip with precision<span class="hx:absolute hx:-mt-20" id="download-the-app-and-plan-your-trip-with-precision"></span>
    <a href="#download-the-app-and-plan-your-trip-with-precision" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>There&rsquo;s no fixed timetable for when the bus passes. But there is a free app that shows exactly where your bus is right now. Download <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> and stop guessing when the next bus will arrive in Santiago.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>How to Know Where Your Bus Is Right Now – Free App for Santiago</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/04/23/how-to-know-where-my-bus-is-santiago/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/04/23/how-to-know-where-my-bus-is-santiago/</id>
    <published>2026-04-23T09:15:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Know where your bus is in Santiago" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>You&rsquo;re at the bus stop and the question is always the same: where is my bus right now? Has it already turned the corner, or is it still a few blocks away? The exact answer is in your pocket — with a free app for iPhone and Android.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Know where your bus is in Santiago" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>You&rsquo;re at the bus stop and the question is always the same: where is my bus right now? Has it already turned the corner, or is it still a few blocks away? The exact answer is in your pocket — with a free app for iPhone and Android.</p>
<h2>Why is it so hard to know where your bus is without an app?<span class="hx:absolute hx:-mt-20" id="why-is-it-so-hard-to-know-where-your-bus-is-without-an-app"></span>
    <a href="#why-is-it-so-hard-to-know-where-your-bus-is-without-an-app" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>RED buses don&rsquo;t follow a fixed timetable: traffic, traffic lights, and passenger boarding constantly affect their position. Standing at the stop and looking down the street tells you nothing precise. What you need is the real GPS location of the bus, right now.</p>
<h2>How to see where your bus is with the app<span class="hx:absolute hx:-mt-20" id="how-to-see-where-your-bus-is-with-the-app"></span>
    <a href="#how-to-see-where-your-bus-is-with-the-app" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> is the free app that shows the exact position of every RED bus on an interactive map, updated in real time. Here&rsquo;s how to use it:</p>
<h3>1. Open the map<span class="hx:absolute hx:-mt-20" id="1-open-the-map"></span>
    <a href="#1-open-the-map" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>When you launch the app, you&rsquo;ll see the map centred on your location with all active buses in the area shown as markers. Each marker displays the route number and line colour.</p>
<h3>2. Select your route<span class="hx:absolute hx:-mt-20" id="2-select-your-route"></span>
    <a href="#2-select-your-route" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Tap your route name in the list or directly on a marker in the map. The app filters and highlights only the buses for that route so you don&rsquo;t get confused by others.</p>
<h3>3. See the route&rsquo;s stops on the map<span class="hx:absolute hx:-mt-20" id="3-see-the-routes-stops-on-the-map"></span>
    <a href="#3-see-the-routes-stops-on-the-map" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Since version <strong>2.4.0</strong>, when you follow a route the <strong>stops for that route appear marked on the map</strong>. You can see exactly which stops the bus will pass before reaching yours, and estimate how many stops are left.</p>
<h3>4. Follow the bus as it moves<span class="hx:absolute hx:-mt-20" id="4-follow-the-bus-as-it-moves"></span>
    <a href="#4-follow-the-bus-as-it-moves" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Bus markers <strong>slide smoothly</strong> across the map (a version 2.4.0 improvement), making it much easier to visually track the bus block by block.</p>
<h2>Fixes that improve the location experience<span class="hx:absolute hx:-mt-20" id="fixes-that-improve-the-location-experience"></span>
    <a href="#fixes-that-improve-the-location-experience" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Version <strong>2.4.0</strong> also fixed an issue where the <strong>map camera didn&rsquo;t centre on your location when launching</strong> the app, and another where <strong>old buses didn&rsquo;t disappear from the map when switching to a different area</strong>. The map now always shows only the buses relevant to your zone.</p>
<p>Version <strong>2.2.0</strong> improved map loading speed and overall stability, so bus information appears more reliably at all times.</p>
<h2>Does it work for any bus in Santiago?<span class="hx:absolute hx:-mt-20" id="does-it-work-for-any-bus-in-santiago"></span>
    <a href="#does-it-work-for-any-bus-in-santiago" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Yes. The app covers all active RED routes in the Santiago metropolitan area using official GPS data from the Red Metropolitana de Movilidad. If your route is in the RED network, you can see it on the map.</p>
<table>
  <thead>
      <tr>
          <th>What you want to know</th>
          <th>What the app shows</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Where is the bus right now?</td>
          <td>Live marker on the map</td>
      </tr>
      <tr>
          <td>Which stops will it pass?</td>
          <td>Route stops on the map (v2.4.0)</td>
      </tr>
      <tr>
          <td>Inbound or outbound?</td>
          <td>Direction shown on the marker</td>
      </tr>
      <tr>
          <td>Are there more buses on this route?</td>
          <td>All route buses visible simultaneously</td>
      </tr>
  </tbody>
</table>
<h2>Tips for always knowing where your bus is<span class="hx:absolute hx:-mt-20" id="tips-for-always-knowing-where-your-bus-is"></span>
    <a href="#tips-for-always-knowing-where-your-bus-is" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><strong>Select your route before leaving</strong>: Open the app while still at home or work. Arrive at the stop just as the bus is about to pass — no unnecessary waiting.</li>
<li><strong>Look at all buses on the route, not just the first</strong>: During rush hour there may be several buses on the same route at different distances. The one that looks furthest away might actually be moving faster with fewer stops ahead.</li>
<li><strong>Use the stop markers to pick a better stop</strong>: With the v2.4.0 stop display, you can check whether walking one block to an earlier stop guarantees you a seat.</li>
<li><strong>Check the bus direction</strong>: Each marker shows whether the bus is going inbound or outbound. This avoids confusion on routes that pass in both directions at the same stop.</li>
</ul>
<h2>Frequently asked questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>What if I see no buses on the map?</strong>
This can happen for two reasons: the route may be operating in a low-frequency period (very early morning, late night, or holidays), or you may be searching for a route that doesn&rsquo;t serve your area. Verify you&rsquo;ve selected the correct route and that the map is centred on your actual location.</p>
<p><strong>Can I see how many buses are coming on my route?</strong>
Yes. When you select a route, the map simultaneously shows all active buses on that line — both those heading towards you and those going in the opposite direction.</p>
<p><strong>Is the bus position updated in real time or is there a delay?</strong>
Updates are nearly instantaneous. Buses transmit their GPS position continuously and the app reflects it within seconds. With version 2.4.0&rsquo;s smooth marker movement, you can see the bus actually moving without interruptions.</p>
<p><strong>Does the app work without an internet connection?</strong>
The app requires an internet connection to show real-time positions. Without connectivity, the map cannot update. Mobile data or WiFi is recommended for a complete experience.</p>
<p><strong>Can I save my favourite routes?</strong>
The development team continuously adds new features. Check for app updates in the App Store or Google Play to discover the latest improvements available.</p>
<h2>Download the app and stop wondering<span class="hx:absolute hx:-mt-20" id="download-the-app-and-stop-wondering"></span>
    <a href="#download-the-app-and-stop-wondering" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The question &ldquo;where is my bus?&rdquo; has a precise answer. Download <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> for free on iPhone or Android and see your bus&rsquo;s position in real time.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Free App to See Buses in Real Time in Santiago</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/04/23/free-app-see-buses-real-time-santiago/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/04/23/free-app-see-buses-real-time-santiago/</id>
    <published>2026-04-23T09:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Free app to see buses in real time in Santiago" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Tired of standing at the bus stop with no idea whether your bus is around the corner or still ten blocks away? There&rsquo;s a better way: see every bus on a live map, right from your phone. And it&rsquo;s completely free.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Free app to see buses in real time in Santiago" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Tired of standing at the bus stop with no idea whether your bus is around the corner or still ten blocks away? There&rsquo;s a better way: see every bus on a live map, right from your phone. And it&rsquo;s completely free.</p>
<p><strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> is the free app for iPhone and Android that displays the GPS position of every RED Metropolitan Network bus on an interactive map, updated second by second.</p>
<h2>How does the RED bus GPS system work?<span class="hx:absolute hx:-mt-20" id="how-does-the-red-bus-gps-system-work"></span>
    <a href="#how-does-the-red-bus-gps-system-work" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Every bus on Santiago&rsquo;s Transantiago network (now called RED) is equipped with GPS. That data is public, and <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> turns it into an easy-to-read map: each bus appears as a marker showing its route number and line color, moving in real time through Santiago&rsquo;s streets.</p>
<p>No stop codes, no schedules needed. Just open the app and look.</p>
<h2>What you can see in real time<span class="hx:absolute hx:-mt-20" id="what-you-can-see-in-real-time"></span>
    <a href="#what-you-can-see-in-real-time" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Markers that move smoothly<span class="hx:absolute hx:-mt-20" id="markers-that-move-smoothly"></span>
    <a href="#markers-that-move-smoothly" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>With version <strong>2.4.0</strong>, bus markers no longer &ldquo;jump&rdquo; from one position to the next — they now <strong>slide smoothly across the map</strong>, just as the bus moves physically down the street. This makes it much easier to visually follow your route and estimate how long it will take to arrive.</p>
<p>All buses in the area also load together rather than appearing one by one, giving you the full picture at once.</p>
<h3>Colors and data always up to date<span class="hx:absolute hx:-mt-20" id="colors-and-data-always-up-to-date"></span>
    <a href="#colors-and-data-always-up-to-date" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Line colors update automatically whenever official information changes. If a route changes its color or number, the app reflects it instantly — no action needed on your part.</p>
<h3>Route stops on the map<span class="hx:absolute hx:-mt-20" id="route-stops-on-the-map"></span>
    <a href="#route-stops-on-the-map" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>When you follow a specific route, version <strong>2.4.0</strong> now shows the <strong>stops for that route marked on the map</strong>. You can see at a glance which stops the bus will pass before reaching yours, and how many blocks you&rsquo;d need to walk to the nearest stop.</p>
<h2>Better performance since version 2.2.0<span class="hx:absolute hx:-mt-20" id="better-performance-since-version-220"></span>
    <a href="#better-performance-since-version-220" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Version <strong>2.2.0</strong> improved the overall speed and stability of the app. Viewing buses in real time, searching routes, and exploring the map all became smoother, with interface adjustments that work well on every screen size from small iPhones to large Android devices.</p>
<h2>Does it work for every Transantiago route?<span class="hx:absolute hx:-mt-20" id="does-it-work-for-every-transantiago-route"></span>
    <a href="#does-it-work-for-every-transantiago-route" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Yes. The app uses official GPS data from the Red Metropolitana de Movilidad, covering all active RED routes in the Greater Santiago area. Search any route by number from the built-in list.</p>
<table>
  <thead>
      <tr>
          <th>What you want to know</th>
          <th>What the app shows</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Where is the bus right now?</td>
          <td>Live marker on the map</td>
      </tr>
      <tr>
          <td>Route number and color</td>
          <td>Yes, auto-updated</td>
      </tr>
      <tr>
          <td>Direction (inbound / outbound)</td>
          <td>Yes</td>
      </tr>
      <tr>
          <td>Route stops</td>
          <td>Yes (when following a route, v2.4.0)</td>
      </tr>
      <tr>
          <td>Metro alerts</td>
          <td>Yes, faster since v2.4.0</td>
      </tr>
  </tbody>
</table>
<h2>Tips to get the most out of the real-time map<span class="hx:absolute hx:-mt-20" id="tips-to-get-the-most-out-of-the-real-time-map"></span>
    <a href="#tips-to-get-the-most-out-of-the-real-time-map" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><strong>Enable location access</strong>: Allow the app to use your GPS so the map centres automatically on your position and shows you the nearest buses immediately.</li>
<li><strong>Check before you leave home</strong>: Open the map two or three minutes before heading to the stop so you know whether to hurry or whether you have time to spare.</li>
<li><strong>Track more than one route</strong>: If multiple bus routes work for you, watch which one arrives first and choose accordingly — the app shows all active buses simultaneously.</li>
<li><strong>Combine the map with Metro alerts</strong>: Since version 2.4.0, Metro service alerts appear in the app too. If your trip combines Metro and bus, you can plan both legs from the same screen.</li>
<li><strong>Try it at different times of day</strong>: Bus density on the map varies significantly by hour. Checking at peak vs. off-peak times gives you a real sense of how frequently your route runs.</li>
</ul>
<h2>Frequently asked questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Does the app work across all of Greater Santiago?</strong>
Yes. The GPS data covers all active RED routes in the Santiago metropolitan area, including outlying districts such as Puente Alto, Maipú, La Florida, San Bernardo, and Lo Barnechea. If your route is operating in the RED network, it appears on the map.</p>
<p><strong>Do I need to create an account or sign up?</strong>
No. The app requires no registration or account creation. Download it, open it, and buses appear on the map immediately — no extra steps.</p>
<p><strong>How much mobile data does it use?</strong>
Consumption is moderate. The app updates positions in real time and is optimised to use as little bandwidth as possible. It works fine on 4G, LTE, or WiFi. In areas with weak signal, markers may take a moment longer to refresh.</p>
<p><strong>Does it work at night and on weekends?</strong>
Yes, whenever RED buses are operating. During low-frequency periods — late nights, public holidays — you&rsquo;ll see fewer buses on the map. That&rsquo;s useful information too: if no markers are visible, service is reduced and you may want to consider other transport options.</p>
<p><strong>Is the data official or from a third party?</strong>
The data comes directly from the GPS units installed on Red Metropolitana de Movilidad buses — the same source used by Santiago&rsquo;s official system. The app shows the real position of each bus, not estimates or third-party data.</p>
<h2>Download the app and see your buses in real time<span class="hx:absolute hx:-mt-20" id="download-the-app-and-see-your-buses-in-real-time"></span>
    <a href="#download-the-app-and-see-your-buses-in-real-time" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>No more guessing. With <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> you have the full bus map in your pocket — free, for iPhone and Android.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Silence Unknown Numbers and Spam Calls in Chile</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/13/silence-unknown-numbers-spam-calls-chile/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/13/silence-unknown-numbers-spam-calls-chile/</id>
    <published>2026-03-13T11:30:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block phone spam in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<p>Getting calls from unknown numbers in the middle of a work meeting or while you&rsquo;re resting isn&rsquo;t just annoying — it&rsquo;s also a potential privacy threat. <strong>How to block spam calls</strong> is one of the most common questions we receive from users in Chile. Below are the most effective methods to stop phone harassment.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block phone spam in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<p>Getting calls from unknown numbers in the middle of a work meeting or while you&rsquo;re resting isn&rsquo;t just annoying — it&rsquo;s also a potential privacy threat. <strong>How to block spam calls</strong> is one of the most common questions we receive from users in Chile. Below are the most effective methods to stop phone harassment.</p>
<h2>Why you receive so many spam calls<span class="hx:absolute hx:-mt-20" id="why-you-receive-so-many-spam-calls"></span>
    <a href="#why-you-receive-so-many-spam-calls" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The market for phone data is enormous. When number databases circulate, you become a target for plan upgrades, insurance offers, or worse — scams. Knowing how to <a href="/en/blog/apps/2026/03/13/spam-call-prefixes-how-to-identify-them/">identify spam call prefixes</a> (like 600 and 809) is your first line of defense.</p>
<p>But most of the time, we hand over our own information. When you make a purchase, register for a service, or enter a contest, the fine print often authorizes sharing your data with third parties.</p>
<h2>Different methods for blocking spam calls<span class="hx:absolute hx:-mt-20" id="different-methods-for-blocking-spam-calls"></span>
    <a href="#different-methods-for-blocking-spam-calls" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>There are several strategies for dealing with spam overload, depending on your patience and your device.</p>
<p><strong>1. &ldquo;Do Not Disturb&rdquo; as a temporary fix</strong>
Both iPhone and Android let you configure &ldquo;Silence Unknown Callers&rdquo; or enable &ldquo;Do Not Disturb&rdquo; mode.</p>
<ul>
<li><em>Pros</em>: Stops noise from numbers not in your contacts.</li>
<li><em>Cons</em>: You could miss important legitimate calls (delivery services, doctors, your child&rsquo;s school).</li>
</ul>
<p><strong>2. Built-in blocklists</strong></p>
<ul>
<li><em>Pros</em>: You can block a number after confirming it was spam.</li>
<li><em>Cons</em>: As discussed in <a href="/en/blog/apps/2026/03/13/block-spam-call-prefixes-permanently/">how to block spam definitively</a>, companies simply call from a different number.</li>
</ul>
<p><strong>3. Going through official channels: SERNAC</strong>
Chile has the SERNAC platform for consumer protection complaints. Find out about the legal process to <a href="/en/blog/apps/2026/03/09/phone-spam-chile-rights-block-free/">stop spam through SERNAC</a>.</p>
<ul>
<li><em>Pros</em>: Legally obliges the company to stop contacting you.</li>
<li><em>Cons</em>: It&rsquo;s a process that doesn&rsquo;t take effect immediately — it can take weeks.</li>
</ul>
<h2>4. The complete solution: ChaoSPAM<span class="hx:absolute hx:-mt-20" id="4-the-complete-solution-chaospam"></span>
    <a href="#4-the-complete-solution-chaospam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>If you really want to know how to <strong>block spam calls on autopilot — starting today</strong> — <a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a> is your best option. 100% free, no sign-up required.</p>
<p>ChaoSPAM understands that Android and iOS can&rsquo;t natively filter by prefix (like all numbers starting with 600). So it feeds updated prefix blocklists directly to the operating system.</p>
<ul>
<li>You won&rsquo;t miss genuinely important calls.</li>
<li>You stay fully in control: turn filters on and off whenever you want.</li>
<li>All activity stays on your device — nothing is sent over the internet.</li>
</ul>
<h2>How to enable &ldquo;Silence Unknown Callers&rdquo; on iPhone and Android<span class="hx:absolute hx:-mt-20" id="how-to-enable-silence-unknown-callers-on-iphone-and-android"></span>
    <a href="#how-to-enable-silence-unknown-callers-on-iphone-and-android" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>If you want to try your phone&rsquo;s built-in feature before installing ChaoSPAM:</p>
<p><strong>On iPhone (iOS 13 or later):</strong></p>
<ol>
<li>Open the <strong>Settings</strong> app.</li>
<li>Scroll down and tap <strong>Phone</strong>.</li>
<li>Enable <strong>Silence Unknown Callers</strong>.</li>
</ol>
<p>From that point on, calls from numbers not in your contacts will go straight to voicemail. Keep in mind you could miss important notices from doctors, banks, or delivery services.</p>
<p><strong>On Android (varies by manufacturer):</strong></p>
<ol>
<li>Open the <strong>Phone</strong> app.</li>
<li>Tap the menu (three dots or gear icon).</li>
<li>Look for <strong>Block Numbers</strong> or <strong>Call Settings</strong>.</li>
<li>Enable <strong>Block calls from unknown numbers</strong> or <strong>Filter spam</strong>.</li>
</ol>
<p>This feature doesn&rsquo;t distinguish between real spam (600/809 prefix) and legitimate calls from unknown numbers, so it can generate false positives.</p>
<h2>Frequently asked questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Can ChaoSPAM and &ldquo;Silence Unknown Callers&rdquo; be used together?</strong>
Yes, they&rsquo;re compatible. But with ChaoSPAM active you won&rsquo;t need &ldquo;Silence Unknown Callers&rdquo; — the app distinguishes real spam from legitimate unknown calls.</p>
<p><strong>Does ChaoSPAM drain battery or use extra data?</strong>
Not significantly. It operates at OS level without processing audio, so its impact on battery and data is minimal.</p>
<p><strong>What if the spam company changes its number?</strong>
ChaoSPAM blocks by prefix (600, 809), not individual number. If the company calls from 600 123 4568 or 600 987 6543, both are blocked automatically.</p>
<p>Download <strong>ChaoSPAM</strong> and solve your problem immediately:</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>How to Block Spam Calls on iPhone and Android</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/13/block-spam-calls-iphone-android-guide/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/13/block-spam-calls-iphone-android-guide/</id>
    <published>2026-03-13T11:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block phone spam in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<p>Users constantly ask us <strong>how to block spam calls</strong> effectively. Between survey calls, unsolicited sales pitches, and persistent debt collectors, fielding calls from unknown numbers can become a daily annoyance.</p>
<p>This guide explains why the traditional approach isn&rsquo;t enough — and how technology can help you silence your phone for good.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block phone spam in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<p>Users constantly ask us <strong>how to block spam calls</strong> effectively. Between survey calls, unsolicited sales pitches, and persistent debt collectors, fielding calls from unknown numbers can become a daily annoyance.</p>
<p>This guide explains why the traditional approach isn&rsquo;t enough — and how technology can help you silence your phone for good.</p>
<h2>The manual method (and why it falls short)<span class="hx:absolute hx:-mt-20" id="the-manual-method-and-why-it-falls-short"></span>
    <a href="#the-manual-method-and-why-it-falls-short" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Every modern mobile OS includes a &ldquo;Block this number&rdquo; option after a call. While tempting to use, it has serious drawbacks when fighting <strong><a href="/en/blog/apps/2026/03/09/phone-spam-chile-rights-block-free/">mass phone spam</a></strong>:</p>
<ol>
<li><strong>Management overload</strong>: After a year you&rsquo;ll have hundreds of blocked numbers with no way to organize them.</li>
<li><strong>It only works once</strong>: Companies constantly change their numbers. Blocking one does nothing against the next thousand from the same call center.</li>
<li><strong>You were already interrupted</strong>: The phone rings, you stop what you&rsquo;re doing, you decline — the disruption already happened.</li>
</ol>
<p>Often the key isn&rsquo;t hunting down a specific number, but knowing how to <a href="/en/blog/apps/2026/03/13/spam-call-prefixes-how-to-identify-them/">identify the spam call prefixes</a> most used in your country, like 600 and 809.</p>
<h2>How to block spam calls automatically<span class="hx:absolute hx:-mt-20" id="how-to-block-spam-calls-automatically"></span>
    <a href="#how-to-block-spam-calls-automatically" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The real solution is automatic call filtering tools. Instead of managing lists manually, <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> acts as your phone&rsquo;s first line of defense in Chile.</p>
<p>Here&rsquo;s how ChaoSPAM answers the question of <strong>how to block spam calls</strong>:</p>
<ul>
<li><strong>Automated prefix blocking</strong>: Systematically ignores thousands of variations starting with 600 and 809 before your phone makes a sound.</li>
<li><strong>Fully private</strong>: It integrates at the system level. Apple and Android rely on ChaoSPAM&rsquo;s offline database, but the app never reads your calls, history, or contacts. Everything stays on your device.</li>
</ul>
<h3>Quick setup — free in under two minutes<span class="hx:absolute hx:-mt-20" id="quick-setup--free-in-under-two-minutes"></span>
    <a href="#quick-setup--free-in-under-two-minutes" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p><strong>On iPhone (iOS):</strong></p>
<ol>
<li>Download ChaoSPAM from the App Store.</li>
<li>Open <strong>Settings</strong>, go to <strong>Phone</strong>, then to <strong>Call Blocking &amp; Identification</strong>.</li>
<li>Enable ChaoSPAM permissions.</li>
<li>Open the app and turn on the filters you want.</li>
</ol>
<p><strong>On Android:</strong></p>
<ol>
<li>Download it for free from Google Play.</li>
<li>Open the app and accept the call interception permissions.</li>
<li>Enable the protection switches (e.g., the toggle for 600 prefix blocking).</li>
</ol>
<h2>Manual blocking vs. ChaoSPAM: comparison<span class="hx:absolute hx:-mt-20" id="manual-blocking-vs-chaospam-comparison"></span>
    <a href="#manual-blocking-vs-chaospam-comparison" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><table>
  <thead>
      <tr>
          <th>Feature</th>
          <th>Manual blocking</th>
          <th>ChaoSPAM</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Does the phone ring?</td>
          <td>Yes, on the first call</td>
          <td>No, blocked before it rings</td>
      </tr>
      <tr>
          <td>Requires action from you</td>
          <td>Yes, number by number</td>
          <td>No, automatic</td>
      </tr>
      <tr>
          <td>Covers variations of the same prefix</td>
          <td>No</td>
          <td>Yes</td>
      </tr>
      <tr>
          <td>Cost</td>
          <td>Free</td>
          <td>Free</td>
      </tr>
      <tr>
          <td>Effectiveness against telemarketing</td>
          <td>Low</td>
          <td>High</td>
      </tr>
  </tbody>
</table>
<h2>Frequently asked questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Does ChaoSPAM also block SMS spam?</strong>
ChaoSPAM is currently focused on blocking incoming calls with 600 and 809 prefixes. SMS spam filtering is being evaluated for future versions.</p>
<p><strong>Does it work without an internet connection?</strong>
Yes. Blocking lists are downloaded to your device when you install the app. Once installed, it works completely offline.</p>
<p><strong>Will I miss important calls?</strong>
No. ChaoSPAM only filters specific telemarketing prefixes (600, 809). Calls from known contacts, mobile numbers, or businesses that don&rsquo;t use those prefixes are not affected.</p>
<p><strong>Is it compatible with eSIM and dual SIM?</strong>
Yes. On both iPhone and Android, ChaoSPAM works with dual SIM setups. You can manage filters independently from within the app.</p>
<p>Give peace and quiet a chance. Download your new anti-spam tool now:</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>How to Block Spam Call Prefixes Permanently</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/13/block-spam-call-prefixes-permanently/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/13/block-spam-call-prefixes-permanently/</id>
    <published>2026-03-13T10:30:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block phone spam in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<p>If you&rsquo;ve already identified which numbers keep disrupting your day — as we explained in our guide on <a href="/en/blog/apps/2026/03/13/spam-call-prefixes-how-to-identify-them/">identifying spam call prefixes</a> — it&rsquo;s time to take action.</p>
<p>The problem is that Android and iOS don&rsquo;t let you easily create a rule that says &ldquo;block everything starting with 600.&rdquo; Block one number today and tomorrow they&rsquo;ll call from a slightly different one.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block phone spam in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<p>If you&rsquo;ve already identified which numbers keep disrupting your day — as we explained in our guide on <a href="/en/blog/apps/2026/03/13/spam-call-prefixes-how-to-identify-them/">identifying spam call prefixes</a> — it&rsquo;s time to take action.</p>
<p>The problem is that Android and iOS don&rsquo;t let you easily create a rule that says &ldquo;block everything starting with 600.&rdquo; Block one number today and tomorrow they&rsquo;ll call from a slightly different one.</p>
<h2>The drawbacks of blocking numbers manually<span class="hx:absolute hx:-mt-20" id="the-drawbacks-of-blocking-numbers-manually"></span>
    <a href="#the-drawbacks-of-blocking-numbers-manually" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><strong>Wastes your time</strong>: You have to open your call log, find the number and add it to your blocklist after every annoying call.</li>
<li><strong>The list never ends</strong>: Call centers rotate their numbers. Blocking a specific number is pointless because next time they&rsquo;ll use a different combination while keeping the same spam prefix.</li>
<li><strong>You&rsquo;re still harassed first</strong>: Your phone rings every time anyway. The interruption already happened.</li>
</ul>
<h2>The definitive solution for blocking spam call prefixes<span class="hx:absolute hx:-mt-20" id="the-definitive-solution-for-blocking-spam-call-prefixes"></span>
    <a href="#the-definitive-solution-for-blocking-spam-call-prefixes" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>To solve the problem at the root, you need to block the &ldquo;root&rdquo; of the number. That&rsquo;s where <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> comes in — technology built specifically for this purpose.</p>
<p>Instead of building an endless individual list, ChaoSPAM uses intelligent filters designed for Chilean networks. Created by ELCSoftware, it comes with ready-to-use filters that automatically reject any call from the country&rsquo;s most problematic prefixes, including 600 and 809.</p>
<h3>Why ChaoSPAM works better<span class="hx:absolute hx:-mt-20" id="why-chaospam-works-better"></span>
    <a href="#why-chaospam-works-better" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ol>
<li><strong>Native technology</strong>: Integrates with Apple&rsquo;s <code>CallKit</code> and Android&rsquo;s call filtering API. This means <strong>the call is blocked before your phone even rings</strong>.</li>
<li><strong>Privacy guaranteed</strong>: ChaoSPAM doesn&rsquo;t need to read your contacts. It works through blocklists provided by the app itself that match millions of spam prefix variations.</li>
<li><strong>Country-specific filters</strong>: Tailored to Chilean call center tactics (plan upgrades, debt collection, aggressive telemarketing).</li>
<li><strong>100% free</strong>: No trial periods, hidden charges, or invasive ads.</li>
</ol>
<h2>Step by step: install ChaoSPAM in 2 minutes<span class="hx:absolute hx:-mt-20" id="step-by-step-install-chaospam-in-2-minutes"></span>
    <a href="#step-by-step-install-chaospam-in-2-minutes" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>On iPhone<span class="hx:absolute hx:-mt-20" id="on-iphone"></span>
    <a href="#on-iphone" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ol>
<li>Open the <strong>App Store</strong> and search for &ldquo;ChaoSPAM&rdquo;.</li>
<li>Download and install the app (free, no ads).</li>
<li>Go to <strong>Settings → Phone → Call Blocking &amp; Identification</strong>.</li>
<li>Enable the toggle next to <strong>ChaoSPAM</strong>.</li>
<li>Open ChaoSPAM and activate the prefixes you want to block (600, 809, etc.).</li>
</ol>
<p>From that moment, calls from those prefixes are rejected before your phone makes a sound.</p>
<h3>On Android<span class="hx:absolute hx:-mt-20" id="on-android"></span>
    <a href="#on-android" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ol>
<li>Open <strong>Google Play</strong> and search for &ldquo;ChaoSPAM&rdquo;.</li>
<li>Download and install the app.</li>
<li>Open ChaoSPAM and grant the call filtering permission when prompted.</li>
<li>Enable the desired prefix filters from the main screen.</li>
</ol>
<h2>Which prefixes does ChaoSPAM block?<span class="hx:absolute hx:-mt-20" id="which-prefixes-does-chaospam-block"></span>
    <a href="#which-prefixes-does-chaospam-block" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The main prefixes covered in Chile:</p>
<ul>
<li><strong>600</strong> — Telemarketing, debt collection, and mass sales calls</li>
<li><strong>809</strong> — Robocalls and active number verification systems</li>
</ul>
<h2>Frequently asked questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Do I need to update the blocklists manually?</strong>
No. ChaoSPAM updates its filters automatically with each new app version available in the store.</p>
<p><strong>Does it work with Entel, WOM, Movistar and Claro?</strong>
Yes. ChaoSPAM operates at the phone&rsquo;s OS level, independently of your carrier.</p>
<p><strong>Can I disable a filter if I need to receive a 600 call?</strong>
Yes. You can temporarily disable a filter from the app with a single tap and re-enable it whenever you want.</p>
<h2>Protect your phone right now<span class="hx:absolute hx:-mt-20" id="protect-your-phone-right-now"></span>
    <a href="#protect-your-phone-right-now" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>No technical knowledge is needed. Just install the app from your phone&rsquo;s official store and toggle on the spam prefixes you want to silence.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<p>Leave the hassle behind. Your time and peace of mind are worth it. To learn more about your consumer rights against phone harassment, check out our article on <a href="/en/blog/apps/2026/03/09/phone-spam-chile-rights-block-free/">Chile&rsquo;s Consumer Law and SERNAC</a>.</p>
]]></content>
  </entry>
  
  <entry>
    <title>Spam Call Prefixes: How to Identify Them</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/13/spam-call-prefixes-how-to-identify-them/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/13/spam-call-prefixes-how-to-identify-them/</id>
    <published>2026-03-13T10:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block phone spam in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<p>If your phone won&rsquo;t stop ringing at all hours with numbers you don&rsquo;t recognize, you&rsquo;re not alone. In Chile, the volume of unwanted calls has grown enormously. The first step to defending yourself is knowing the most common <strong>spam call prefixes</strong>.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block phone spam in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<p>If your phone won&rsquo;t stop ringing at all hours with numbers you don&rsquo;t recognize, you&rsquo;re not alone. In Chile, the volume of unwanted calls has grown enormously. The first step to defending yourself is knowing the most common <strong>spam call prefixes</strong>.</p>
<p>Identifying these prefixes lets you ignore the call in time — or better yet, block it automatically.</p>
<h2>The most common spam call prefixes in Chile<span class="hx:absolute hx:-mt-20" id="the-most-common-spam-call-prefixes-in-chile"></span>
    <a href="#the-most-common-spam-call-prefixes-in-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Unlike a regular mobile number, call centers and debt collection agencies use special lines for mass outbound dialing. These are the prefixes that generate the most complaints:</p>
<h3>1. The 600 prefix<span class="hx:absolute hx:-mt-20" id="1-the-600-prefix"></span>
    <a href="#1-the-600-prefix" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Originally designed for customer service, the <strong>600 prefix</strong> has become the king of spam. Telecom companies (like Entel, Movistar, Claro, and WOM) and financial firms use it constantly to push new plans, insurance, or store credit cards.</p>
<h3>2. The 809 prefix<span class="hx:absolute hx:-mt-20" id="2-the-809-prefix"></span>
    <a href="#2-the-809-prefix" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Less known than 600, the <strong>809 prefix</strong> is growing among automated robocall systems. You often answer a call starting with 809 only to hear silence — the system is just checking whether your number is active so it can sell it to other databases.</p>
<h3>3. Suspicious international prefixes<span class="hx:absolute hx:-mt-20" id="3-suspicious-international-prefixes"></span>
    <a href="#3-suspicious-international-prefixes" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>If you receive calls from prefixes like +225, +234, or +355, be careful. These are often &ldquo;Wangiri&rdquo; scams (missed calls) designed to get you to call back a premium-rate number with sky-high charges.</p>
<h3>4. The 800 prefix<span class="hx:absolute hx:-mt-20" id="4-the-800-prefix"></span>
    <a href="#4-the-800-prefix" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Similar to 600, the <strong>800 prefix</strong> is a toll-free line for the caller. While many legitimate companies use it for customer support, it&rsquo;s also used in mass telemarketing campaigns. If you receive unsolicited calls from 800 numbers, look them up online before calling back.</p>
<h2>Spam prefix summary table for Chile<span class="hx:absolute hx:-mt-20" id="spam-prefix-summary-table-for-chile"></span>
    <a href="#spam-prefix-summary-table-for-chile" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><table>
  <thead>
      <tr>
          <th>Prefix</th>
          <th>Main use</th>
          <th>Risk level</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>600</td>
          <td>Telemarketing, debt collection, sales</td>
          <td>High</td>
      </tr>
      <tr>
          <td>809</td>
          <td>Robocalls, active number verification</td>
          <td>High</td>
      </tr>
      <tr>
          <td>800</td>
          <td>Customer service and mass campaigns</td>
          <td>Medium</td>
      </tr>
      <tr>
          <td>+225, +234, +355</td>
          <td>International scams (Wangiri)</td>
          <td>Very high</td>
      </tr>
  </tbody>
</table>
<h2>What to do when you spot these prefixes<span class="hx:absolute hx:-mt-20" id="what-to-do-when-you-spot-these-prefixes"></span>
    <a href="#what-to-do-when-you-spot-these-prefixes" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>If you see a number on your screen starting with one of these codes, <strong>the best advice is not to answer</strong>. Answering confirms your number is active, which means even more calls in the future.</p>
<p>But staring at your screen every time your phone rings is exhausting. Manually adding numbers to a blocklist one by one doesn&rsquo;t work either — call centers use many different endings and never call from the exact same number twice.</p>
<h2>The automated solution: ChaoSPAM<span class="hx:absolute hx:-mt-20" id="the-automated-solution-chaospam"></span>
    <a href="#the-automated-solution-chaospam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>To stop dealing with the hassle of screening every call, technology is your best ally.</p>
<p><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a> is an app built specifically for the Chilean market that attacks the root of the problem. Instead of blocking individual numbers (which is useless against modern spam), ChaoSPAM blocks <strong>spam call prefixes</strong> directly.</p>
<ul>
<li><strong>Root prefix blocking:</strong> Automatically filters and silences calls starting with 600, 809.</li>
<li><strong>Saves time:</strong> You won&rsquo;t even know they tried to call. The call is silently rejected.</li>
<li><strong>Free and private:</strong> No contact upload to external servers, no payments required.</li>
</ul>
<p>You can protect your phone right now by installing <strong>ChaoSPAM</strong>:</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<p>For legal-level protection, we also recommend reading our article on <a href="/en/blog/apps/2026/03/09/phone-spam-chile-rights-block-free/">how Chile&rsquo;s SERNAC (consumer protection agency) relates to blocking spam calls</a> to maximize your privacy.</p>
<h2>Frequently asked questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Why do they call from a different number every time if it&rsquo;s the same company?</strong>
Telemarketing centers automatically rotate their outbound numbers within the same prefix. That&rsquo;s why blocking an individual number doesn&rsquo;t work — tomorrow they&rsquo;ll call from 600 123 4568 instead of 600 123 4567. The only effective solution is to block by prefix.</p>
<p><strong>Is it illegal to be called without consent in Chile?</strong>
Law 19.496 on Consumer Protection regulates this. If a company calls you without your authorization for commercial contact, you can file a complaint with SERNAC (Chile&rsquo;s national consumer service). However, the process can take weeks and offers no immediate protection.</p>
<p><strong>Should I call back a missed call from an 809 or international prefix?</strong>
No. &ldquo;Wangiri&rdquo; scams rely on you calling back a premium-rate number that charges very high fees. Ignore those calls and block the number directly from your phone app or with ChaoSPAM.</p>
]]></content>
  </entry>
  
  <entry>
    <title>Block 600 and 809 Calls on iPhone (iOS)</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/05/block-600-809-calls-iphone-ios/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/05/block-600-809-calls-iphone-ios/</id>
    <published>2026-03-05T10:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block 600 and 809 calls on iPhone" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>If you have an iPhone and you&rsquo;re fed up with calls from 600 and 809 numbers, this guide is for you. We&rsquo;ll explain how to block 600 calls on iPhone automatically — no need to reject each number one by one — using <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong>, the free app designed specifically for Chile.</p>
<h2>Why doesn&rsquo;t iPhone block 600 and 809 by default?<span class="hx:absolute hx:-mt-20" id="why-doesnt-iphone-block-600-and-809-by-default"></span>
    <a href="#why-doesnt-iphone-block-600-and-809-by-default" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>iOS lets you block individual numbers from your contacts, but it has no native feature to block entire prefix ranges like 600 or 809. That means even if you block one call center number, they&rsquo;ll call again tomorrow from a different number in the same range.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block 600 and 809 calls on iPhone" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>If you have an iPhone and you&rsquo;re fed up with calls from 600 and 809 numbers, this guide is for you. We&rsquo;ll explain how to block 600 calls on iPhone automatically — no need to reject each number one by one — using <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong>, the free app designed specifically for Chile.</p>
<h2>Why doesn&rsquo;t iPhone block 600 and 809 by default?<span class="hx:absolute hx:-mt-20" id="why-doesnt-iphone-block-600-and-809-by-default"></span>
    <a href="#why-doesnt-iphone-block-600-and-809-by-default" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>iOS lets you block individual numbers from your contacts, but it has no native feature to block entire prefix ranges like 600 or 809. That means even if you block one call center number, they&rsquo;ll call again tomorrow from a different number in the same range.</p>
<p>The 600 prefix is used by customer service and sales lines of companies (Entel, WOM, Movistar, Claro, etc.), while 809 is frequently used by debt collection agencies and aggressive telemarketing. Blocking them one by one is a losing battle.</p>
<p>The solution is to use a <strong>call blocking extension</strong> that iOS allows you to activate in system settings. ChaoSPAM uses exactly this technology.</p>
<h2>What is ChaoSPAM?<span class="hx:absolute hx:-mt-20" id="what-is-chaospam"></span>
    <a href="#what-is-chaospam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> is a free iPhone (iOS) app developed by ELCSoftware, built for the Chilean context. It automatically blocks calls from the 600, 809 and other spam prefixes without you having to configure anything manually.</p>
<ul>
<li>Works 100% locally: your contacts and calls never leave your device</li>
<li>No extra battery drain</li>
<li>Completely free</li>
</ul>
<h2>How to block 600 and 809 calls on iPhone, step by step<span class="hx:absolute hx:-mt-20" id="how-to-block-600-and-809-calls-on-iphone-step-by-step"></span>
    <a href="#how-to-block-600-and-809-calls-on-iphone-step-by-step" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Step 1: Download ChaoSPAM from the App Store<span class="hx:absolute hx:-mt-20" id="step-1-download-chaospam-from-the-app-store"></span>
    <a href="#step-1-download-chaospam-from-the-app-store" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
</div>
<h3>Step 2: Open the app and activate protection<span class="hx:absolute hx:-mt-20" id="step-2-open-the-app-and-activate-protection"></span>
    <a href="#step-2-open-the-app-and-activate-protection" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>When you open ChaoSPAM for the first time, you&rsquo;ll see a button to activate protection. Tap it to continue.</p>
<h3>Step 3: Enable the extension in iPhone Settings<span class="hx:absolute hx:-mt-20" id="step-3-enable-the-extension-in-iphone-settings"></span>
    <a href="#step-3-enable-the-extension-in-iphone-settings" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Your iPhone will redirect you (or you can go manually) to:</p>
<p><strong>Settings &gt; Phone &gt; Call Blocking &amp; Caller ID</strong></p>
<p>Enable the <strong>ChaoSPAM</strong> toggle.</p>
<img src="/images/chaospam-ios-settings.jpeg" alt="Enable ChaoSPAM in iPhone Settings – Call Blocking & Caller ID" width="828" height="633" loading="lazy" decoding="async" style="width:100%;height:auto;">
<h3>Step 4: Activate blocking for 600 and 809 prefixes<span class="hx:absolute hx:-mt-20" id="step-4-activate-blocking-for-600-and-809-prefixes"></span>
    <a href="#step-4-activate-blocking-for-600-and-809-prefixes" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Return to the ChaoSPAM app and enable blocking for 600 and 809 numbers from the main screen.</p>
<picture>
  <source srcset="/images/chaospam-blocking.avif" type="image/avif">
  <img src="/images/chaospam-blocking.png" alt="ChaoSPAM – Enable 600 and 809 call blocking on iPhone" width="828" height="1792" loading="lazy" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Done. From this moment, any incoming call from a number starting with 600 or 809 will be silently blocked. Your iPhone won&rsquo;t ring or light up.</p>
<h2>What about legitimate calls from 600 numbers?<span class="hx:absolute hx:-mt-20" id="what-about-legitimate-calls-from-600-numbers"></span>
    <a href="#what-about-legitimate-calls-from-600-numbers" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>That&rsquo;s a fair question. Some services you use (bank, pension fund, health insurer) may call from 600 numbers. If you need to receive calls from a specific number, you can whitelist it directly in the app.</p>
<p>However, the vast majority of 600 calls you receive without having requested them are spam. ChaoSPAM gives you peace of mind without constant interruptions.</p>
<h2>Conclusion<span class="hx:absolute hx:-mt-20" id="conclusion"></span>
    <a href="#conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Blocking 600 and 809 calls on iPhone is simple with the right tool. No subscription needed, no data sharing required. <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">Download ChaoSPAM for free</a></strong> and take back control of your phone today.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Block 600 and 809 Spam Calls on Android and Samsung</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/06/block-600-809-calls-android-samsung/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/06/block-600-809-calls-android-samsung/</id>
    <published>2026-03-05T10:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block 600 and 809 calls on Android and Samsung" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Do you have an Android or Samsung phone and can&rsquo;t stop receiving calls from 600 and 809 numbers? This guide explains how to block them automatically and for free using <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong>, without having to reject each number one by one.</p>
<h2>The problem with native Android and Samsung call blocking<span class="hx:absolute hx:-mt-20" id="the-problem-with-native-android-and-samsung-call-blocking"></span>
    <a href="#the-problem-with-native-android-and-samsung-call-blocking" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Android phones, including Samsung Galaxy devices, let you block individual numbers. The typical process is:</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block 600 and 809 calls on Android and Samsung" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Do you have an Android or Samsung phone and can&rsquo;t stop receiving calls from 600 and 809 numbers? This guide explains how to block them automatically and for free using <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong>, without having to reject each number one by one.</p>
<h2>The problem with native Android and Samsung call blocking<span class="hx:absolute hx:-mt-20" id="the-problem-with-native-android-and-samsung-call-blocking"></span>
    <a href="#the-problem-with-native-android-and-samsung-call-blocking" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Android phones, including Samsung Galaxy devices, let you block individual numbers. The typical process is:</p>
<ol>
<li>Open the call history</li>
<li>Long-press the number</li>
<li>Select &ldquo;Block number&rdquo;</li>
</ol>
<p>The problem is obvious: each blocked number is just one of the thousands in the 600 or 809 range. Call centers constantly rotate their numbers, so this approach is ineffective against mass spam.</p>
<p>Samsung also has a &ldquo;Block mode&rdquo; and filtering options in the Phone app, but neither allows you to block entire number prefixes in a targeted way.</p>
<h2>ChaoSPAM: automatic 600 and 809 prefix blocking on Android<span class="hx:absolute hx:-mt-20" id="chaospam-automatic-600-and-809-prefix-blocking-on-android"></span>
    <a href="#chaospam-automatic-600-and-809-prefix-blocking-on-android" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> is a free app available on Google Play that automatically blocks calls from the 600 and 809 prefixes and other common spam patterns in Chile. No manual setup needed — no list of blocked numbers to maintain.</p>
<p>Key advantages:</p>
<ul>
<li>Full prefix blocking: 600, 809 and variants</li>
<li>No subscription, completely free</li>
<li>Full privacy: your data and contacts never leave your device</li>
<li>Runs in the background without affecting performance</li>
</ul>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<h2>How to install and set up ChaoSPAM on Android<span class="hx:absolute hx:-mt-20" id="how-to-install-and-set-up-chaospam-on-android"></span>
    <a href="#how-to-install-and-set-up-chaospam-on-android" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Step 1: Download ChaoSPAM from Google Play<span class="hx:absolute hx:-mt-20" id="step-1-download-chaospam-from-google-play"></span>
    <a href="#step-1-download-chaospam-from-google-play" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Search for &ldquo;ChaoSPAM&rdquo; in the Google Play Store or use the button above. The download is free.</p>
<h3>Step 2: Open the app and enable blocking<span class="hx:absolute hx:-mt-20" id="step-2-open-the-app-and-enable-blocking"></span>
    <a href="#step-2-open-the-app-and-enable-blocking" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>When you open ChaoSPAM, you&rsquo;ll find toggles to enable blocking for 600 and 809 calls. Turn them on.</p>
<h3>Step 3: Grant the required permissions<span class="hx:absolute hx:-mt-20" id="step-3-grant-the-required-permissions"></span>
    <a href="#step-3-grant-the-required-permissions" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Android will ask for permissions so ChaoSPAM can manage incoming calls. Accept them for the blocking to work correctly.</p>
<p>That&rsquo;s it. From that point on, calls from 600 and 809 numbers are blocked automatically before your phone even rings.</p>
<h2>Does it work on all Android and Samsung devices?<span class="hx:absolute hx:-mt-20" id="does-it-work-on-all-android-and-samsung-devices"></span>
    <a href="#does-it-work-on-all-android-and-samsung-devices" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>ChaoSPAM is compatible with Android 10 or higher, which covers the vast majority of Samsung Galaxy phones (S, A, and M series) as well as devices from other manufacturers like Motorola, Xiaomi, LG, and others.</p>
<h2>What if I need to receive a specific 600 call?<span class="hx:absolute hx:-mt-20" id="what-if-i-need-to-receive-a-specific-600-call"></span>
    <a href="#what-if-i-need-to-receive-a-specific-600-call" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>If there&rsquo;s a particular 600 number you need to receive calls from (your bank, for example), you can add it as an exception in the app or directly from your contacts list. ChaoSPAM never blocks numbers saved in your address book.</p>
<h2>Conclusion<span class="hx:absolute hx:-mt-20" id="conclusion"></span>
    <a href="#conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Blocking 600 and 809 calls on Android and Samsung doesn&rsquo;t have to be a never-ending manual process. With <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong>, you set it up once and forget about it. Download it free on Google Play and start enjoying an interruption-free phone.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Block All 600 and 809 Calls in Chile – Complete Guide</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/08/block-all-600-809-calls-chile/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/08/block-all-600-809-calls-chile/</id>
    <published>2026-03-05T10:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block 600 and 809 calls in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>In Chile, the 600 and 809 prefixes have become synonymous with unwanted interruptions. If you&rsquo;re wondering whether it&rsquo;s possible to block all 600 calls at once, the answer is yes — and this guide explains exactly how to do it, for free, on your iPhone or Android.</p>
<h2>What are 600 and 809 numbers?<span class="hx:absolute hx:-mt-20" id="what-are-600-and-809-numbers"></span>
    <a href="#what-are-600-and-809-numbers" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>The 600 prefix<span class="hx:absolute hx:-mt-20" id="the-600-prefix"></span>
    <a href="#the-600-prefix" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>600 numbers are business service lines in Chile, regulated by Subtel. Any company can get a 600 number and use it for both customer service and telemarketing campaigns. They&rsquo;re legal, but frequently abused to cold-call people who never asked to be contacted.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block 600 and 809 calls in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>In Chile, the 600 and 809 prefixes have become synonymous with unwanted interruptions. If you&rsquo;re wondering whether it&rsquo;s possible to block all 600 calls at once, the answer is yes — and this guide explains exactly how to do it, for free, on your iPhone or Android.</p>
<h2>What are 600 and 809 numbers?<span class="hx:absolute hx:-mt-20" id="what-are-600-and-809-numbers"></span>
    <a href="#what-are-600-and-809-numbers" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>The 600 prefix<span class="hx:absolute hx:-mt-20" id="the-600-prefix"></span>
    <a href="#the-600-prefix" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>600 numbers are business service lines in Chile, regulated by Subtel. Any company can get a 600 number and use it for both customer service and telemarketing campaigns. They&rsquo;re legal, but frequently abused to cold-call people who never asked to be contacted.</p>
<h3>The 809 prefix<span class="hx:absolute hx:-mt-20" id="the-809-prefix"></span>
    <a href="#the-809-prefix" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>809 numbers are predominantly used by debt collection agencies, aggressive sales call centers, and external telemarketing services. This prefix accounts for a large share of the country&rsquo;s spam calls.</p>
<h3>What about 6000 numbers?<span class="hx:absolute hx:-mt-20" id="what-about-6000-numbers"></span>
    <a href="#what-about-6000-numbers" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Some numbers that show up as &ldquo;6000&rdquo; or similar in your caller ID are extensions of the same 600 range. ChaoSPAM recognizes and blocks them as part of the same prefix.</p>
<h2>Can I block all 600 calls at once?<span class="hx:absolute hx:-mt-20" id="can-i-block-all-600-calls-at-once"></span>
    <a href="#can-i-block-all-600-calls-at-once" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Yes. The key is using an app that blocks by <strong>entire prefix</strong>, not number by number. <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> does exactly that: when you enable 600 or 809 blocking, any incoming call starting with that prefix is silently rejected before your phone even rings.</p>
<p>This means:</p>
<ul>
<li>It doesn&rsquo;t matter how many different 600 numbers exist</li>
<li>It doesn&rsquo;t matter if the call center switches to a new number</li>
<li>You never need to update any list manually</li>
</ul>
<h2>How to block 600 and 809 calls with ChaoSPAM<span class="hx:absolute hx:-mt-20" id="how-to-block-600-and-809-calls-with-chaospam"></span>
    <a href="#how-to-block-600-and-809-calls-with-chaospam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>On iPhone<span class="hx:absolute hx:-mt-20" id="on-iphone"></span>
    <a href="#on-iphone" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ol>
<li>Download <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> from the App Store</li>
<li>Open the app and enable protection</li>
<li>Go to <strong>Settings &gt; Phone &gt; Call Blocking &amp; Identification</strong> and enable ChaoSPAM</li>
<li>Return to the app and turn on blocking for 600 and 809 prefixes</li>
</ol>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
</div>
<h3>On Android<span class="hx:absolute hx:-mt-20" id="on-android"></span>
    <a href="#on-android" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ol>
<li>Download <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> from Google Play</li>
<li>Open the app and toggle on 600 and 809 blocking</li>
<li>Accept the requested permissions</li>
</ol>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<h2>Is it free?<span class="hx:absolute hx:-mt-20" id="is-it-free"></span>
    <a href="#is-it-free" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Yes. ChaoSPAM is completely free. No paid plans, no subscriptions. Full 600 and 809 prefix blocking is included at no cost.</p>
<h2>Frequently asked questions<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions"></span>
    <a href="#frequently-asked-questions" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Does it also block 800 numbers?</strong>
800 numbers in Chile are toll-free lines (free for the caller) and serve a different purpose from 600 numbers. ChaoSPAM focuses on the 600 and 809 prefixes, which account for the vast majority of spam calls in Chile.</p>
<p><strong>Do blocked calls appear in call history?</strong>
It depends on the operating system. On iOS, calls blocked by system extensions generally don&rsquo;t appear in call history. On Android, they may show as missed calls depending on the version.</p>
<p><strong>Can I disable it temporarily?</strong>
Yes. You can toggle blocking on and off from the app at any time.</p>
<h2>Conclusion<span class="hx:absolute hx:-mt-20" id="conclusion"></span>
    <a href="#conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Blocking all 600 and 809 calls in Chile is possible and free. <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> does it in seconds, works on iPhone and Android, and requires no complex setup. Install it once and forget about phone spam.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Block Spam Calls from Chilean Carriers on iPhone and Android</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/07/block-spam-calls-chilean-carriers-iphone-android/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/07/block-spam-calls-chilean-carriers-iphone-android/</id>
    <published>2026-03-05T10:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block calls from Entel, WOM, Movistar and Claro" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Do you keep getting unsolicited calls from Entel, WOM, Movistar, Claro or other Chilean companies? This guide explains how to block 600 and 809 calls from any carrier in Chile using <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong>, a free app for iPhone and Android.</p>
<h2>Why do Chilean carriers use 600 and 809 numbers?<span class="hx:absolute hx:-mt-20" id="why-do-chilean-carriers-use-600-and-809-numbers"></span>
    <a href="#why-do-chilean-carriers-use-600-and-809-numbers" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>In Chile, 600 numbers are business service lines regulated by Subtel (Chile&rsquo;s telecoms regulator). Carriers like Entel, WOM, Movistar, and Claro use them for both legitimate customer service and telemarketing campaigns.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block calls from Entel, WOM, Movistar and Claro" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Do you keep getting unsolicited calls from Entel, WOM, Movistar, Claro or other Chilean companies? This guide explains how to block 600 and 809 calls from any carrier in Chile using <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong>, a free app for iPhone and Android.</p>
<h2>Why do Chilean carriers use 600 and 809 numbers?<span class="hx:absolute hx:-mt-20" id="why-do-chilean-carriers-use-600-and-809-numbers"></span>
    <a href="#why-do-chilean-carriers-use-600-and-809-numbers" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>In Chile, 600 numbers are business service lines regulated by Subtel (Chile&rsquo;s telecoms regulator). Carriers like Entel, WOM, Movistar, and Claro use them for both legitimate customer service and telemarketing campaigns.</p>
<p>809 numbers are widely used by debt collection agencies and external call centers that work on behalf of these same companies.</p>
<p>The key point: <strong>the 600 or 809 prefix is the same regardless of which carrier you&rsquo;re subscribed to</strong>. Whether you&rsquo;re an Entel, WOM, or Movistar customer makes no difference — a 600 call reaches you the same way. That&rsquo;s why blocking carrier spam in Chile comes down to blocking these entire prefixes, not configuring anything per operator.</p>
<h2>How to block Entel, WOM, Movistar and Claro calls with ChaoSPAM<span class="hx:absolute hx:-mt-20" id="how-to-block-entel-wom-movistar-and-claro-calls-with-chaospam"></span>
    <a href="#how-to-block-entel-wom-movistar-and-claro-calls-with-chaospam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> is the simplest solution: it automatically blocks all 600, 809 and other common spam prefix calls without you needing to know which company is calling.</p>
<h3>On iPhone (iOS)<span class="hx:absolute hx:-mt-20" id="on-iphone-ios"></span>
    <a href="#on-iphone-ios" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ol>
<li>Download <strong>ChaoSPAM</strong> from the App Store</li>
<li>Open the app and tap &ldquo;Enable protection&rdquo;</li>
<li>Go to <strong>Settings &gt; Phone &gt; Call Blocking &amp; Identification</strong> and enable ChaoSPAM</li>
<li>Return to the app and turn on blocking for 600 and 809 prefixes</li>
</ol>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
</div>
<h3>On Android (Samsung, Motorola, Xiaomi and others)<span class="hx:absolute hx:-mt-20" id="on-android-samsung-motorola-xiaomi-and-others"></span>
    <a href="#on-android-samsung-motorola-xiaomi-and-others" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ol>
<li>Download <strong>ChaoSPAM</strong> from Google Play</li>
<li>Open the app and toggle on 600 and 809 blocking</li>
<li>Accept the call management permissions</li>
</ol>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<h2>What if I need to call the carrier myself?<span class="hx:absolute hx:-mt-20" id="what-if-i-need-to-call-the-carrier-myself"></span>
    <a href="#what-if-i-need-to-call-the-carrier-myself" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>ChaoSPAM only blocks incoming calls. You can still dial 600 numbers for customer service whenever you need to. And if there&rsquo;s a specific 600 number you want to receive calls from, you can add it as an exception or save it to your contacts.</p>
<h2>Does it also block debt collection calls?<span class="hx:absolute hx:-mt-20" id="does-it-also-block-debt-collection-calls"></span>
    <a href="#does-it-also-block-debt-collection-calls" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Yes. Debt collection agencies working for telecom companies and other services typically operate from 600 and 809 prefixes. ChaoSPAM blocks those calls the same way, regardless of which company is behind the number.</p>
<h2>Conclusion<span class="hx:absolute hx:-mt-20" id="conclusion"></span>
    <a href="#conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Whether the nuisance is Entel, WOM, Movistar, or Claro — the fix is the same. Block the entire prefix with <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> and get your peace of mind back. The app is free, private, and works on both iPhone and Android.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Phone Spam in Chile: Your Rights and How to Block It Free</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/09/phone-spam-chile-rights-block-free/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/09/phone-spam-chile-rights-block-free/</id>
    <published>2026-03-05T10:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block phone spam in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Phone spam is one of Chile&rsquo;s most reported consumer complaints. SERNAC (Chile&rsquo;s National Consumer Service) constantly receives complaints about unsolicited calls from telecom companies, debt collectors, and telemarketing firms. This article explains what rights you have — and, more importantly, how to block 600 and 809 spam calls right now, for free.</p>
<h2>What does SERNAC say about spam calls?<span class="hx:absolute hx:-mt-20" id="what-does-sernac-say-about-spam-calls"></span>
    <a href="#what-does-sernac-say-about-spam-calls" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>SERNAC protects consumers from abusive commercial practices, including phone harassment. Under <strong>Chile&rsquo;s Consumer Protection Act (Law 19.496)</strong>, companies cannot contact you for commercial purposes without your explicit consent.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM – Block phone spam in Chile" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<p>Phone spam is one of Chile&rsquo;s most reported consumer complaints. SERNAC (Chile&rsquo;s National Consumer Service) constantly receives complaints about unsolicited calls from telecom companies, debt collectors, and telemarketing firms. This article explains what rights you have — and, more importantly, how to block 600 and 809 spam calls right now, for free.</p>
<h2>What does SERNAC say about spam calls?<span class="hx:absolute hx:-mt-20" id="what-does-sernac-say-about-spam-calls"></span>
    <a href="#what-does-sernac-say-about-spam-calls" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>SERNAC protects consumers from abusive commercial practices, including phone harassment. Under <strong>Chile&rsquo;s Consumer Protection Act (Law 19.496)</strong>, companies cannot contact you for commercial purposes without your explicit consent.</p>
<p>Key consumer rights:</p>
<ul>
<li><strong>Right not to be contacted</strong>: If you&rsquo;ve said you don&rsquo;t want commercial calls, the company must respect that.</li>
<li><strong>Right to revoke consent</strong>: If you previously agreed to receive communications and no longer want them, you can withdraw that consent.</li>
<li><strong>Right to file a complaint</strong>: You can submit a claim at SERNAC.gob.cl if a company violates these rules.</li>
</ul>
<h2>The practical limits of filing a SERNAC complaint<span class="hx:absolute hx:-mt-20" id="the-practical-limits-of-filing-a-sernac-complaint"></span>
    <a href="#the-practical-limits-of-filing-a-sernac-complaint" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Filing a complaint is an important right, but it has real-world limitations:</p>
<ol>
<li><strong>It&rsquo;s slow</strong>: Mediation and enforcement processes can take weeks or months.</li>
<li><strong>It doesn&rsquo;t stop the calls immediately</strong>: While your complaint is being processed, your phone keeps ringing.</li>
<li><strong>Hard to identify the responsible party</strong>: Many spam calls come from external call centers acting on behalf of multiple companies at once.</li>
</ol>
<p>A SERNAC complaint is valuable for long-term accountability and protecting other consumers, but if you want to silence spam today, you need a technological solution.</p>
<h2>How to block 600 spam calls for free with ChaoSPAM<span class="hx:absolute hx:-mt-20" id="how-to-block-600-spam-calls-for-free-with-chaospam"></span>
    <a href="#how-to-block-600-spam-calls-for-free-with-chaospam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> is the immediate solution to phone spam in Chile. It&rsquo;s a free app for iPhone and Android that automatically blocks calls from 600, 809 and other common telemarketing prefixes in the country.</p>
<p>Unlike a SERNAC complaint, ChaoSPAM acts instantly — the spam call never reaches your phone.</p>
<h3>Key features<span class="hx:absolute hx:-mt-20" id="key-features"></span>
    <a href="#key-features" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li><strong>Automatic blocking of 600 and 809</strong>: No manual lists, no complex configuration</li>
<li><strong>Full privacy</strong>: Your data never leaves your device</li>
<li><strong>100% free</strong>: No subscriptions or payments</li>
<li><strong>Works on iPhone and Android</strong>: One app for both platforms</li>
</ul>
<h3>How to install it<span class="hx:absolute hx:-mt-20" id="how-to-install-it"></span>
    <a href="#how-to-install-it" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p><strong>On iPhone:</strong></p>
<ol>
<li>Download ChaoSPAM from the App Store</li>
<li>Open the app and enable protection</li>
<li>Go to <strong>Settings &gt; Phone &gt; Call Blocking &amp; Identification</strong> and enable ChaoSPAM</li>
<li>Enable 600 and 809 blocking from within the app</li>
</ol>
<p><strong>On Android:</strong></p>
<ol>
<li>Download ChaoSPAM from Google Play</li>
<li>Open the app and toggle the blocking switches on</li>
<li>Accept the required permissions</li>
</ol>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<h2>The complete strategy against phone spam<span class="hx:absolute hx:-mt-20" id="the-complete-strategy-against-phone-spam"></span>
    <a href="#the-complete-strategy-against-phone-spam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>For the best result, combine both approaches:</p>
<table>
  <thead>
      <tr>
          <th>Action</th>
          <th>Effect</th>
          <th>Timeline</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Install ChaoSPAM</td>
          <td>Immediate blocking of 600 and 809</td>
          <td>Immediate</td>
      </tr>
      <tr>
          <td>Ask the company to stop calling</td>
          <td>Legal obligation to cease contact</td>
          <td>1–2 weeks</td>
      </tr>
      <tr>
          <td>File a SERNAC complaint if calls continue</td>
          <td>Company sanction</td>
          <td>Weeks/months</td>
      </tr>
  </tbody>
</table>
<h2>Conclusion<span class="hx:absolute hx:-mt-20" id="conclusion"></span>
    <a href="#conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>You have rights against phone spam, and SERNAC is a valid tool for exercising them. But while the legal process plays out, <strong><a href="/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/">ChaoSPAM</a></strong> protects you immediately and for free. They&rsquo;re not mutually exclusive — use both and take back control of your phone.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Santiago Bus Routes by Number – Complete Guide</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/05/santiago-bus-routes-guide/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/05/santiago-bus-routes-guide/</id>
    <published>2026-03-05T08:40:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Santiago bus routes on the map" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>The Red Metropolitana de Movilidad (Santiago&rsquo;s public bus network, commonly known as Transantiago) operates hundreds of routes identified by numeric and alphanumeric codes. If you&rsquo;re looking for information on a specific route — the 201, 214, 301, 505 or any other — this guide explains how the system is organized and how to see your bus in real time.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Santiago bus routes on the map" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>The Red Metropolitana de Movilidad (Santiago&rsquo;s public bus network, commonly known as Transantiago) operates hundreds of routes identified by numeric and alphanumeric codes. If you&rsquo;re looking for information on a specific route — the 201, 214, 301, 505 or any other — this guide explains how the system is organized and how to see your bus in real time.</p>
<h2>How Santiago&rsquo;s bus routes are organized<span class="hx:absolute hx:-mt-20" id="how-santiagos-bus-routes-are-organized"></span>
    <a href="#how-santiagos-bus-routes-are-organized" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Routes are grouped in numeric series that follow a general geographic logic:</p>
<h3>100 Series — Northeastern and central sectors<span class="hx:absolute hx:-mt-20" id="100-series--northeastern-and-central-sectors"></span>
    <a href="#100-series--northeastern-and-central-sectors" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Routes connecting the northern, northeastern, and central areas of Santiago. Most searched:</p>
<ul>
<li><strong>104</strong>: northern sector route</li>
<li><strong>106</strong>: northeastern sector connector</li>
<li><strong>107</strong>: north-central sector route</li>
<li><strong>109</strong>: major trunk route of the northern sector</li>
<li><strong>110</strong>: northeastern route</li>
<li><strong>111</strong>: north toward the center</li>
<li><strong>118</strong>: northeastern sector route</li>
</ul>
<h3>200 Series — Eastern and central sectors<span class="hx:absolute hx:-mt-20" id="200-series--eastern-and-central-sectors"></span>
    <a href="#200-series--eastern-and-central-sectors" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Routes covering eastern municipalities such as Las Condes, Providencia, Ñuñoa and central areas:</p>
<ul>
<li><strong>201</strong>: east-center trunk route, one of the most used in the city</li>
<li><strong>201e</strong>: variant of the 201, serves eastern sectors</li>
<li><strong>210</strong>: eastern sector route</li>
<li><strong>214</strong>: connects the eastern sector with the center</li>
<li><strong>225</strong>: eastern-southern sector route</li>
</ul>
<h3>300 Series — Southern and southeastern sectors<span class="hx:absolute hx:-mt-20" id="300-series--southern-and-southeastern-sectors"></span>
    <a href="#300-series--southern-and-southeastern-sectors" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Routes connecting southern municipalities such as La Florida, Puente Alto, San Joaquín:</p>
<ul>
<li><strong>301</strong>: southern sector trunk route, high demand during rush hour</li>
</ul>
<h3>400 Series — Western and southern sectors<span class="hx:absolute hx:-mt-20" id="400-series--western-and-southern-sectors"></span>
    <a href="#400-series--western-and-southern-sectors" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Routes covering western municipalities such as Pudahuel, Cerrillos, Maipú:</p>
<ul>
<li><strong>401</strong>: southwest sector route</li>
<li><strong>405</strong>: western sector connector</li>
<li><strong>430</strong>: west-south sector route</li>
</ul>
<h3>500 Series — Peripheral zones and Metrobus<span class="hx:absolute hx:-mt-20" id="500-series--peripheral-zones-and-metrobus"></span>
    <a href="#500-series--peripheral-zones-and-metrobus" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Routes serving areas further from the center and connections with peripheral municipalities:</p>
<ul>
<li><strong>505</strong>: peripheral zone route</li>
<li><strong>506</strong>: variant of the 500 series</li>
</ul>
<h3>Circular routes — C Series<span class="hx:absolute hx:-mt-20" id="circular-routes--c-series"></span>
    <a href="#circular-routes--c-series" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li><strong>C01</strong>: circular route connecting sectors without going through the center</li>
</ul>
<h2>Special zones and sectors<span class="hx:absolute hx:-mt-20" id="special-zones-and-sectors"></span>
    <a href="#special-zones-and-sectors" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Zones F and H<span class="hx:absolute hx:-mt-20" id="zones-f-and-h"></span>
    <a href="#zones-f-and-h" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li><strong>Zone F</strong>: western Santiago, including Pudahuel, Lo Prado and Cerro Navia</li>
<li><strong>Zone H</strong>: southern and western peripheral sectors</li>
</ul>
<h3>Colina<span class="hx:absolute hx:-mt-20" id="colina"></span>
    <a href="#colina" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The municipality of <strong>Colina</strong>, north of Santiago, is connected to the system via RED and Metrobus routes that reach the nearest northern Metro station (Vespucio Norte or Quilicura, depending on the route).</p>
<h3>Padre Hurtado<span class="hx:absolute hx:-mt-20" id="padre-hurtado"></span>
    <a href="#padre-hurtado" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The municipality of <strong>Padre Hurtado</strong>, west of Santiago on Route 68, has RED routes connecting it to the metropolitan area. Travel times are longer than in central municipalities.</p>
<h3>Metrobus and highway express bus<span class="hx:absolute hx:-mt-20" id="metrobus-and-highway-express-bus"></span>
    <a href="#metrobus-and-highway-express-bus" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The <strong>Metrobus</strong> is a complementary service to the RED that operates on high-speed corridors including the central highway and other expressways. It connects areas the Metro doesn&rsquo;t reach, and operates on segregated lanes in some cases, providing greater speed and reliability.</p>
<h2>How to track any route in real time<span class="hx:absolute hx:-mt-20" id="how-to-track-any-route-in-real-time"></span>
    <a href="#how-to-track-any-route-in-real-time" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Whatever route number you need, <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> lets you:</p>
<ol>
<li>View all available routes in a complete list</li>
<li>Select the route you need (e.g. 201, 301, 505)</li>
<li>See the real-time location of the buses on that route on the map</li>
<li>Know whether they are inbound or outbound</li>
</ol>
<p>It&rsquo;s the fastest way to answer the question: <strong>how long until my bus arrives?</strong></p>
<h2>Operators and BIP card<span class="hx:absolute hx:-mt-20" id="operators-and-bip-card"></span>
    <a href="#operators-and-bip-card" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>RED buses are operated by different companies under government contract. The operator doesn&rsquo;t change the user experience from a GPS standpoint — all buses have real-time tracking regardless of who operates them.</p>
<p>To ride any Transantiago route you need <strong>balance on your BIP card</strong> (Santiago&rsquo;s rechargeable transit card). You can reload it at Metro stations, authorized points of sale (pharmacies, supermarkets, kiosks), or via the official BIP app.</p>
<h2>Find your bus with the app<span class="hx:absolute hx:-mt-20" id="find-your-bus-with-the-app"></span>
    <a href="#find-your-bus-with-the-app" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Whether you ride the 201, 301, 505 or any other route, <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> is the simplest way to track your bus in real time. Free, no sign-up, available for iPhone and Android.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Best App for Santiago Buses in 2026</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/05/best-santiago-bus-app-2026/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/05/best-santiago-bus-app-2026/</id>
    <published>2026-03-05T08:30:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Best app for the Transantiago bus network" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>If you ride the Santiago bus network every day, having the right app on your phone makes the difference between arriving on time and being stuck at a bus stop with no idea what&rsquo;s happening. In 2026 there are several options available — here&rsquo;s a breakdown of which one fits each need.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Best app for the Transantiago bus network" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>If you ride the Santiago bus network every day, having the right app on your phone makes the difference between arriving on time and being stuck at a bus stop with no idea what&rsquo;s happening. In 2026 there are several options available — here&rsquo;s a breakdown of which one fits each need.</p>
<h2>What a good Transantiago app needs<span class="hx:absolute hx:-mt-20" id="what-a-good-transantiago-app-needs"></span>
    <a href="#what-a-good-transantiago-app-needs" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Before comparing, let&rsquo;s define what actually makes a transit app useful:</p>
<ul>
<li><strong>Real-time bus location</strong>: the most important feature. Without it, you&rsquo;re stuck with theoretical schedules that rarely hold.</li>
<li><strong>Interactive map</strong>: seeing the bus move on a map is far more intuitive than a list of times.</li>
<li><strong>Route list</strong>: ability to search and filter by route number.</li>
<li><strong>Direction indicator</strong>: knowing whether the bus is inbound or outbound.</li>
<li><strong>Free</strong>: public transport already costs money; the app shouldn&rsquo;t add to that.</li>
</ul>
<h2>Top apps for the Transantiago in 2026<span class="hx:absolute hx:-mt-20" id="top-apps-for-the-transantiago-in-2026"></span>
    <a href="#top-apps-for-the-transantiago-in-2026" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>¿Cuándo llega la micro? — Real-time GPS tracker<span class="hx:absolute hx:-mt-20" id="cuándo-llega-la-micro--real-time-gps-tracker"></span>
    <a href="#cu%c3%a1ndo-llega-la-micro--real-time-gps-tracker" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p><strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> is an app built in Chile, designed specifically for the Red Metropolitana de Movilidad. Its focus is simple and direct: show on an interactive map where buses are right now.</p>
<p><strong>Strengths:</strong></p>
<ul>
<li>Real-time map with all active RED buses</li>
<li>Clear identification by route number and color</li>
<li>Shows bus direction (inbound/outbound)</li>
<li>Full list of available routes</li>
<li>100% free, no intrusive ads</li>
<li>Available for iPhone and Android</li>
</ul>
<p><strong>Best for:</strong> users who want to know exactly when their bus is coming before they leave home or while waiting at the stop.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<h3>Google Maps<span class="hx:absolute hx:-mt-20" id="google-maps"></span>
    <a href="#google-maps" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Google Maps integrates Transantiago routes and lets you plan journeys combining bus, Metro and walking. It&rsquo;s useful for finding <strong>how to get</strong> from point A to point B.</p>
<p><strong>Key limitation:</strong> it does not show the real-time location of individual buses. It provides estimated arrival times based on historical schedules that don&rsquo;t reflect current traffic conditions.</p>
<p><strong>Best for:</strong> planning routes from scratch when you don&rsquo;t know which routes to take.</p>
<h3>Official Red Movilidad app<span class="hx:absolute hx:-mt-20" id="official-red-movilidad-app"></span>
    <a href="#official-red-movilidad-app" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The official system app provides route and stop information, and lets you check estimated arrival times for a specific stop.</p>
<p><strong>Limitation:</strong> the user experience has frequently been criticized for being slow and lacking an intuitive visual map.</p>
<p><strong>Best for:</strong> spot-checks of official information.</p>
<h3>RedBus (intercity bus ticketing app)<span class="hx:absolute hx:-mt-20" id="redbus-intercity-bus-ticketing-app"></span>
    <a href="#redbus-intercity-bus-ticketing-app" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Important clarification: <strong>RedBus</strong> is primarily a platform for buying intercity bus tickets (Santiago–Valparaíso, Santiago–Concepción, etc.). It is NOT an urban Transantiago tracking app, despite what the name might suggest.</p>
<p><strong>Best for:</strong> buying long-distance bus tickets.</p>
<h2>Quick comparison<span class="hx:absolute hx:-mt-20" id="quick-comparison"></span>
    <a href="#quick-comparison" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><table>
  <thead>
      <tr>
          <th>Feature</th>
          <th>¿Cuándo llega la micro?</th>
          <th>Google Maps</th>
          <th>Red Movilidad app</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Real-time GPS per bus</td>
          <td>Yes</td>
          <td>No</td>
          <td>Partial</td>
      </tr>
      <tr>
          <td>Interactive map</td>
          <td>Yes</td>
          <td>Yes</td>
          <td>No</td>
      </tr>
      <tr>
          <td>Route planning</td>
          <td>No</td>
          <td>Yes</td>
          <td>Yes</td>
      </tr>
      <tr>
          <td>Free</td>
          <td>Yes</td>
          <td>Yes</td>
          <td>Yes</td>
      </tr>
      <tr>
          <td>iPhone and Android</td>
          <td>Yes</td>
          <td>Yes</td>
          <td>Yes</td>
      </tr>
  </tbody>
</table>
<h2>Which app should you use?<span class="hx:absolute hx:-mt-20" id="which-app-should-you-use"></span>
    <a href="#which-app-should-you-use" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The recommendation is to combine two apps depending on the situation:</p>
<ol>
<li><strong>Google Maps</strong> to plan your route when you&rsquo;re not sure which routes to take</li>
<li><strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> to see in real time when the bus is coming once you know your route</li>
</ol>
<p>This combination covers the two core needs of every Transantiago rider: knowing <strong>how to get there</strong> and knowing <strong>when the bus comes</strong>.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Getting to Work and the Airport by Bus in Santiago</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/05/santiago-bus-commute-airport-guide/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/05/santiago-bus-commute-airport-guide/</id>
    <published>2026-03-05T08:20:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Plan your Transantiago trip in real time" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Getting to work on time — or catching a flight — often comes down to knowing exactly when your bus is coming. Transantiago (officially the Red Metropolitana de Movilidad) covers virtually the entire Santiago metropolitan area, but making the most of it takes some planning. Here&rsquo;s how.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Plan your Transantiago trip in real time" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Getting to work on time — or catching a flight — often comes down to knowing exactly when your bus is coming. Transantiago (officially the Red Metropolitana de Movilidad) covers virtually the entire Santiago metropolitan area, but making the most of it takes some planning. Here&rsquo;s how.</p>
<h2>How to plan your commute on Transantiago<span class="hx:absolute hx:-mt-20" id="how-to-plan-your-commute-on-transantiago"></span>
    <a href="#how-to-plan-your-commute-on-transantiago" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><h3>Step 1: Find the right route<span class="hx:absolute hx:-mt-20" id="step-1-find-the-right-route"></span>
    <a href="#step-1-find-the-right-route" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Start by identifying which routes stop near your origin and get close to your destination. You can look them up on:</p>
<ul>
<li><strong>Google Maps</strong>: integrates RED routes and plans door-to-door trips</li>
<li><strong>The official Red Movilidad app</strong>: shows routes and bus stops</li>
<li><strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong>: shows all active routes on the map with real-time bus positions</li>
</ul>
<h3>Step 2: Learn your route&rsquo;s frequency<span class="hx:absolute hx:-mt-20" id="step-2-learn-your-routes-frequency"></span>
    <a href="#step-2-learn-your-routes-frequency" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Transantiago doesn&rsquo;t run on a fixed timetable like a train, but it does follow <strong>approximate frequency bands</strong> depending on the time of day:</p>
<table>
  <thead>
      <tr>
          <th>Time of day</th>
          <th>Estimated frequency (trunk routes)</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>6:00–9:00 (morning peak)</td>
          <td>Every 3–8 minutes</td>
      </tr>
      <tr>
          <td>9:00–18:00 (off-peak)</td>
          <td>Every 10–20 minutes</td>
      </tr>
      <tr>
          <td>18:00–21:00 (afternoon peak)</td>
          <td>Every 5–10 minutes</td>
      </tr>
      <tr>
          <td>21:00–24:00 (late night)</td>
          <td>Every 20–30 minutes or more</td>
      </tr>
  </tbody>
</table>
<p>Peripheral routes tend to have lower frequency. It&rsquo;s always worth checking in real time.</p>
<h3>Step 3: Use live GPS to leave at exactly the right moment<span class="hx:absolute hx:-mt-20" id="step-3-use-live-gps-to-leave-at-exactly-the-right-moment"></span>
    <a href="#step-3-use-live-gps-to-leave-at-exactly-the-right-moment" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The key to not standing at the bus stop longer than needed is knowing <strong>when the next bus is coming before you leave home</strong>. Open <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong>, find your route on the map, and estimate how much time you have.</p>
<p>If the bus is 10 blocks away, leave now. If it just passed and the next one is far off, finish your coffee first.</p>
<h2>Getting to the airport by bus<span class="hx:absolute hx:-mt-20" id="getting-to-the-airport-by-bus"></span>
    <a href="#getting-to-the-airport-by-bus" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Arturo Merino Benítez International Airport is in the municipality of Pudahuel, west of Santiago. There are bus-based alternatives to taxis and private transfers.</p>
<h3>Option 1: Centropuerto bus<span class="hx:absolute hx:-mt-20" id="option-1-centropuerto-bus"></span>
    <a href="#option-1-centropuerto-bus" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>The Centropuerto service connects the airport directly to central Santiago (Pajaritos and Los Héroes stations). It&rsquo;s not part of the Transantiago RED network, but it&rsquo;s the most direct bus option to the airport. It runs from early morning to midnight with fixed stops.</p>
<h3>Option 2: Metro + RED bus combination<span class="hx:absolute hx:-mt-20" id="option-2-metro--red-bus-combination"></span>
    <a href="#option-2-metro--red-bus-combination" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><p>Take <strong>Metro Line 5</strong> to <strong>Pudahuel station</strong>, then catch a RED bus from there to the airport. This combination takes longer but can be cheaper.</p>
<h3>What to keep in mind when heading to the airport<span class="hx:absolute hx:-mt-20" id="what-to-keep-in-mind-when-heading-to-the-airport"></span>
    <a href="#what-to-keep-in-mind-when-heading-to-the-airport" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li><strong>Build in buffer time</strong>: Transantiago&rsquo;s variability means you should add at least 30–45 extra minutes to your travel estimate</li>
<li><strong>Check the bus before you leave</strong>: use <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> to see the bus&rsquo;s live position</li>
<li><strong>Check the day and time</strong>: on weekends and holidays, frequency drops significantly</li>
</ul>
<h2>Tips for frequent Transantiago riders<span class="hx:absolute hx:-mt-20" id="tips-for-frequent-transantiago-riders"></span>
    <a href="#tips-for-frequent-transantiago-riders" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><ul>
<li><strong>Know 2 or 3 alternative routes</strong> for your regular trip. If one is running late, another might get you there just as well.</li>
<li><strong>Watch the direction</strong>: inbound vs. outbound matters. <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> shows this clearly for every bus on the map.</li>
<li><strong>Avoid peak hours when you can</strong>: between 7:30–9:00 and 18:00–20:00, buses tend to run later and more crowded.</li>
<li><strong>Keep your BIP card topped up</strong>: you can&rsquo;t board without balance. Reload at Metro stations or authorized points of sale.</li>
</ul>
<h2>The essential tool: real-time bus tracking<span class="hx:absolute hx:-mt-20" id="the-essential-tool-real-time-bus-tracking"></span>
    <a href="#the-essential-tool-real-time-bus-tracking" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>No trip plan is complete without up-to-date information. <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> gives you that for free — whether you&rsquo;re heading to work or catching a flight.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Track Your Bus in Real Time – Santiago (RED / Transantiago)</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/05/santiago-bus-real-time-tracker/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/05/santiago-bus-real-time-tracker/</id>
    <published>2026-03-05T08:10:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – See buses in real time in Santiago" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>You&rsquo;re at the bus stop. Staring down the street. Wondering if your bus already passed or if it&rsquo;s still ten minutes away. It happens millions of times a day across Santiago.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – See buses in real time in Santiago" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>You&rsquo;re at the bus stop. Staring down the street. Wondering if your bus already passed or if it&rsquo;s still ten minutes away. It happens millions of times a day across Santiago.</p>
<p>The good news: you no longer have to guess. Every bus on the Metropolitan Network (Transantiago / RED) has GPS, and you can see its exact location on your phone. This guide shows you how.</p>
<h2>Why doesn&rsquo;t Transantiago have fixed arrival times?<span class="hx:absolute hx:-mt-20" id="why-doesnt-transantiago-have-fixed-arrival-times"></span>
    <a href="#why-doesnt-transantiago-have-fixed-arrival-times" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Unlike the Metro, buses run on streets with variable traffic. An accident, a closed road or rush hour can delay or speed up any route by several minutes. Published schedules are approximate, not exact.</p>
<p>That&rsquo;s why the only reliable way to know when your bus is coming is to check its <strong>real-time location</strong>, not a static timetable.</p>
<h2>How to see your bus in real time<span class="hx:absolute hx:-mt-20" id="how-to-see-your-bus-in-real-time"></span>
    <a href="#how-to-see-your-bus-in-real-time" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> is a free app for iPhone and Android that shows the GPS position of RED buses on an interactive map, right now.</p>
<p>You don&rsquo;t need to know the bus stop code or memorize schedules. Just open the app, find your route, and see on the map how many blocks away your bus is.</p>
<h3>What the app shows<span class="hx:absolute hx:-mt-20" id="what-the-app-shows"></span>
    <a href="#what-the-app-shows" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ul>
<li><strong>Live position</strong> of each bus on the map</li>
<li><strong>Route number and color</strong> to identify your bus at a glance</li>
<li><strong>Direction</strong>: whether the bus is inbound or outbound</li>
<li><strong>Full list of routes</strong> available on the RED network</li>
</ul>
<h3>How to use it, step by step<span class="hx:absolute hx:-mt-20" id="how-to-use-it-step-by-step"></span>
    <a href="#how-to-use-it-step-by-step" class="subheading-anchor" aria-label="Permalink for this section"></a></h3><ol>
<li>Download the app (free on the App Store and Google Play)</li>
<li>Open the app: you&rsquo;ll see the map with active buses near your location</li>
<li>Select your route from the list to filter only the buses you need</li>
<li>Watch the map to see how far away your bus is</li>
</ol>
<p>From that moment you know exactly how much time you have: whether to head out now, finish your coffee, or wait at home five more minutes.</p>
<h2>How long does Transantiago take to arrive? It depends on the route<span class="hx:absolute hx:-mt-20" id="how-long-does-transantiago-take-to-arrive-it-depends-on-the-route"></span>
    <a href="#how-long-does-transantiago-take-to-arrive-it-depends-on-the-route" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Frequency varies a lot between routes and times of day:</p>
<table>
  <thead>
      <tr>
          <th>Situation</th>
          <th>Estimated wait</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Rush hour, trunk route</td>
          <td>3 to 8 minutes</td>
      </tr>
      <tr>
          <td>Off-peak weekday</td>
          <td>10 to 20 minutes</td>
      </tr>
      <tr>
          <td>Weekend or holiday</td>
          <td>20 to 40 minutes</td>
      </tr>
      <tr>
          <td>Peripheral route</td>
          <td>Variable, can exceed 30 min</td>
      </tr>
  </tbody>
</table>
<p>With the app you can see in real time whether the next bus is close or whether it&rsquo;s worth sitting down to wait.</p>
<h2>Does it work for any Transantiago route?<span class="hx:absolute hx:-mt-20" id="does-it-work-for-any-transantiago-route"></span>
    <a href="#does-it-work-for-any-transantiago-route" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> uses the official GPS data from the Red Metropolitana de Movilidad, which covers all active RED routes in the Santiago metropolitan area.</p>
<h2>Download the app and stop guessing<span class="hx:absolute hx:-mt-20" id="download-the-app-and-stop-guessing"></span>
    <a href="#download-the-app-and-stop-guessing" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Knowing when your bus arrives shouldn&rsquo;t be a mystery. With <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> you have that information in your pocket, for free, at any bus stop in Santiago.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Transantiago (RED): Complete Guide to Santiago&#39;s Bus Network</title>
    <link href="https://elcsoft.cl/en/blog/apps/2026/03/05/transantiago-red-bus-network-guide-santiago/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2026/03/05/transantiago-red-bus-network-guide-santiago/</id>
    <published>2026-03-05T08:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Transantiago real-time bus tracker" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p><strong>Transantiago</strong>, now officially known as the <strong>Red Metropolitana de Movilidad</strong> (or simply <strong>RED</strong>), is Santiago de Chile&rsquo;s public bus system. With over three million trips per day, it&rsquo;s one of the largest urban transit systems in Latin America.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? – Transantiago real-time bus tracker" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p><strong>Transantiago</strong>, now officially known as the <strong>Red Metropolitana de Movilidad</strong> (or simply <strong>RED</strong>), is Santiago de Chile&rsquo;s public bus system. With over three million trips per day, it&rsquo;s one of the largest urban transit systems in Latin America.</p>
<p>Whether you&rsquo;re a regular commuter or just arrived in Santiago, this guide covers everything you need to know: how the system works, how to find routes and stops, fares, and how to use technology to travel without the guesswork.</p>
<h2>What is Transantiago (Red de buses)?<span class="hx:absolute hx:-mt-20" id="what-is-transantiago-red-de-buses"></span>
    <a href="#what-is-transantiago-red-de-buses" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The system launched in 2007 as &ldquo;Transantiago&rdquo; and underwent a major restructuring between 2018 and 2022, when it was rebranded as the <strong>Red Metropolitana de Movilidad</strong>. It integrates:</p>
<ul>
<li><strong>RED buses</strong>: the urban bus network covering the entire metropolitan area</li>
<li><strong>Metro de Santiago</strong>: the subway network, which operates in tandem with the buses</li>
<li><strong>Metrobus</strong>: buses connecting areas of the metropolitan region not served by the Metro</li>
</ul>
<p>Payment is made with the <strong>BIP card</strong> (Santiago&rsquo;s rechargeable transit card), which enables fare integration between bus and Metro within the same time window.</p>
<h2>Transantiago routes: how they&rsquo;re organized<span class="hx:absolute hx:-mt-20" id="transantiago-routes-how-theyre-organized"></span>
    <a href="#transantiago-routes-how-theyre-organized" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>The bus network is divided into routes identified by alphanumeric codes. For example:</p>
<ul>
<li><strong>201, 210, 214, 225</strong>: numbered routes serving the eastern and central sectors</li>
<li><strong>301, 401, 405, 430</strong>: southern and western sector routes</li>
<li><strong>505, 506</strong>: peripheral zone routes</li>
<li><strong>C01, C02</strong>: circular routes</li>
</ul>
<p>Each route runs in two directions — <strong>inbound</strong> and <strong>outbound</strong> — which is important to note so you don&rsquo;t board a bus going the wrong way.</p>
<h2>Bus stops: how to identify them<span class="hx:absolute hx:-mt-20" id="bus-stops-how-to-identify-them"></span>
    <a href="#bus-stops-how-to-identify-them" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Transantiago bus stops</strong> are marked with yellow signs listing the route numbers that stop there. Each stop has a unique code (for example, &ldquo;PI1234&rdquo;) that you can use to check arrival times.</p>
<p>Stop locations vary: some are at major intersections with high-frequency service, while in peripheral areas they may be more spread out.</p>
<h2>Schedules and bus frequency<span class="hx:absolute hx:-mt-20" id="schedules-and-bus-frequency"></span>
    <a href="#schedules-and-bus-frequency" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>RED buses generally operate between <strong>6:00 and 24:00</strong>, with variations by route and day of the week. Frequency depends on the time of day:</p>
<ul>
<li><strong>Peak hours (7:00–9:00 and 18:00–20:00)</strong>: more buses, shorter waits</li>
<li><strong>Off-peak hours</strong>: less frequent service</li>
<li><strong>Weekends and holidays</strong>: reduced frequency on most routes</li>
</ul>
<p>A longstanding challenge of the system is <strong>irregularity</strong>: buses don&rsquo;t always follow their theoretical schedules due to traffic. This is why knowing the <strong>real-time location</strong> of buses is far more useful than relying on a fixed timetable.</p>
<h2>Transantiago fares<span class="hx:absolute hx:-mt-20" id="transantiago-fares"></span>
    <a href="#transantiago-fares" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Fares are adjusted periodically. The standard adult fare is paid with the BIP card. Discounted rates exist for:</p>
<ul>
<li>Students (with valid student ID)</li>
<li>Senior citizens (with SENAMA credential — Chile&rsquo;s National Service for the Elderly)</li>
<li>Young children (ride free up to a certain age)</li>
</ul>
<p>Fare integration allows a transfer between bus and Metro — or between two buses — within the same time window without paying a full additional fare.</p>
<h2>How to track your bus in real time<span class="hx:absolute hx:-mt-20" id="how-to-track-your-bus-in-real-time"></span>
    <a href="#how-to-track-your-bus-in-real-time" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>This is the question Transantiago users ask most often. The system has GPS on all its buses, and that data is publicly available.</p>
<p><strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> is a free app for iPhone and Android that shows live bus positions on an interactive map. With it you can:</p>
<ul>
<li>See exactly where your bus is on the map, in real time</li>
<li>Identify routes by number and color</li>
<li>Know whether the bus is inbound or outbound</li>
<li>Plan precisely when to leave your home</li>
</ul>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<h2>Frequently asked questions about Transantiago<span class="hx:absolute hx:-mt-20" id="frequently-asked-questions-about-transantiago"></span>
    <a href="#frequently-asked-questions-about-transantiago" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p><strong>Where can I see the Transantiago map?</strong>
The official route map is on the Red Movilidad website. For live bus positions, the <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> app is the most practical tool.</p>
<p><strong>How do I plan a trip on Transantiago?</strong>
You can use Google Maps (which integrates the RED network) or the Red Movilidad app to plan routes. To know exactly when your bus will arrive once you&rsquo;re at the stop, use <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong>.</p>
<p><strong>Does Transantiago go to the airport?</strong>
Yes. There are routes connecting different parts of Santiago to Arturo Merino Benítez International Airport. Check available routes in the app.</p>
<p><strong>How do I reload my BIP card?</strong>
You can reload at Metro stations, authorized points of sale (pharmacies, supermarkets), or through the official BIP app.</p>
<h2>Conclusion<span class="hx:absolute hx:-mt-20" id="conclusion"></span>
    <a href="#conclusion" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Transantiago / Red de buses is a complex but essential system for getting around Santiago. Knowing its structure, stops, and routes saves you time and stress. And to avoid relying on unreliable timetables, download <strong><a href="/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/">¿Cuándo llega la micro?</a></strong> and travel with real-time information in your pocket.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px; margin: 1rem 0;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
  <entry>
    <title>Block 600 and 809 calls on iPhone (iOS) with ChaoSPAM</title>
    <link href="https://elcsoft.cl/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2025/11/28/chaospam-spam-call-blocker-launch-ios/</id>
    <published>2025-11-28T00:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Functions" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Your phone rings. You&rsquo;re in the middle of an important meeting, having dinner with your family, or just trying to relax on a Saturday morning. You glance at the screen: unknown number. Or worse, a number starting with &ldquo;600&rdquo; or &ldquo;809.&rdquo;</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/chaospam-functions.avif" type="image/avif">
  <img src="/images/chaospam-functions.png" alt="ChaoSPAM - Functions" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>Your phone rings. You&rsquo;re in the middle of an important meeting, having dinner with your family, or just trying to relax on a Saturday morning. You glance at the screen: unknown number. Or worse, a number starting with &ldquo;600&rdquo; or &ldquo;809.&rdquo;</p>
<p>You answer, and&hellip; silence. Or a robotic recording. Or a persistent salesperson trying to sell you a plan you&rsquo;ve already rejected ten times.</p>
<p>If this sounds familiar, you&rsquo;re not alone. Spam calls have become a modern-day plague. They&rsquo;re not just annoying; they interrupt our concentration, cause stress, and even expose us to potential scams.</p>
<p>For a long time, we felt the only option was to resign ourselves to it or keep our phones on perpetual silent. But we believe your phone should be a tool for connecting with the people you care about, not a constant source of interruptions.</p>
<h2>Say Hello to ChaoSPAM<span class="hx:absolute hx:-mt-20" id="say-hello-to-chaospam"></span>
    <a href="#say-hello-to-chaospam" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Today, we&rsquo;re incredibly excited to announce the official launch of ChaoSPAM for iOS.</p>
<p>ChaoSPAM was born from a simple need: wanting to regain control over who can ring our phone. It&rsquo;s an app designed with a single purpose: to automatically, silently, and efficiently block unwanted calls.</p>
<h2>Why is ChaoSPAM different?<span class="hx:absolute hx:-mt-20" id="why-is-chaospam-different"></span>
    <a href="#why-is-chaospam-different" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>We know there are other apps on the market. But ChaoSPAM was built with simplicity, efficiency, and above all, your privacy in mind.</p>
<p>Here&rsquo;s what makes us unique:</p>
<ul>
<li>
<p>Specialized Focus on Chile 🇨🇱
If you live in Chile, you know that the biggest spam culprits often come from specific area codes. ChaoSPAM includes advanced rules to automatically identify and block persistent numbers starting with 600, 809, and other patterns frequently used by aggressive sales and debt collection call centers in the country.</p>
</li>
<li>
<p>Privacy First: We Don&rsquo;t Want Your Data 🛡️
Many blocking apps work by uploading your contact list to their servers. We DON&rsquo;T do that. ChaoSPAM works locally on your device. Your contact list, call history, and personal information never leave your phone. Your protection is yours, and so is your data.</p>
</li>
<li>
<p>Silent and Efficient Call Blocking ⚡
Once activated, ChaoSPAM works in the background. When a call comes in from a number identified as spam, your phone won&rsquo;t even ring or light up. The call is blocked instantly. We don&rsquo;t drain your battery or slow down your iPhone.</p>
</li>
<li>
<p>100% Free. We believe peace of mind shouldn&rsquo;t come at a price. ChaoSPAM is completely free to download and use.</p>
</li>
</ul>
<h2>How does it work? (It&rsquo;s very easy)<span class="hx:absolute hx:-mt-20" id="how-does-it-work-its-very-easy"></span>
    <a href="#how-does-it-work-its-very-easy" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>We designed ChaoSPAM to be a &ldquo;set it and forget it&rdquo; solution.</p>
<ol>
<li>Download the app from the App Store.</li>
<li>Open the app and tap the button to Activate Protection.</li>
<li>Your iPhone will prompt you to enable the extension. Simply go to Settings &gt; Phone &gt; Call Blocking &amp; Caller ID and turn on the ChaoSPAM switch.</li>
</ol>
<img src="/images/chaospam-ios-settings.jpeg" alt="ChaoSPAM iOS settings" width="828" height="633" loading="lazy" decoding="async" style="width:100%;height:auto;">
<ol start="4">
<li>Finally, enable the blocking of 600 and 809 numbers.</li>
</ol>
<picture>
  <source srcset="/images/chaospam-blocking.avif" type="image/avif">
  <img src="/images/chaospam-blocking.png" alt="ChaoSPAM - Call blocking" width="828" height="1792" loading="lazy" decoding="async" style="width:100%;height:auto;">
</picture>
<p>And that&rsquo;s it! From that moment on, you&rsquo;ll be protected from thousands of annoying numbers.</p>
<h2>Take Back Control Today<span class="hx:absolute hx:-mt-20" id="take-back-control-today"></span>
    <a href="#take-back-control-today" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>Today&rsquo;s launch is just the beginning. We&rsquo;re committed to keeping our spam number database constantly updated to stay one step ahead of new telemarketing tactics and scams.</p>
<p>We&rsquo;re so proud of what we&rsquo;ve built and can&rsquo;t wait for you to try it. We firmly believe that once you experience the peace of a spam-free phone, you won&rsquo;t want to go back.</p>
<p>Download ChaoSPAM now on the App Store and start enjoying the silence.</p>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px;">
  <a href="https://apps.apple.com/cl/app/chaospam/id6754167113" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.chaospam" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
]]></content>
  </entry>
  
  <entry>
    <title>¿Cuándo llega la micro? Track Your Bus in Real Time</title>
    <link href="https://elcsoft.cl/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/" rel="alternate" type="text/html"/>
    <id>https://elcsoft.cl/en/blog/apps/2025/09/01/bus-tracker-app-launch-santiago/</id>
    <published>2025-10-05T20:00:00Z</published>
    <updated>2026-05-03T20:50:54-04:00</updated>
    <summary type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? - Functions" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>How many times have you been at the bus stop, staring into the distance, wondering if your bus already passed or if it&rsquo;s still 20 minutes away? How many times have you started running just to see it turn the corner? We&rsquo;ve all experienced that uncertainty, and we believe that technology can and should make our lives simpler.</p>]]></summary>
    <content type="html"><![CDATA[<picture>
  <source srcset="/images/gpsred-functions.avif" type="image/avif">
  <img src="/images/gpsred-functions.png" alt="¿Cuándo llega la micro? - Functions" width="1024" height="500" fetchpriority="high" decoding="async" style="width:100%;height:auto;">
</picture>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
<br>
<p>How many times have you been at the bus stop, staring into the distance, wondering if your bus already passed or if it&rsquo;s still 20 minutes away? How many times have you started running just to see it turn the corner? We&rsquo;ve all experienced that uncertainty, and we believe that technology can and should make our lives simpler.</p>
<p>That&rsquo;s why, with great pride, we are officially launching our new application today: <strong>¿Cuándo llega la micro?</strong></p>
<p>Our mission is simple: we want to give you back control of your time and reduce the stress of getting around the city. We created an intuitive and powerful tool so you&rsquo;ll never have to guess about your transportation again.</p>
<h2>What is “¿Cuándo llega la micro?”?<span class="hx:absolute hx:-mt-20" id="what-is-cuándo-llega-la-micro"></span>
    <a href="#what-is-cu%c3%a1ndo-llega-la-micro" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>It&rsquo;s a free mobile application, available for Android, that shows you the exact location of public transportation buses on an interactive, real-time map. Just by opening the app, you can see where the buses on your routes of interest are, allowing you to plan your trips with a precision that was previously impossible.</p>
<h2>Key Features in Our Launch Version<span class="hx:absolute hx:-mt-20" id="key-features-in-our-launch-version"></span>
    <a href="#key-features-in-our-launch-version" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>We designed every feature with speed and ease of use in mind. In this first version, you will find:</p>
<ul>
<li><strong>Interactive Real-Time Map:</strong> Our <strong>bus tracker</strong> is the heart of the app. It uses GPS to show you the live location of the buses, so you know exactly how much longer you have to wait.</li>
<li><strong>Complete List of Routes:</strong> Need to explore other options? Access a list of all available <strong>bus routes</strong>. Finding your route has never been easier.</li>
<li><strong>Clear Identification:</strong> Each bus on the map displays its number and characteristic color, allowing you to identify your bus at a single glance.</li>
<li><strong>No More Direction Confusion:</strong> The app clearly indicates if the bus is on its <strong>outbound or return trip</strong>, a crucial feature to avoid taking the bus in the wrong direction.</li>
</ul>
<h2>More Than an App: A Better Way to Travel<span class="hx:absolute hx:-mt-20" id="more-than-an-app-a-better-way-to-travel"></span>
    <a href="#more-than-an-app-a-better-way-to-travel" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>At its core, “¿Cuándo llega la micro?” is more than just a <strong>bus GPS</strong>. It was born from our own experiences as users of <strong>public transport in Chile</strong>. We understand the need for reliable information to navigate cities like Santiago, Valparaíso, or Concepción. We want to transform those minutes of waiting and uncertainty into time you can use for yourself.</p>
<h2>This Is Just the Beginning!<span class="hx:absolute hx:-mt-20" id="this-is-just-the-beginning"></span>
    <a href="#this-is-just-the-beginning" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>We are incredibly proud of this first version, but we have big plans for the future. Our team is already working on the next updates, which will include:</p>
<ul>
<li>Saving your Favorite Routes and Stops.</li>
<li>Personalized notifications to let you know when to leave home.</li>
<li>More accurate arrival time estimates.</li>
</ul>
<h2>Your Feedback is Our Fuel<span class="hx:absolute hx:-mt-20" id="your-feedback-is-our-fuel"></span>
    <a href="#your-feedback-is-our-fuel" class="subheading-anchor" aria-label="Permalink for this section"></a></h2><p>We launched this app for you, and we want to build its future with you. Every download, comment, and suggestion helps us improve. If you have ideas or find something we can optimize, don&rsquo;t hesitate to contact us through the review section on the Play Store.</p>
<p>Are you ready to stop waiting and start planning?</p>
<br>
<div style="display: flex; justify-content: center; align-items: center; gap: 1rem; height: 50px;">
  <a href="https://apps.apple.com/cl/app/cuando-llega-la-micro/id6753151753" style="display: inline-block; height: 100%;">
    <img src="/images/Download_on_the_App_Store_Badge_US-UK_RGB_blk_092917.svg" alt="Download on the App Store" width="165" height="50" style="height: 100%; width: auto;">
  </a>
  <a href="https://play.google.com/store/apps/details?id=cl.elcsoft.gpsred.gpsred_app" style="display: inline-block; height: 100%;">
    <img src="/images/GetItOnGooglePlay_Badge_Web_color_English.png" alt="Get it on Google Play" width="270" height="80" style="height: 100%; width: auto;">
  </a>
</div>
]]></content>
  </entry>
  
</feed>
