<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Yousef Almotiri</title>
    <description>The latest articles on DEV Community by Yousef Almotiri (@talebaljenan).</description>
    <link>https://dev.to/talebaljenan</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4047789%2F18de3dba-6653-42af-ae37-bd8a560174b3.jpg</url>
      <title>DEV Community: Yousef Almotiri</title>
      <link>https://dev.to/talebaljenan</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/talebaljenan"/>
    <language>en</language>
    <item>
      <title>How to Find Subdomains of a Domain Using Public Data</title>
      <dc:creator>Yousef Almotiri</dc:creator>
      <pubDate>Wed, 12 Aug 2026 09:37:22 +0000</pubDate>
      <link>https://dev.to/talebaljenan/how-to-find-subdomains-of-a-domain-using-public-data-28km</link>
      <guid>https://dev.to/talebaljenan/how-to-find-subdomains-of-a-domain-using-public-data-28km</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4yg3skiqcm5rdcpl8ppp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4yg3skiqcm5rdcpl8ppp.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A single domain can have many services running behind it.&lt;/p&gt;

&lt;p&gt;When you visit:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;example.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;you might only see the main website. But the same domain could also have:&lt;/p&gt;

&lt;p&gt;blog.example.com&lt;br&gt;
api.example.com&lt;br&gt;
mail.example.com&lt;br&gt;
cpanel.example.com&lt;br&gt;
status.example.com&lt;/p&gt;

&lt;p&gt;These are called subdomains.&lt;/p&gt;

&lt;p&gt;Developers, website owners, system administrators, and security researchers often need to discover these subdomains to understand which services are publicly associated with a domain.&lt;/p&gt;

&lt;p&gt;The interesting part is that you don't always need to actively scan a server to find them.&lt;/p&gt;

&lt;p&gt;A large amount of this information can already be discovered through public sources such as Certificate Transparency logs and DNS records.&lt;/p&gt;

&lt;p&gt;Let's look at how this works.&lt;/p&gt;

&lt;p&gt;What Is a Subdomain?&lt;/p&gt;

&lt;p&gt;A subdomain is an additional hostname created under a primary domain.&lt;/p&gt;

&lt;p&gt;If the main domain is:&lt;/p&gt;

&lt;p&gt;example.com&lt;/p&gt;

&lt;p&gt;possible subdomains could include:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.example.com" rel="noopener noreferrer"&gt;www.example.com&lt;/a&gt;&lt;br&gt;
shop.example.com&lt;br&gt;
api.example.com&lt;br&gt;
support.example.com&lt;/p&gt;

&lt;p&gt;Organizations use subdomains to separate websites, applications, APIs, email systems, control panels, documentation, and other services.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;api.example.com&lt;/p&gt;

&lt;p&gt;might handle API requests, while:&lt;/p&gt;

&lt;p&gt;docs.example.com&lt;/p&gt;

&lt;p&gt;could host developer documentation.&lt;/p&gt;

&lt;p&gt;Both belong to the same root domain but may point to different servers or services.&lt;/p&gt;

&lt;p&gt;Why Would You Want to Find Subdomains?&lt;/p&gt;

&lt;p&gt;There are many practical reasons.&lt;/p&gt;

&lt;p&gt;If you manage a website, subdomain discovery can help you understand which hostnames are publicly visible.&lt;/p&gt;

&lt;p&gt;If you're a developer, it can help you identify APIs, documentation sites, dashboards, or development environments associated with a project.&lt;/p&gt;

&lt;p&gt;Security teams also use subdomain discovery during asset inventory and passive reconnaissance.&lt;/p&gt;

&lt;p&gt;You might discover hostnames such as:&lt;/p&gt;

&lt;p&gt;api.example.com&lt;br&gt;
dev.example.com&lt;br&gt;
staging.example.com&lt;br&gt;
mail.example.com&lt;br&gt;
cpanel.example.com&lt;/p&gt;

&lt;p&gt;Some may represent current services.&lt;/p&gt;

&lt;p&gt;Others may be older hostnames that still appear in public records.&lt;/p&gt;

&lt;p&gt;This makes subdomain discovery useful not only for finding services but also for understanding the public footprint of a domain.&lt;/p&gt;

