Ask an AI assistant to audit your website and you will usually get a confident list: add meta descriptions, compress images, set up DMARC, review your security headers. Some of it will be right. Some of it will describe a site the assistant never actually inspected, because a language model that cannot query DNS, open a TLS connection or read real-user performance data fills the gaps with what websites usually get wrong.
An AI website audit works when each side does what it is good at: structured checks collect evidence from the live site, and the agent reads that evidence, explains it, puts it in order and hands precise fixes to a coding agent. This guide covers what an AI website audit is, what an agent can and cannot do on its own, a checklist for each of the six areas, a step-by-step workflow over MCP, how to judge any AI website audit tool, and the pitfalls that turn a quick audit into wasted work. All domains and findings below are examples.
Scope of this guide
Sitelemetry's hosted audits observe the target without changing it and run active security checks only on verified targets. SEO, AI visibility, accessibility and integrations checks read static HTML without running JavaScript. It is not a penetration test or a full manual accessibility review.
1. What an AI website audit is
A website audit checks how a site is built, delivered and connected: whether it is protected, whether search engines and AI systems can read it, whether people can use it, how fast it is, and which third-party services it loads. An AI website audit adds an AI agent to that work. The agent starts the checks, reads the results, explains them in plain language, decides with you what to fix first and writes the change request for the person or coding agent who will make the fix.
Three quite different things are described with the same words:
| Approach | How it works | Good for | Main limit |
|---|---|---|---|
| A chat assistant on its own | The model reads the pages it can fetch, or what you paste, and answers from general knowledge | Explaining concepts, reviewing copy, brainstorming | No DNS, TLS, header or field-data access unless a tool provides it; findings can be plausible but unchecked |
| A scanner with an AI summary | A scanner runs fixed checks and a model summarizes the report | Repeatable checks and a readable overview | The summary is only as good as the checks, and turning findings into work is still manual |
| An agent connected to audit tools | The agent calls audit tools over a protocol such as MCP, receives structured findings with evidence, and works with you or a coding agent on the fix | The whole loop: audit, prioritize, fix, re-audit | Needs an authorized connection, a clear scope and a person approving changes |
This guide is about the third approach, because it is where AI saves real time while every finding stays tied to evidence you can check. The checks stay repeatable; the agent adds judgment, context and the hand-off to the people and tools that ship changes. If MCP is new to you, the guide to MCP explains hosts, clients, servers and tools in plain terms.
2. What an AI agent can and cannot do on its own
A language model is very good at reading, summarizing and writing. It is not a network tool. Unless the application gives it a tool for the job, it cannot see what a browser or a crawler sees below the visible page. The table compares an agent working alone, with at most a web browsing tool, against the same agent working from structured checks.
Coding agents with a terminal, such as Claude Code, Codex or Cursor, can also run curl, dig or openssl themselves. That helps to confirm one finding, but the agent chooses commands as it goes: coverage depends on what it thinks to check, results vary between runs, and nothing limits its probes to domains you have verified.
| Question | Agent alone (browsing, general knowledge, ad-hoc commands) | Agent with structured checks |
|---|---|---|
| Is the TLS certificate valid, and when does it expire? | Cannot inspect the TLS handshake; may assume all is well because the page loaded | Reads the chain, the expiry date and the negotiated protocol |
| Which security headers does the server send? | Browsing tools usually return page text, not response headers | Lists each header and its value as observed |
| Are SPF and DMARC set up? | Cannot query DNS; may guess from what is common | Quotes the published TXT records |
Are files such as /.env or /.git/ exposed? | Should not probe paths nobody asked it to, and usually does not try | Requests known sensitive paths on a target you have verified and reports the status codes |
| How fast is the page for real visitors? | Has no field data; may quote typical numbers | Reads field data for LCP, INP and CLS where available, plus lab results in which Total Blocking Time stands in for INP |
| Which queries bring clicks from Google? | Has no access to your Search Console property | Reads clicks, impressions, CTR and position through an authorized connection |
| Do images have alt text and do form fields have labels? | Can spot obvious gaps in the page it read, but may skip elements or misread markup | Checks the images and form fields in the HTML it reads and reports how many fail, with examples |
| Will the answer be the same tomorrow? | Wording and conclusions vary between runs | Same check, same target, comparable result |
The risk in the middle column has a name. The OWASP list of risks for LLM applications describes misinformation as false or misleading output that appears credible, with hallucination as one of the major causes, and made worse when people trust it without verifying. In an audit it looks like “your DMARC policy is set to none” for a domain whose record the model never read, or a missing header that the server actually sends.
A second risk comes from the pages themselves. An agent that reads a website reads untrusted text, and a page can carry instructions aimed at the model, sometimes hidden from human visitors. OWASP calls this indirect prompt injection. A careful audit setup treats page content as data to report on, never as instructions, and keeps a person approving any action the agent takes.
What the agent does well is everything around the evidence: explaining what a finding means for this particular site, grouping related findings, asking about context the checks cannot know (is that old staging subdomain still in use?) and writing a fix request precise enough for a coding agent. That division of labor is the core of a good AI website audit.
3. The six areas to cover, with a checklist for each
A thorough website audit looks at six layers. Each answers a different question and produces a different kind of evidence. The website audit guide follows one customer journey through all six; here is the working checklist.
| Area | Question | Evidence to expect |
|---|---|---|
| Security | Are the site and its domain protected against common, visible weaknesses? | Certificate details, header values, DNS records, status codes of sensitive paths |
| Technical SEO | Can search engines crawl, understand and index the right pages? | robots.txt rules, titles, canonicals, redirect chains, Search Console metrics |
| AI visibility readiness | Can AI systems reach, understand and quote your pages? | AI crawler rules, llms.txt, entity facts, direct answers to real questions |
| Accessibility | Can people who use assistive technology use the page? | Elements missing alt text, labels, names or a language |
| Performance | How fast does the page load and respond for real visitors? | LCP, INP and CLS from field data, plus lab metrics such as LCP, CLS and Total Blocking Time to find the cause |
| Integrations | Which third-party services load, and what do they receive? | Detected tags, pixels, consent tools and data-layer values |
Security
- HTTPS and TLS: a trusted certificate chain, no expiry within the next few weeks, TLS 1.2 or 1.3, and HTTP redirecting to HTTPS.
- Security headers: Strict-Transport-Security, Content-Security-Policy, X-Content-Type-Options, framing protection and a Referrer-Policy on HTML responses.
- CORS: no
Access-Control-Allow-Origin: *on responses that carry private data, and no reflected origins combined with credentials. - DNS and email DNS: valid SPF and DMARC records for every domain that sends mail, and restrictive ones (
v=spf1 -all,p=reject) for domains that never send mail. - Exposed files and secrets: nothing reachable at paths such as
/.env,/.git/or old backups, and no API keys in front-end JavaScript. - Subdomains: no DNS records pointing at deleted cloud resources that someone else could claim (subdomain takeover).
- Attack surface: only the open ports and HTTP methods you intend, sign-in and admin pages you know about, and an up-to-date CMS and plugins if you run WordPress.
- Supply chain: third-party scripts loaded only from sources you chose.
Some of these checks only read public information. Others, such as requesting sensitive paths or scanning ports, send requests the owner should agree to, which is why an audit tool should run them only on targets whose ownership you have verified. The website security audit guide covers the application side: accounts, permissions and sign-in.
Technical SEO
- Crawlability: robots.txt does not block pages or resources you want indexed.
- Indexation: no stray
noindexon important pages, and a sitemap that lists the canonical URLs. - Titles and meta descriptions: present, unique and describing the page.
- Headings: one clear main heading and a logical outline.
- Canonicals: each page points to its preferred URL, never to a redirect or an error page.
- Structured data: valid JSON-LD that matches the visible content.
- Internal links and redirects: important pages reachable from navigation or content, and no chains of several redirects.
- Search Console data: pages with many impressions but a low click-through rate, and queries where you rank just below the top results. These are often the quickest wins.
One limit matters here. Google renders JavaScript before it indexes a page, but its JavaScript SEO basics still recommend server-side rendering or pre-rendering, partly because some bots cannot run JavaScript. An audit that reads static HTML sees the page the way those bots do; on a site that builds its content in the browser, compare its findings with the rendered page. The technical SEO audit guide goes deeper.
AI visibility readiness
- AI crawler policy: the robots.txt rules for each AI crawler match what you decided, not a plugin default nobody chose. Several providers document separate tokens for their search and training crawlers; Google, for example, describes Google-Extended alongside its search crawlers.
- llms.txt: optional. A short Markdown index of your most useful pages, worth adding mainly on documentation-heavy sites; the llms.txt guide explains what it does and does not do.
- Entity clarity: the same business name, description, location and contact details everywhere, backed by Organization structured data.
- Answerability: pages that answer real customer questions directly, near the top, in text rather than images.
- Prompt coverage: a list of the questions buyers ask an assistant and, for each one, the page on your site that answers it.
- Source signals: a named author or organization, dates and citations that make a page easy to quote and attribute.
These are readiness checks on your own content. They do not show whether any assistant cites you today; that needs a separate log of questions and answers. Google states that its AI features have no additional requirements beyond normal Search eligibility, so crawl access and clear content come first. The AI visibility audit guide shows how to build the question set.
Accessibility
- Text alternatives: every informative image has meaningful alt text, and decorative images have an empty one.
- Forms: every field has a programmatic label, not just placeholder text.
- Structure: headings in order, landmarks such as
mainandnav, and a skip link. - Names: every button and link has an accessible name, and there are no empty links.
- Language: the page declares its language with the
langattribute. - Manual checks: keyboard-only use, visible focus, color contrast, zoom and reflow, and a pass with a screen reader.
The W3C is explicit that tools cannot check all accessibility aspects automatically and that human judgment is required. An automated check finds the missing label; only a person can tell whether the label makes sense. The accessibility audit guide describes the manual pass against WCAG 2.2.
Performance
- Core Web Vitals: Largest Contentful Paint within 2.5 seconds, Interaction to Next Paint within 200 milliseconds and Cumulative Layout Shift of 0.1 or less, at the 75th percentile of page loads (web.dev).
- Field data first: Chrome UX Report data shows what real Chrome users experienced over the previous 28 days, when the page or site has enough traffic to be included; Lighthouse lab results help you find the cause.
- Mobile first: test the mobile version of the pages that matter, such as the home page, a product or service page and the checkout or contact form.
- Usual causes: an oversized hero image, render-blocking scripts and fonts, layout shifts from images without dimensions or late banners, and heavy third-party tags.
The PageSpeed Insights documentation notes that lab and field data can differ, and a good lab score does not mean real visitors had a good experience. The website performance audit guide shows how to connect a slow metric to the element that causes it.
Integrations
- Inventory: every analytics tool, tag manager, advertising pixel, consent tool and site-verification tag on the page, and who owns each one.
- Duplicates and leftovers: two copies of the same analytics tag, or a pixel from a campaign that ended last year.
- Consent: a consent tool where you need one, and tags that wait for it.
- Personal data: no email addresses, phone numbers or names in the data layer, URLs or page titles that tags read. Google's analytics help, for example, asks site owners to keep personally identifiable information out of URLs, titles and events.
Static checks show what the markup declares. Whether a tag really waits for consent, or which events fire after a click, needs a browser session with the developer tools open. The website integrations audit guide walks through that trace.
4. How to audit a website with AI, step by step
The Model Context Protocol (MCP) is a common way for an AI application to call tools from other services. With an audit service connected, the agent in your chat or coding tool can run checks and work with the results directly. The workflow has nine steps; the first two happen once per site, the rest repeat with every audit.
- Connect. Add the audit service as an MCP connection in your AI client and sign in through the browser. Remote MCP servers that need an account typically use OAuth, as described in the MCP authorization specification, so you approve access in a sign-in window and never paste a password or API key into the chat. Sitelemetry connects this way in ChatGPT, Claude, Claude Code, Codex and Cursor; the MCP connection guide has the steps for each client.
- Set scope and authorization. Decide which sites and pages are in scope, and audit only sites you own or have written permission to test. Passive checks read what any visitor can see; active security checks send probing requests, so they should run only after you have verified control of the domain. Tell the agent the scope in plain words: production only, these three URLs, no form submissions.
- Run the audit. Ask for a full audit or one area: “Run a full audit of https://www.example.com and list the findings by severity.” Long audits may run as a background job; let the agent wait for the result instead of starting a second scan.
- Read the evidence. Each finding should come with a severity, the evidence observed, the impact and a remediation. Ask the agent to quote the evidence for anything rated high, and reproduce one or two findings yourself with
curl -sIordig. A finding you can reproduce is one you can fix with confidence. - Prioritize. Sort by severity, then by exposure (is the page public, does it handle sign-in or payment?), then by effort. Group findings that share one fix, such as several headers set in the same server configuration, and ask the agent which findings matter for this site and which carry little risk here.
- Hand an agent-ready fix prompt to the coding agent. Turn the chosen findings into one precise change request with the evidence, constraints, acceptance criteria and retest steps (an example follows). Give it to the coding agent that works in your repository, or let the same client do both if it has repository access.
- Ship through your normal process. Review the diff, test on staging and deploy as you would any change. The audit does not replace code review, and a coding agent should not deploy without a person approving it.
- Re-audit to verify. Run the same check on the same target after deployment. A finding is closed when a fresh result no longer shows it, not when the agent says it edited a file.
- Monitor. Schedule the audit to repeat, so that a plugin update, a new tag or an expiring certificate shows up before visitors notice. Weekly suits most small sites; sites that deploy every day benefit from daily runs.
The MCP specification recommends a human in the loop who can deny tool calls, and OWASP lists excessive agency, the risk of damaging actions when an agent has more functionality, permissions or autonomy than its task needs, as a risk of its own. In practice: let the audit tools read, and keep a person approving code changes and deployments.
A fix prompt that a coding agent can act on without guessing has this shape (an illustrative example):
Fix: Strict-Transport-Security header missing
Target: https://www.example.com (all HTTPS responses)
Evidence: GET / over HTTPS returned 200 without a
Strict-Transport-Security header.
Constraints:
- Change only the header configuration of the web server or CDN.
- Use max-age=300 for now (first rollout stage); no preload.
- Do not change redirects, cookies or other headers.
Acceptance criteria:
- curl -sI https://www.example.com/ shows a
Strict-Transport-Security header with max-age=300.
- The header is present on HTML, CSS and JavaScript responses.
Retest:
- Re-run the security audit for www.example.com and confirm
the finding no longer appears.Each part has a job. The evidence tells the coding agent what was observed, so it does not have to rediscover the problem. The constraints keep the change small; starting HSTS with a short max-age and raising it in stages is the cautious path the HSTS guide describes. The acceptance criteria are commands anyone can run, and the retest step closes the loop with the same check that found the problem.
5. How to evaluate an AI website audit tool
Search for the best AI tool for a website audit and you will find long lists. The right choice depends on your site, but the questions that separate a useful AI website audit tool from a chatbot with a scanner attached are the same for every product.
| Criterion | Question to ask | A good answer |
|---|---|---|
| Evidence attached | Does every finding show what was observed? | The header value, DNS record, status code or HTML element, with the URL it came from |
| Coverage | Which areas and checks are included, and on which plan? | A published list per area, so you also know what was not checked |
| Authorization for active tests | Will it probe any domain someone types in? | Passive checks for public signals; active checks only after you verify control of the domain |
| Static or rendered | Does it run JavaScript, and does it say so? | A clear statement of what it reads, so you know when to check the rendered page yourself |
| Reproducible re-tests | Can I run the same check after a fix and compare? | The same check on the same target gives a comparable result, and resolved findings drop out |
| Fix hand-off | What does the output give a developer or a coding agent? | A remediation per finding, plus constraints, acceptance criteria and retest steps |
| Agent integration | Does it work inside the AI tools my team already uses? | An MCP server with OAuth sign-in, not an API key pasted into a chat |
| Privacy | What is stored, who can see reports and what does the agent receive? | A clear data policy, account-level access and no need to share passwords |
| Honest scope | What does it say it is not? | Plain limits, for example that it is not a penetration test or a full manual accessibility review |
Then test any candidate on your own site before you rely on it:
- Run it twice on the same page without changes. Findings and severities should match.
- Check three findings by hand, one each from security, SEO and accessibility, with
curl,digor the page source. - Plant a known problem on staging, such as an image without alt text or a duplicate title, and see whether it is reported.
- Fix one finding and re-audit. It should disappear, and nothing unrelated should change.
- Read the limits. A tool that says what it does not check is easier to trust than one that claims to check everything.
Section 8 lists what Sitelemetry covers, how it hands off fixes and where its limits are.
6. Common pitfalls and how to avoid them
| Pitfall | What it looks like | How to avoid it |
|---|---|---|
| Hallucinated findings | The assistant reports “DMARC is set to p=none” or “no HSTS header” without having read the record or the response | Accept only findings with evidence; ask which record or response the finding is based on, and check one by hand |
| Unverified fixes | The coding agent edits a configuration file and reports success, but the CDN overrides the header or the change was never deployed | Close a finding only after a re-audit of the live site |
| Scanning sites you do not own | Running active checks against another company's site, a client without an agreement or a third-party service your site uses | Audit only your own or authorized targets; for someone else's site, report concerns through the contact in its security.txt file (RFC 9116) |
| Chasing the score | Fixing many low-severity items to raise a number while a high-severity finding waits | Work in severity order and measure progress by resolved findings |
| Static checks on a JavaScript app | A single-page app is reported as having no content or headings because its initial HTML is an empty shell | Compare with the rendered page, and consider server-side rendering for public pages |
| Instructions hidden in pages | A page the agent reads tells it to ignore findings or to visit a link | Treat page content as data, and approve every action the agent takes |
| Secrets in the chat | Pasting API keys, passwords or a production .env file into the conversation so the agent “has context” | Use OAuth connections, and give coding agents access to secrets only through your normal deployment setup |
| One giant fix | A single prompt asking the coding agent to fix all forty findings at once | One fix prompt per group of related findings, reviewed and re-audited before the next |
The thread through all of these is the same. Treat the agent as a fast, articulate colleague who has not seen the server: give it evidence, keep its permissions narrow, and check the result on the live site.
7. A worked example: a small clinic website
A dental clinic runs a WordPress site at www.example-clinic.com with an online booking form. The office manager connects an audit service to her AI assistant, verifies the domain and asks for a full audit of the home page and the booking page. Among the results (illustrative, not real data):
| Area | Finding | Evidence | When |
|---|---|---|---|
| Security | An old database backup can be downloaded | /database.sql returns 200 and the body begins with SQL dump statements such as CREATE TABLE | Today |
| Integrations | A real email address is hard-coded in the booking page's tracking code | An inline dataLayer.push on the booking page contains an email field with an address | Today |
| Accessibility | Booking form fields have placeholders but no labels | Five input elements without an associated label | This week |
| Security | No DMARC record | No TXT record at _dmarc.example-clinic.com | This week |
| Performance | Slow largest paint on mobile | Mobile lab LCP is 4.1 seconds (too little traffic for field data); the hero image is 2.3 MB | This month |
| Technical SEO | Three service pages share one title | Identical <title> text on three URLs | This month |
| AI visibility | robots.txt blocks every AI crawler | robots.txt has Disallow: / for each listed AI user agent, under a comment naming a security plugin | Owner decides |
The agent explains why the first two come first: the backup exposes data to anyone who guesses the path, and the address in the tracking code is passed to every third-party tag that reads the data layer. It asks whether the AI crawler block was intentional. Nobody had decided, so it becomes a decision for the owner rather than a fix.
For the backup, the fix is not code: delete the file, look for other copies on the server and find out which process created it. Then check the access logs for earlier downloads, change any passwords or keys the backup contained and, if patient data may have been exposed, follow the clinic's data-breach procedure. For the form labels, the agent writes a fix prompt that names the five fields and the booking page they are on, with the constraint that the visual design stays the same and the acceptance criterion that a screen reader announces a label for each field. The developer's coding agent makes the change, the developer reviews and deploys it, and a re-audit shows the finding gone. The DMARC record goes to whoever manages DNS, starting at p=none with reports, as the DMARC rollout guide explains. Each item ends the same way: changed, deployed and checked again with the audit that found it.
8. Running this workflow with Sitelemetry
Sitelemetry is an AI website audit tool built for the workflow in this guide:
- Six areas. Security, with up to 27 modules on the Enterprise plan: DNS, SPF and DMARC, TLS, HTTPS posture, security headers, CORS, exposed files, API and secret exposure, subdomain takeover, supply chain, auth surface, open ports, HTTP methods, WordPress and more. Technical SEO, including Google Search Console clicks, CTR, position and quick wins. AI visibility readiness, accessibility, performance through PageSpeed Insights, Lighthouse and CrUX field data, and integrations.
- Evidence and fixes. Findings carry severity, evidence, impact and remediation, and each audit can produce one agent-ready fix prompt with constraints, acceptance criteria and retest steps.
- Inside your AI tools. It works over MCP with OAuth sign-in in ChatGPT, Claude, Claude Code, Codex and Cursor; the MCP connection guide shows how to connect. OAuth sign-in means you approve access in a browser window and never paste a password or API key into the chat.
- Verify and monitor. Re-audit after a fix to confirm it on the live site. Depending on the plan, monitoring runs weekly, daily or hourly. Reports export as JSON or PDF, with white-label reports on Enterprise.
- Plans. Starter at $49, Professional at $149 and Enterprise at $249 per month; the pricing page lists what each includes.
Its limits are the ones this guide asks you to look for. Hosted audits observe the target without changing it, and active security checks run only on verified targets. The SEO, AI visibility, accessibility and integrations checks read static HTML without running JavaScript. AI visibility checks content readiness and does not query AI assistants. The accessibility checks are static and oriented to WCAG 2.2, not a full manual assessment, and the security audit is not a penetration test. Keep the manual checks from section 3 for what static analysis cannot see.
Common questions
What is the best AI tool for a website audit?
The one whose findings you can check. Look for evidence on every finding, coverage of the areas you care about, active tests only on verified targets, a clear statement of whether it runs JavaScript, re-tests that give comparable results and an MCP connection to the AI tools your team already uses. Run any candidate twice on your own site and confirm a few findings by hand.
Can ChatGPT or Claude audit my website on its own?
Only partly. With built-in browsing alone, an assistant reads the pages it can fetch and gives general advice, but it cannot query DNS, inspect the TLS certificate, reliably read response headers, or see field performance data or Search Console data. A coding agent with a terminal can run single commands such as curl or dig, but without fixed coverage. Connected to audit tools over MCP, it works from collected evidence instead of assumptions.
How do I audit a website with AI, step by step?
Connect an audit service to your AI client over MCP, define which sites you own or may test, run the audit, read the evidence for each finding, prioritize by severity and exposure, give a coding agent a fix prompt with constraints and acceptance criteria, ship the change through review, then re-audit and schedule monitoring.
Can I audit a website I do not own?
Reading public pages the way any visitor does is normal, but active security checks such as probing sensitive paths or scanning ports should only target sites you own or have written permission to test. If you notice a problem on someone else's site, report it through the contact listed in its /.well-known/security.txt file.
Is an AI website audit a complete security and accessibility review?
No. It covers known, observable issues quickly and repeatably. It is not a penetration test, so flaws in your application's logic, sign-in and permissions need their own review, and automated accessibility checks cannot judge keyboard use, focus, contrast or screen-reader behavior. Use the audit between deeper reviews and after every change.
Do I have to share passwords or API keys with the AI agent?
No. Remote MCP connections that need an account typically use OAuth: you sign in to the service in a browser window and approve access, and the client receives a token meant for that server only. Never paste passwords, API keys or .env files into a chat.
How often should I re-audit my website?
After every fix, to confirm it worked on the live site, and on a schedule: weekly suits most small sites and daily suits sites that deploy often. An extra run after changes to templates, plugins, tags or DNS catches regressions early.
Sources & further reading
- OWASP Gen AI Security Project: LLM09:2025 Misinformationgenai.owasp.org
- OWASP Gen AI Security Project: LLM01:2025 Prompt Injectiongenai.owasp.org
- OWASP Gen AI Security Project: LLM06:2025 Excessive Agencygenai.owasp.org
- MCP specification: toolsmodelcontextprotocol.io
- MCP specification: authorizationmodelcontextprotocol.io
- Google Search Central: Understand JavaScript SEO basicsdevelopers.google.com
- Google Search Central: AI features and your websitedevelopers.google.com
- W3C WAI: Selecting Web Accessibility Evaluation Toolswww.w3.org
- W3C: Web Content Accessibility Guidelines (WCAG) 2.2www.w3.org
- web.dev: Web Vitalsweb.dev
- Google for Developers: About PageSpeed Insightsdevelopers.google.com
- Analytics Help: Best practices to avoid sending personally identifiable informationsupport.google.com
- RFC 9116: A File Format to Aid in Security Vulnerability Disclosure (security.txt)www.rfc-editor.org
- Google Search Central: Google's common crawlersdevelopers.google.com
Prepared by the Sitelemetry editorial team. Explore the linked sources for further detail.