&lt;p&gt;How Can Subdomains Be Discovered Without Scanning?&lt;/p&gt;

&lt;p&gt;One method is passive subdomain discovery.&lt;/p&gt;

&lt;p&gt;Instead of aggressively probing a target server, passive discovery relies on information already available from public sources.&lt;/p&gt;

&lt;p&gt;One particularly useful source is Certificate Transparency.&lt;/p&gt;

&lt;p&gt;Certificate Transparency logs contain information about publicly issued SSL/TLS certificates.&lt;/p&gt;

&lt;p&gt;Certificates frequently contain domain names.&lt;/p&gt;

&lt;p&gt;For example, if certificates were issued for:&lt;/p&gt;

&lt;p&gt;example.com&lt;br&gt;
api.example.com&lt;br&gt;
shop.example.com&lt;/p&gt;

&lt;p&gt;those hostnames may appear in Certificate Transparency records.&lt;/p&gt;

&lt;p&gt;This gives us a way to discover potential subdomains without guessing every possible hostname.&lt;/p&gt;

&lt;p&gt;What Are Certificate Transparency Logs?&lt;/p&gt;

&lt;p&gt;Certificate Transparency, often shortened to CT, is a public system designed to record SSL/TLS certificates.&lt;/p&gt;

&lt;p&gt;When Certificate Authorities issue certificates, certificate information can be submitted to publicly accessible CT logs.&lt;/p&gt;

&lt;p&gt;These records help make certificate issuance more transparent.&lt;/p&gt;

&lt;p&gt;They also happen to provide a useful source of domain information.&lt;/p&gt;

&lt;p&gt;Suppose an organization previously obtained certificates containing:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.example.com" rel="noopener noreferrer"&gt;www.example.com&lt;/a&gt;&lt;br&gt;
api.example.com&lt;br&gt;
dashboard.example.com&lt;/p&gt;

&lt;p&gt;Searching Certificate Transparency data may reveal those hostnames.&lt;/p&gt;

&lt;p&gt;This is why CT logs have become a useful source for subdomain discovery.&lt;/p&gt;

&lt;p&gt;A Simple Subdomain Discovery Process&lt;/p&gt;

&lt;p&gt;A basic passive discovery workflow can be represented like this:&lt;/p&gt;

&lt;p&gt;Domain&lt;br&gt;
  ↓&lt;br&gt;
Search public records&lt;br&gt;
  ↓&lt;br&gt;
Discover possible subdomains&lt;br&gt;
  ↓&lt;br&gt;
Remove duplicate entries&lt;br&gt;
  ↓&lt;br&gt;
Resolve DNS records&lt;br&gt;
  ↓&lt;br&gt;
Display hostname and IP address&lt;/p&gt;

&lt;p&gt;For example, you might start with:&lt;/p&gt;

&lt;p&gt;example.com&lt;/p&gt;

&lt;p&gt;and discover:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.example.com" rel="noopener noreferrer"&gt;www.example.com&lt;/a&gt;&lt;br&gt;
mail.example.com&lt;br&gt;
api.example.com&lt;br&gt;
cpanel.example.com&lt;/p&gt;

&lt;p&gt;The next step is checking whether these hostnames currently resolve through DNS.&lt;/p&gt;

&lt;p&gt;The result might look like:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.example.com" rel="noopener noreferrer"&gt;www.example.com&lt;/a&gt;       203.0.113.10&lt;br&gt;
mail.example.com      203.0.113.20&lt;br&gt;
api.example.com       203.0.113.10&lt;br&gt;
cpanel.example.com    203.0.113.10&lt;/p&gt;

&lt;p&gt;Now you have more than a list of names.&lt;/p&gt;

&lt;p&gt;You can also see which IP addresses are associated with them.&lt;/p&gt;

&lt;p&gt;Why Do Multiple Subdomains Have the Same IP Address?&lt;/p&gt;

&lt;p&gt;This is common.&lt;/p&gt;

&lt;p&gt;You might find results such as:&lt;/p&gt;

&lt;p&gt;api.example.com       203.0.113.10&lt;br&gt;
cpanel.example.com    203.0.113.10&lt;br&gt;
mail.example.com      203.0.113.10&lt;/p&gt;

&lt;p&gt;This does not necessarily indicate a problem.&lt;/p&gt;

&lt;p&gt;Multiple hostnames can point to the same server.&lt;/p&gt;

&lt;p&gt;This frequently happens with shared hosting, control panel services, reverse proxies, and other hosting configurations.&lt;/p&gt;

&lt;p&gt;A single server can respond differently depending on which hostname was requested.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;blog.example.com&lt;/p&gt;

&lt;p&gt;and:&lt;/p&gt;

&lt;p&gt;shop.example.com&lt;/p&gt;

&lt;p&gt;could both resolve to the same IP while serving completely different websites.&lt;/p&gt;

&lt;p&gt;So when analyzing subdomains, the hostname itself is just as important as the IP address.&lt;/p&gt;

&lt;p&gt;Trying Subdomain Discovery in Your Browser&lt;/p&gt;

&lt;p&gt;You can query public sources manually, process the results, remove duplicate hostnames, and perform DNS lookups yourself.&lt;/p&gt;

&lt;p&gt;For a faster way to experiment with the process, you can use this browser-based &lt;a href="https://mwp6.com/tool/subdomain-finder" rel="noopener noreferrer"&gt;Subdomain Finder&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Enter a root domain such as:&lt;/p&gt;

&lt;p&gt;github.com&lt;/p&gt;

&lt;p&gt;The tool searches publicly available sources for known subdomains and attempts to resolve their IP addresses.&lt;/p&gt;

&lt;p&gt;The results show information such as:&lt;/p&gt;

&lt;p&gt;Subdomain                     IP Address&lt;/p&gt;

&lt;p&gt;subdomain.example.com         203.0.113.10&lt;br&gt;
another.example.com           203.0.113.20&lt;/p&gt;

&lt;p&gt;This makes it easy to see the relationship between discovered hostnames and their DNS resolution without manually processing the records.&lt;/p&gt;

&lt;p&gt;How to Read the Results&lt;/p&gt;

&lt;p&gt;There are two main pieces of information to pay attention to.&lt;/p&gt;

&lt;p&gt;Subdomain&lt;/p&gt;

&lt;p&gt;This is the hostname discovered from public records.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;api.example.com&lt;/p&gt;

&lt;p&gt;The name itself may provide clues about the purpose of the service.&lt;/p&gt;

&lt;p&gt;Common examples include:&lt;/p&gt;

&lt;p&gt;api.&lt;br&gt;
mail.&lt;br&gt;
blog.&lt;br&gt;
docs.&lt;br&gt;
status.&lt;br&gt;
support.&lt;br&gt;
dev.&lt;br&gt;
staging.&lt;/p&gt;

&lt;p&gt;However, names should not be treated as proof of what a service actually does.&lt;/p&gt;

&lt;p&gt;A hostname called &lt;code&gt;dev.example.com&lt;/code&gt;, for example, does not guarantee that it currently hosts a development environment.&lt;/p&gt;

&lt;p&gt;IP Address&lt;/p&gt;

&lt;p&gt;If DNS resolution succeeds, you may also see an IP address.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;p&gt;api.example.com → 203.0.113.15&lt;/p&gt;

&lt;p&gt;This means the hostname currently resolves to that address through the DNS information available at the time of the lookup.&lt;/p&gt;

&lt;p&gt;It does not necessarily mean that a website is running directly on that server.&lt;/p&gt;

&lt;p&gt;The address could belong to a CDN, reverse proxy, load balancer, hosting provider, or another layer of infrastructure.&lt;/p&gt;

&lt;p&gt;Why Do Some Discovered Subdomains No Longer Work?&lt;/p&gt;

&lt;p&gt;Public records can contain historical information.&lt;/p&gt;

&lt;p&gt;Imagine that an organization used:&lt;/p&gt;

&lt;p&gt;old.example.com&lt;/p&gt;

&lt;p&gt;two years ago.&lt;/p&gt;

&lt;p&gt;An SSL certificate was issued for it, causing the hostname to appear in Certificate Transparency records.&lt;/p&gt;

&lt;p&gt;Later, the organization removed the DNS record.&lt;/p&gt;

&lt;p&gt;The historical certificate record can still exist.&lt;/p&gt;

&lt;p&gt;Therefore:&lt;/p&gt;

&lt;p&gt;Discovered subdomain ≠ active service&lt;/p&gt;

&lt;p&gt;This distinction matters when interpreting the results.&lt;/p&gt;

&lt;p&gt;Subdomain discovery tells you what public data reveals about a domain. It does not guarantee that every discovered hostname is currently operational.&lt;/p&gt;

&lt;p&gt;What About Wildcard Certificates?&lt;/p&gt;

&lt;p&gt;You may occasionally encounter records such as:&lt;/p&gt;

&lt;p&gt;*.example.com&lt;/p&gt;

&lt;p&gt;This is a wildcard certificate.&lt;/p&gt;

&lt;p&gt;It can cover multiple subdomains under the same domain.&lt;/p&gt;

&lt;p&gt;It does not mean that every possible subdomain exists.&lt;/p&gt;

&lt;p&gt;For example, seeing:&lt;/p&gt;

&lt;p&gt;*.example.com&lt;/p&gt;

&lt;p&gt;does not prove that:&lt;/p&gt;

&lt;p&gt;random.example.com&lt;/p&gt;

&lt;p&gt;is a real service.&lt;/p&gt;

&lt;p&gt;Wildcard records therefore need to be interpreted differently from explicitly listed hostnames.&lt;/p&gt;

&lt;p&gt;Exporting Subdomain Results to CSV&lt;/p&gt;

&lt;p&gt;When a domain has many discovered subdomains, reviewing everything directly in a browser becomes less convenient.&lt;/p&gt;

&lt;p&gt;Exporting the results as CSV solves this problem.&lt;/p&gt;

&lt;p&gt;A CSV file can contain data such as:&lt;/p&gt;

&lt;p&gt;Subdomain,IP Address&lt;br&gt;
api.example.com,203.0.113.10&lt;br&gt;
mail.example.com,203.0.113.20&lt;br&gt;
blog.example.com,203.0.113.30&lt;/p&gt;

&lt;p&gt;You can then open the file in spreadsheet software or process it using your preferred development tools.&lt;/p&gt;

&lt;p&gt;This is useful when you need to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Keep an inventory of discovered hostnames&lt;/li&gt;
&lt;li&gt;Compare results from different dates&lt;/li&gt;
&lt;li&gt;Sort subdomains by IP address&lt;/li&gt;
&lt;li&gt;Search large result sets&lt;/li&gt;
&lt;li&gt;Include findings in technical documentation&lt;/li&gt;
&lt;li&gt;Review infrastructure associated with your own domains&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Are Public Records Enough to Find Every Subdomain?&lt;/p&gt;

&lt;p&gt;No.&lt;/p&gt;

&lt;p&gt;This is one of the most important limitations to understand.&lt;/p&gt;

&lt;p&gt;Passive discovery only finds information available through the public data sources being searched.&lt;/p&gt;

&lt;p&gt;Consider:&lt;/p&gt;

&lt;p&gt;internal.example.com&lt;/p&gt;

&lt;p&gt;If this hostname is only used inside a private network and has never appeared in public certificate records, it may not be discovered.&lt;/p&gt;

&lt;p&gt;Some subdomains may also use configurations that prevent them from appearing in the available datasets.&lt;/p&gt;

&lt;p&gt;This means the result should not be treated as a complete list of every subdomain belonging to an organization.&lt;/p&gt;

&lt;p&gt;It is better to think of it as:&lt;/p&gt;

&lt;p&gt;Publicly discoverable subdomains&lt;/p&gt;

&lt;p&gt;rather than:&lt;/p&gt;

&lt;p&gt;All existing subdomains&lt;/p&gt;

&lt;p&gt;When Is Subdomain Discovery Useful?&lt;/p&gt;

&lt;p&gt;For website owners, it can reveal public hostnames associated with their domains.&lt;/p&gt;

&lt;p&gt;For developers, it can help map services associated with an application or organization.&lt;/p&gt;

&lt;p&gt;For system administrators, it provides another way to review internet-facing assets.&lt;/p&gt;

&lt;p&gt;For security professionals, it can serve as an early passive reconnaissance step during authorized assessments.&lt;/p&gt;

&lt;p&gt;It can also help identify forgotten infrastructure.&lt;/p&gt;

&lt;p&gt;For example, if your current documentation contains:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.example.com" rel="noopener noreferrer"&gt;www.example.com&lt;/a&gt;&lt;br&gt;
api.example.com&lt;/p&gt;

&lt;p&gt;but public records also reveal:&lt;/p&gt;

&lt;p&gt;staging.example.com&lt;br&gt;
old-api.example.com&lt;/p&gt;

&lt;p&gt;you now have two additional assets worth investigating internally.&lt;/p&gt;

&lt;p&gt;The Most Important Part Is Interpreting the Data&lt;/p&gt;

&lt;p&gt;Finding a long list of subdomains is easy.&lt;/p&gt;

&lt;p&gt;Understanding what the results actually mean is more important.&lt;/p&gt;

&lt;p&gt;Keep these distinctions in mind:&lt;/p&gt;

&lt;p&gt;Found in public records&lt;br&gt;
        ≠&lt;br&gt;
Currently active&lt;/p&gt;

&lt;p&gt;Resolves to an IP&lt;br&gt;
        ≠&lt;br&gt;
Web application is running&lt;/p&gt;

&lt;p&gt;Same IP address&lt;br&gt;
        ≠&lt;br&gt;
Same application&lt;/p&gt;

&lt;p&gt;No result&lt;br&gt;
        ≠&lt;br&gt;
No subdomain exists&lt;/p&gt;

&lt;p&gt;Each result gives you one piece of information about the public footprint of a domain.&lt;/p&gt;

&lt;p&gt;Final Thoughts&lt;/p&gt;

&lt;p&gt;Subdomain discovery is a useful technique for understanding how websites and online services are organized.&lt;/p&gt;

&lt;p&gt;Certificate Transparency logs make this particularly interesting because they provide a public source of hostnames that have appeared in SSL/TLS certificates.&lt;/p&gt;

&lt;p&gt;By combining those records with DNS resolution, you can turn a simple domain name into a more useful view of its publicly discoverable services.&lt;/p&gt;

&lt;p&gt;The basic process is straightforward:&lt;/p&gt;

&lt;p&gt;Enter domain&lt;br&gt;
     ↓&lt;br&gt;
Discover subdomains&lt;br&gt;
     ↓&lt;br&gt;
Resolve IP addresses&lt;br&gt;
     ↓&lt;br&gt;
Review results&lt;br&gt;
     ↓&lt;br&gt;
Export if needed&lt;/p&gt;

&lt;p&gt;Just remember that passive discovery provides visibility into public data, not a guaranteed inventory of every system behind a domain.&lt;/p&gt;

&lt;p&gt;That distinction is what makes the results useful rather than misleading.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Stop Guessing Why Your Website Isn't Ranking: Learn to Read an SEO Audit</title>
      <dc:creator>Yousef Almotiri</dc:creator>
      <pubDate>Thu, 30 Jul 2026 03:20:18 +0000</pubDate>
      <link>https://dev.to/talebaljenan/stop-guessing-why-your-website-isnt-ranking-learn-to-read-an-seo-audit-49lh</link>
      <guid>https://dev.to/talebaljenan/stop-guessing-why-your-website-isnt-ranking-learn-to-read-an-seo-audit-49lh</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9s6c7v08fhyl6qyq4zir.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9s6c7v08fhyl6qyq4zir.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Search engine optimization often feels overwhelming because most website owners focus on content and keywords while ignoring the technical issues that search engines see first.&lt;/p&gt;

&lt;p&gt;You might publish great articles every week, yet your traffic barely changes. In many cases, the problem isn't the content itself. It's hidden inside the structure of the website.&lt;/p&gt;

&lt;p&gt;This is where an SEO analyzer becomes useful.&lt;/p&gt;

&lt;p&gt;Instead of manually checking dozens of technical elements, an analyzer scans a page and produces a report that highlights problems affecting search visibility. It gives you a starting point before making any optimization decisions.&lt;/p&gt;

&lt;p&gt;Whether you run a personal blog, an online store, a SaaS product, or a company website, understanding an SEO report can save hours of investigation and help you prioritize improvements that actually matter.&lt;/p&gt;

&lt;p&gt;What Does an SEO Analyzer Check?&lt;/p&gt;

&lt;p&gt;A modern SEO audit usually examines multiple categories rather than focusing on a single score.&lt;/p&gt;

&lt;p&gt;Typical reports include information such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Overall SEO score&lt;/li&gt;
&lt;li&gt;Page loading performance&lt;/li&gt;
&lt;li&gt;Page size&lt;/li&gt;
&lt;li&gt;HTML version&lt;/li&gt;
&lt;li&gt;Document encoding&lt;/li&gt;
&lt;li&gt;Title tag&lt;/li&gt;
&lt;li&gt;Meta description&lt;/li&gt;
&lt;li&gt;Heading structure&lt;/li&gt;
&lt;li&gt;Image ALT attributes&lt;/li&gt;
&lt;li&gt;Internal and external links&lt;/li&gt;
&lt;li&gt;Canonical tag&lt;/li&gt;
&lt;li&gt;Robots directives&lt;/li&gt;
&lt;li&gt;Open Graph and social tags&lt;/li&gt;
&lt;li&gt;Structured metadata&lt;/li&gt;
&lt;li&gt;Google Analytics detection&lt;/li&gt;
&lt;li&gt;Deprecated HTML elements&lt;/li&gt;
&lt;li&gt;Embedded objects&lt;/li&gt;
&lt;li&gt;Viewport configuration&lt;/li&gt;
&lt;li&gt;Text-to-HTML ratio&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Looking at these factors together provides a much clearer picture than checking only keywords or backlinks.&lt;/p&gt;

&lt;p&gt;Why Individual Metrics Matter&lt;/p&gt;

&lt;p&gt;Many beginners pay attention only to the overall score.&lt;/p&gt;

&lt;p&gt;That score is useful, but the detailed metrics explain &lt;em&gt;why&lt;/em&gt; the score looks the way it does.&lt;/p&gt;

&lt;p&gt;Page Speed&lt;/p&gt;

&lt;p&gt;Slow pages increase bounce rates and reduce user satisfaction.&lt;/p&gt;

&lt;p&gt;Even small improvements in loading time can improve both user experience and search performance. Google also considers page experience among many ranking signals. ([Google for Developers][1])&lt;/p&gt;

&lt;p&gt;Title Tag&lt;/p&gt;

&lt;p&gt;The title tag tells search engines what the page is about.&lt;/p&gt;

&lt;p&gt;A missing, duplicated, or vague title makes it harder for search engines to understand the page's primary topic.&lt;/p&gt;

&lt;p&gt;Meta Description&lt;/p&gt;

&lt;p&gt;Although meta descriptions are not a direct ranking factor, they influence click-through rates because they appear in search results.&lt;/p&gt;

&lt;p&gt;A clear and relevant description encourages more users to visit your page. Google recommends unique, useful meta descriptions for pages. ([Google for Developers][1])&lt;/p&gt;

&lt;p&gt;Heading Structure&lt;/p&gt;

&lt;p&gt;Proper use of H1, H2, and H3 headings improves readability for both users and search engines.&lt;/p&gt;

&lt;p&gt;A logical hierarchy also makes large articles easier to scan.&lt;/p&gt;

&lt;p&gt;Image ALT Attributes&lt;/p&gt;

&lt;p&gt;Search engines cannot understand images the way humans do.&lt;/p&gt;

&lt;p&gt;Alternative text helps describe images, improves accessibility, and can increase visibility in image search.&lt;/p&gt;

&lt;p&gt;Canonical Tag&lt;/p&gt;

&lt;p&gt;Duplicate content is common across many websites.&lt;/p&gt;

&lt;p&gt;Canonical tags tell search engines which version should be treated as the primary page.&lt;/p&gt;

&lt;p&gt;Mobile Viewport&lt;/p&gt;

&lt;p&gt;Most visitors browse from mobile devices.&lt;/p&gt;

&lt;p&gt;Without proper viewport settings, pages may display poorly and create usability issues.&lt;/p&gt;

&lt;p&gt;How to Use an SEO Report Effectively&lt;/p&gt;

&lt;p&gt;A report should not be treated as a checklist where every warning deserves equal attention.&lt;/p&gt;

&lt;p&gt;A practical workflow looks like this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Fix critical technical errors first.&lt;/li&gt;
&lt;li&gt;Improve page titles and descriptions.&lt;/li&gt;
&lt;li&gt;Resolve missing headings and image ALT text.&lt;/li&gt;
&lt;li&gt;Optimize page performance.&lt;/li&gt;
&lt;li&gt;Repeat the audit after publishing updates.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Running another scan after each optimization cycle makes it easier to measure progress instead of relying on assumptions.&lt;/p&gt;

&lt;p&gt;Common Mistakes People Miss&lt;/p&gt;

&lt;p&gt;Many websites share similar technical issues.&lt;/p&gt;

&lt;p&gt;Some of the most frequent include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Missing H1 tags&lt;/li&gt;
&lt;li&gt;Duplicate page titles&lt;/li&gt;
&lt;li&gt;Empty meta descriptions&lt;/li&gt;
&lt;li&gt;Oversized images&lt;/li&gt;
&lt;li&gt;Broken internal links&lt;/li&gt;
&lt;li&gt;Missing canonical tags&lt;/li&gt;
&lt;li&gt;Missing Open Graph metadata&lt;/li&gt;
&lt;li&gt;Low text-to-HTML ratio&lt;/li&gt;
&lt;li&gt;Large page size caused by unnecessary scripts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of these problems may seem catastrophic individually, but together they can significantly reduce overall website quality.&lt;/p&gt;

&lt;p&gt;SEO Is Continuous, Not One-Time&lt;/p&gt;

&lt;p&gt;One of the biggest misconceptions is that SEO ends after publishing a page.&lt;/p&gt;

&lt;p&gt;Every plugin update, theme change, content edit, or new JavaScript library can introduce new issues.&lt;/p&gt;

&lt;p&gt;For that reason, experienced developers and SEO professionals perform technical audits regularly instead of waiting until rankings decline.&lt;/p&gt;

&lt;p&gt;Try an SEO Audit Yourself&lt;/p&gt;

&lt;p&gt;If you'd like to inspect your own website and see which technical elements need attention, you can run a free analysis using this tool:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://mwp6.com/tool/seo-analyzer" rel="noopener noreferrer"&gt;https://mwp6.com/tool/seo-analyzer&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The report provides an overall SEO score along with detailed checks for page structure, metadata, performance, headings, links, images, and other technical factors that influence search visibility.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Why More Developers Are Replacing GIFs with APNG</title>
      <dc:creator>Yousef Almotiri</dc:creator>
      <pubDate>Sun, 26 Jul 2026 10:49:29 +0000</pubDate>
      <link>https://dev.to/talebaljenan/why-more-developers-are-replacing-gifs-with-apng-2mf7</link>
      <guid>https://dev.to/talebaljenan/why-more-developers-are-replacing-gifs-with-apng-2mf7</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fu7ja1dpibg68me1xdazo.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fu7ja1dpibg68me1xdazo.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For years, GIF has been the go-to format for short animations on the web. Whether it's a loading animation, a UI demo, or a reaction image, GIF has been the default choice simply because everyone supports it.&lt;/p&gt;

&lt;p&gt;But if you've ever converted a video to GIF and noticed dull colors, rough gradients, or jagged transparent edges, you've already experienced the biggest limitations of the format.&lt;/p&gt;

&lt;p&gt;That's why more developers and designers are switching to APNG.&lt;/p&gt;

&lt;p&gt;What Exactly Is APNG?&lt;/p&gt;

&lt;p&gt;APNG stands for &lt;strong&gt;Animated Portable Network Graphics&lt;/strong&gt;. Think of it as a PNG image that can play multiple frames as an animation.&lt;/p&gt;

&lt;p&gt;The biggest advantage is that APNG keeps everything people already love about PNG:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;High image quality&lt;/li&gt;
&lt;li&gt;Millions of colors&lt;/li&gt;
&lt;li&gt;Alpha transparency&lt;/li&gt;
&lt;li&gt;Sharp edges&lt;/li&gt;
&lt;li&gt;Lossless compression&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of reducing your animation to only 256 colors like GIF, APNG preserves the original quality much more accurately.&lt;/p&gt;

&lt;p&gt;Why GIF Isn't Always the Best Choice&lt;/p&gt;

&lt;p&gt;GIF is more than 35 years old, and while it's still useful, it comes with several technical limitations.&lt;/p&gt;

&lt;p&gt;The most noticeable one is color depth.&lt;/p&gt;

&lt;p&gt;Because GIF supports only 256 colors, videos often look washed out after conversion. Gradients become banded, shadows lose detail, and smooth transitions become noisy.&lt;/p&gt;

&lt;p&gt;Transparency is another issue. GIF only supports simple transparent pixels, while APNG supports full alpha transparency, allowing soft edges, shadows, and semi-transparent elements.&lt;/p&gt;

&lt;p&gt;If you're creating animations for a modern website or web application, these differences become very noticeable.&lt;/p&gt;

&lt;p&gt;Where APNG Makes the Biggest Difference&lt;/p&gt;

&lt;p&gt;APNG isn't meant to replace every GIF, but there are many situations where it produces much better results.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Animated UI components&lt;/li&gt;
&lt;li&gt;Product demonstrations&lt;/li&gt;
&lt;li&gt;Website illustrations&lt;/li&gt;
&lt;li&gt;Animated icons&lt;/li&gt;
&lt;li&gt;App previews&lt;/li&gt;
&lt;li&gt;Loading animations&lt;/li&gt;
&lt;li&gt;Transparent stickers&lt;/li&gt;
&lt;li&gt;Interface tutorials&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In these cases, maintaining image quality is often more important than maximum compatibility.&lt;/p&gt;

&lt;p&gt;Converting Video Instead of Recording Frame by Frame&lt;/p&gt;

&lt;p&gt;One workflow that has become increasingly popular is creating animations directly from short videos.&lt;/p&gt;

&lt;p&gt;Instead of exporting a GIF from video editing software, developers simply:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Record a short screen capture.&lt;/li&gt;
&lt;li&gt;Trim the exact section they need.&lt;/li&gt;
&lt;li&gt;Convert it into an APNG.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This approach is much faster, especially for documenting user interfaces, showcasing features, or creating tutorials.&lt;/p&gt;

&lt;p&gt;Keep Animations Short&lt;/p&gt;

&lt;p&gt;One mistake people often make is converting long videos into animated images.&lt;/p&gt;

&lt;p&gt;Short animations usually work much better.&lt;/p&gt;

&lt;p&gt;A 3–6 second clip is often enough to demonstrate a feature while keeping the file size reasonable.&lt;/p&gt;

&lt;p&gt;Trimming the beginning and end of the video before exporting also helps remove unnecessary frames.&lt;/p&gt;

&lt;p&gt;When Should You Still Use GIF?&lt;/p&gt;

&lt;p&gt;GIF still has its place.&lt;/p&gt;

&lt;p&gt;If you need compatibility with very old software or messaging platforms that don't support APNG, GIF remains a safe choice.&lt;/p&gt;

&lt;p&gt;However, for websites, documentation, portfolios, SaaS products, and modern web applications, APNG is often the better option because it delivers noticeably higher visual quality.&lt;/p&gt;

&lt;p&gt;A Simple Way to Convert Video to APNG&lt;/p&gt;

&lt;p&gt;If you don't want to install desktop software, there are online tools that let you upload a video, trim the exact section you need, preview the animation, and export it as an APNG directly from your browser.&lt;/p&gt;

&lt;p&gt;I've been using this one recently because it includes a simple trimming interface before conversion:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://mwp6.com/tool/video-to-apng" rel="noopener noreferrer"&gt;https://mwp6.com/tool/video-to-apng&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Final Thoughts&lt;/p&gt;

&lt;p&gt;As browsers and web technologies continue to improve, older formats like GIF are becoming less attractive for many use cases.&lt;/p&gt;

&lt;p&gt;If image quality, transparency, and professional-looking animations matter in your projects, APNG is definitely worth adding to your workflow. It takes only a few extra seconds to convert, but the difference in visual quality is often immediately noticeable.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
