Проверенный сертификат AgentReady.md
Выдан sig: cedb95c8d8d97966 Проверить →

Проанализированный URL

https://zentract.io

Анализировать другой URL

Оценка AI-Ready

89 / B

Хорошо

из 100

Экономия токенов

HTML-токены 30.615
Markdown-токены 1083
Экономия 96%

Разбивка оценки

Семантический HTML 83/100
Эффективность контента 93/100
Обнаруживаемость ИИ 77/100
Структурированные данные 100/100
Доступность 100/100

Новые протоколы

Обнаружено 1 из 3

Well-known эндпоинты, которые ищут ИИ-агенты. Обнаружено — значит агент может автоматически найти и подключиться к вашему сервису.

  • OAuth Discovery RFC 8414
    /.well-known/oauth-authorization-server
    • issuer: https://zentract.io
    • token_endpoint: https://zentract.io/api/oauth2/token
    • 2 grant type(s)
  • MCP Server Card Anthropic
    /.well-known/mcp.json
  • A2A Agent Card Google
    /.well-known/agent.json

Ваш сайт не поддерживает Markdown for Agents. Этот стандарт Cloudflare позволяет ИИ-агентам запрашивать контент в формате markdown, сокращая использование токенов на ~80%.

Как внедрить

Реализуйте одно или несколько: (1) Отвечать на Accept: text/markdown контентом в формате markdown. (2) Обслуживать URL с .md (например, /page.md). (3) Добавить теги <link rel="alternate" type="text/markdown">. (4) Добавить HTTP-заголовки Link для обнаружения markdown.

{\n res.setHeader('Vary', 'Accept');\n res.setHeader('Link', '; rel=\"alternate\"; type=\"text/markdown\"');\n if ((req.headers.accept || '').includes('text/markdown')) {\n res.type('text/markdown; charset=utf-8');\n return res.send(renderMarkdown('page'));\n }\n res.render('page');\n});"},{"id":"fastify","label":"Fastify","language":"javascript","filename":"server.js","code":"// Mechanisms 1 + 4: content negotiation + Link header\nfastify.get('/page', async (req, reply) => {\n reply.header('Vary', 'Accept');\n reply.header('Link', '; rel=\"alternate\"; type=\"text/markdown\"');\n if ((req.headers.accept || '').includes('text/markdown')) {\n return reply.type('text/markdown; charset=utf-8').send(renderMarkdown('page'));\n }\n return reply.view('/page.ejs');\n});"},{"id":"nextjs","label":"Next.js","language":"typescript","filename":"app/page/route.ts","code":"// Next.js App Router — Route Handler returning Markdown\nimport { NextRequest } from 'next/server';\nimport { renderMarkdown } from '@/lib/md';\nexport async function GET(req: NextRequest) {\n const accept = req.headers.get('accept') || '';\n if (accept.includes('text/markdown')) {\n return new Response(await renderMarkdown('page'), {\n headers: {\n 'Content-Type': 'text/markdown; charset=utf-8',\n 'Vary': 'Accept',\n },\n });\n }\n // Fall through to the page component\n return new Response(null, { status: 404 });\n}"},{"id":"wordpress","label":"WordPress","language":"php","filename":"functions.php","code":"post_content));\n exit;\n});"},{"id":"static","label":"Hugo / Jekyll / Astro","language":"txt","filename":"static/page.md","code":"# Mechanism 2: serve .md alongside .html\n# Hugo: place page.md in /static/ — built unchanged\n# Jekyll: drop page.md in /assets/ — copied as-is\n# Astro: src/pages/page.md.ts that exports a GET returning markdown\n\n# Then advertise with mechanism 3 in :\n# "}] }'>

Ваша страница в значительной степени полагается на элементы <div>. Семантические элементы, такие как <section>, <nav>, <header>, <footer> и <aside>, обеспечивают осмысленную структуру для ИИ-агентов.

Как внедрить

Замените общие контейнеры <div> подходящими семантическими элементами. Используйте <section> для тематических групп, <nav> для навигации, <header>/<footer> для верхних и нижних колонтитулов страниц и разделов.

Многие элементы имеют атрибуты style. Они создают шум для ИИ-агентов при извлечении контента.

Как внедрить

Перенесите все inline-стили в CSS-классы в вашей таблице стилей. Используйте утилитарные CSS-фреймворки, такие как Tailwind, если вам нужно много уникальных стилей.

Markdown-токены: 1083
For agencies that bill time

# Stop losing revenue
to time you already
worked.

Zentract connects tasks, time, and billing in one place. Catch missed hours and overages before they become write-offs.

Join the waitlist

[Sign in →](https://zentract.io/sign-in)

No credit card required.

zentract — Acme Corp / Website Redesign

Write homepage copy

Acme Corp · Copywriting

1:45

Design system audit

Acme Corp · Design · Billable

02:34:18

Handoff to dev

Acme Corp · PM

—

Live timerRecording

02:34:18

Design system audit · Acme Corp

Used byDesign agenciesDev shopsConsulting firmsFractional teamsMarketing studios

The real cost of disconnected tools

01

### Time logged late is time not invoiced.

Details fade. Entries disappear. By Friday, no one remembers Tuesday's four-hour deep-work session.

02

### Scope creeps before you can react.

You hit 80% of budget with 40% of work left. The signal came too late to have a real conversation.

03

### Billing is a monthly reconstruction.

You spend hours piecing together what happened. Then write off the hours that don't have receipts.

Time Tracking

## Every task
is a timer.

One click starts tracking. Zentract ties the entry to the task, project, and client automatically. No separate app. No retroactive guessing.

-   ✓One-click timers on any task
-   ✓Billable vs non-billable on every entry
-   ✓Log from web or iOS & Android
-   ✓Only one timer runs at a time

Active tasks1 running

Design system audit

Acme Corp · Billable

02:34:18

Write homepage copy

Acme Corp · Billable

1:45:00

Stakeholder review call

Acme Corp · Non-billable

—

02:34:18

today · Acme Corp

Budget overviewLive

Website Redesign · Acme Corp82%

Q2 Content Strategy · Bloom44%

Platform Audit · NovaTech107%

Budgeted

240h

Logged

198h

Remaining

42h

Budget Control

## See the overage
before it happens.

Budget vs actual updates in real-time as time is logged. Get a warning at 80%. Have the scope conversation while there's still something to negotiate.

-   ✓Real-time budget vs actual
-   ✓Overage alerts at your threshold
-   ✓Per-project and per-client views
-   ✓Hours or dollar-based budgets

Invoicing

## Invoice from
source, not memory.

Select a billing period. Zentract groups time entries by task and generates line items. No spreadsheet. No reconstruction. The invoice reflects what actually happened.

-   ✓Generate from tracked time entries
-   ✓Grouped by task or category
-   ✓Billable-only filter built in
-   ✓Export-ready output

Invoice previewReady to export

Acme Corp

March 1–31, 2026

INV-0024

Due Apr 14, 2026

Design system audit

14.5 hrs · $150/hr

$2,175

Homepage copy

6.25 hrs · $120/hr

$750

Project management

3.0 hrs · $120/hr

$360

Total due$3,285

Export invoice →

## How it works.

Three steps. No setup ceremony. No onboarding calls required.

STEP 01

### Set up a project.

Create a client, add a project with a budget. Add tasks for the work ahead. Takes three minutes.

STEP 02

### Track time as you work.

Open a task, hit start. Stop when you're done. Zentract logs it against the client and project, billable or not.

STEP 03

### Invoice with one click.

Select a billing period. Review grouped line items from real entries. Export. Done.

## Free to start.
Scales when you do.

Everything you need to run a small team — no credit card, no 14-day trial cliff. Upgrade when your operation grows.

Free tier

$0/ month

-   ✓3 team members
-   ✓5 clients
-   ✓10 projects
-   ✓Unlimited time tracking
-   ✓Invoice generation
-   ✓iOS & Android apps

Join the waitlist

FAQ

## Common questions

Everything you need to know before getting started with Zentract.

How does Zentract help agencies track billable hours?

How is Zentract different from Harvest or Toggl?

Can Zentract generate invoices from time tracking?

Is Zentract free to use?

What types of agencies and teams use Zentract?

Does Zentract prevent scope creep on client projects?

Does Zentract have mobile apps?

## Every hour you worked
deserves to be invoiced.

Join early access. We'll reach out when your workspace is ready. No credit card required.

Join the waitlist

No credit card · No spam · Cancel anytime

Already using Zentract? [Sign in →](https://zentract.io/sign-in)
Zentract — Agency Time Tracking & Client Billing Software

For agencies that bill time

# Stop losing revenue
to time you already
worked.

Zentract connects tasks, time, and billing in one place. Catch missed hours and overages before they become write-offs.

Join the waitlist

[Sign in →](https://zentract.io/sign-in)

No credit card required.

zentract — Acme Corp / Website Redesign

Write homepage copy

Acme Corp · Copywriting

1:45

Design system audit

Acme Corp · Design · Billable

02:34:18

Handoff to dev

Acme Corp · PM

—

Live timerRecording

02:34:18

Design system audit · Acme Corp

Used byDesign agenciesDev shopsConsulting firmsFractional teamsMarketing studios

The real cost of disconnected tools

01

### Time logged late is time not invoiced.

Details fade. Entries disappear. By Friday, no one remembers Tuesday's four-hour deep-work session.

02

### Scope creeps before you can react.

You hit 80% of budget with 40% of work left. The signal came too late to have a real conversation.

03

### Billing is a monthly reconstruction.

You spend hours piecing together what happened. Then write off the hours that don't have receipts.

Time Tracking

## Every task
is a timer.

One click starts tracking. Zentract ties the entry to the task, project, and client automatically. No separate app. No retroactive guessing.

-   ✓One-click timers on any task
-   ✓Billable vs non-billable on every entry
-   ✓Log from web or iOS & Android
-   ✓Only one timer runs at a time

Active tasks1 running

Design system audit

Acme Corp · Billable

02:34:18

Write homepage copy

Acme Corp · Billable

1:45:00

Stakeholder review call

Acme Corp · Non-billable

—

02:34:18

today · Acme Corp

Budget overviewLive

Website Redesign · Acme Corp82%

Q2 Content Strategy · Bloom44%

Platform Audit · NovaTech107%

Budgeted

240h

Logged

198h

Remaining

42h

Budget Control

## See the overage
before it happens.

Budget vs actual updates in real-time as time is logged. Get a warning at 80%. Have the scope conversation while there's still something to negotiate.

-   ✓Real-time budget vs actual
-   ✓Overage alerts at your threshold
-   ✓Per-project and per-client views
-   ✓Hours or dollar-based budgets

Invoicing

## Invoice from
source, not memory.

Select a billing period. Zentract groups time entries by task and generates line items. No spreadsheet. No reconstruction. The invoice reflects what actually happened.

-   ✓Generate from tracked time entries
-   ✓Grouped by task or category
-   ✓Billable-only filter built in
-   ✓Export-ready output

Invoice previewReady to export

Acme Corp

March 1–31, 2026

INV-0024

Due Apr 14, 2026

Design system audit

14.5 hrs · $150/hr

$2,175

Homepage copy

6.25 hrs · $120/hr

$750

Project management

3.0 hrs · $120/hr

$360

Total due$3,285

Export invoice →

## How it works.

Three steps. No setup ceremony. No onboarding calls required.

STEP 01

### Set up a project.

Create a client, add a project with a budget. Add tasks for the work ahead. Takes three minutes.

STEP 02

### Track time as you work.

Open a task, hit start. Stop when you're done. Zentract logs it against the client and project, billable or not.

STEP 03

### Invoice with one click.

Select a billing period. Review grouped line items from real entries. Export. Done.

## Free to start.
Scales when you do.

Everything you need to run a small team — no credit card, no 14-day trial cliff. Upgrade when your operation grows.

Free tier

$0/ month

-   ✓3 team members
-   ✓5 clients
-   ✓10 projects
-   ✓Unlimited time tracking
-   ✓Invoice generation
-   ✓iOS & Android apps

Join the waitlist

FAQ

## Common questions

Everything you need to know before getting started with Zentract.

How does Zentract help agencies track billable hours?

How is Zentract different from Harvest or Toggl?

Can Zentract generate invoices from time tracking?

Is Zentract free to use?

What types of agencies and teams use Zentract?

Does Zentract prevent scope creep on client projects?

Does Zentract have mobile apps?

## Every hour you worked
deserves to be invoiced.

Join early access. We'll reach out when your workspace is ready. No credit card required.

Join the waitlist

No credit card · No spam · Cancel anytime

Already using Zentract? [Sign in →](https://zentract.io/sign-in)

Загрузите этот файл как /index.md на ваш сервер, чтобы ИИ-агенты могли получить доступ к чистой версии вашей страницы. Вы также можете настроить согласование контента Accept: text/markdown для автоматической отдачи.

Наша рекомендация

Скачать llms.txt
# zentract.io

> One-click time tracking, real-time budget alerts, and client invoicing in one platform. Built for agencies and consultants. Free for up to 3 team members.

## Main
- [Zentract — Agency Time Tracking & Client Billing Software](https://zentract.io): One-click time tracking, real-time budget alerts, and client invoicing in one platform. Built for agencies and consulta…
- [ZentractZENTRACT](https://zentract.io/)
- [Sign in](https://zentract.io/sign-in)

## Legal
- [Privacy](https://zentract.io/privacy)
- [Terms](https://zentract.io/terms)

## Support
- [Contact](https://zentract.io/contact)

Полный llms.txt требует анализа всего домена (скоро появится)

Загрузите этот файл по адресу https://zentract.io/llms.txt в корень вашего домена. ИИ-агенты, такие как ChatGPT, Claude и Perplexity, проверяют этот файл для понимания структуры вашего сайта.

На этом сайте уже есть файл llms.txt.

Корректный формат
# Zentract

> Zentract is a project management and time tracking platform for professional services firms. 
It helps teams manage clients, projects, tasks, time entries, billing, and reporting.

Important notes:
- Public crawling rules are defined in robots.txt; see links below.


## About Site

- [Homepage](https://zentract.io)
- [Privacy](https://zentract.io/privacy): Privacy policy
- [Terms](https://zentract.io/terms): Terms of service
- [Contact](https://zentract.io/contact): Contact us page
- [robots.txt](https://zentract.io/robots.txt): Crawler access rules and disallowed paths
- [Sitemap](https://zentract.io/sitemap.xml): Discoverable public pages

Семантический HTML

Использует элемент article или main (100/100)

Has <main>

Правильная иерархия заголовков (85/100)

1 heading level skip(s)

Использует семантические HTML-элементы (32/100)

14 semantic elements, 134 divs (ratio: 9%)

Осмысленные альтернативные тексты изображений (100/100)

No images found

Небольшая глубина вложенности div (100/100)

Avg div depth: 4.6, max: 8

Эффективность контента

Хороший коэффициент сокращения токенов (100/100)

96% token reduction (HTML→Markdown)

Хорошее соотношение контента к шуму (100/100)

Content ratio: 59.2% (60153 content chars / 101540 HTML bytes)

Минимум inline-стилей (50/100)

21/466 elements with inline styles (4.5%)

Приемлемый вес страницы (100/100)

HTML size: 99KB

Обнаруживаемость ИИ

Имеет файл llms.txt (100/100)

llms.txt exists and is valid

Имеет файл robots.txt (100/100)

robots.txt exists

robots.txt разрешает ИИ-ботов (100/100)

All major AI bots allowed

Имеет sitemap.xml (100/100)

Sitemap found

Поддержка Markdown for Agents (40/100) Cloudflare CDN
&#10003; Accept: text/markdown &#10007; .md URL &#10007; <link> tag &#10007; Link header YAML frontmatter (basic)
Есть Content-Signal (robots.txt или HTTP-заголовки) (60/100)
&#10003; robots.txt &#10007; HTTP header &#10007; Policy

Структурированные данные

Имеет Schema.org / JSON-LD (100/100)

JSON-LD found: Organization, WebApplication, FAQPage

Имеет теги Open Graph (100/100)

All OG tags present

Имеет мета-описание (100/100)

Meta description: 154 chars

Имеет канонический URL (100/100)

Canonical URL present

Имеет атрибут lang (100/100)

lang="en"

Доступность

Контент доступен без JavaScript (100/100)

Content available without JavaScript

Приемлемый размер страницы (100/100)

Page size: 99KB

Контент расположен рано в HTML (100/100)

Main content starts at 13% of HTML

{
  "url": "https://zentract.io",
  "timestamp": 1777728201324,
  "fetch": {
    "mode": "simple",
    "timeMs": 435,
    "htmlSizeBytes": 101540,
    "supportsMarkdown": true,
    "markdownAgents": {
      "contentNegotiation": true,
      "mdUrl": {
        "found": false,
        "url": null
      },
      "linkTag": {
        "found": false,
        "url": null
      },
      "linkHeader": {
        "found": false,
        "url": null
      },
      "responseHeaders": {
        "contentSignal": null,
        "xMarkdownTokens": "820",
        "vary": "Accept"
      },
      "frontmatter": {
        "present": true,
        "fields": [
          "title",
          "path"
        ],
        "level": "basic"
      },
      "level": "cloudflare"
    },
    "statusCode": 200
  },
  "extraction": {
    "title": "Zentract — Agency Time Tracking & Client Billing Software",
    "excerpt": "((a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=[\"light\",\"dark\"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c=\"class\"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d)",
    "byline": null,
    "siteName": null,
    "lang": "en",
    "contentLength": 60153,
    "metadata": {
      "description": "One-click time tracking, real-time budget alerts, and client invoicing in one platform. Built for agencies and consultants. Free for up to 3 team members.",
      "ogTitle": "Zentract — Agency Time Tracking & Client Billing Software",
      "ogDescription": "One-click time tracking, real-time budget alerts, and client invoicing in one platform. Stop losing revenue to hours you already worked.",
      "ogImage": "https://zentract.io/og-image.png",
      "ogType": "website",
      "canonical": "https://zentract.io",
      "lang": "en",
      "schemas": [
        {
          "@context": "https://schema.org",
          "@type": "Organization",
          "name": "Zentract",
          "url": "https://zentract.io",
          "logo": "https://zentract.io/logo.png",
          "description": "Agency management platform for time tracking, project billing, and client invoicing. Built for agencies, consultancies, and professional services teams.",
          "sameAs": [
            "https://twitter.com/zentractapp",
            "https://www.linkedin.com/company/vokality",
            "https://www.producthunt.com/products/zentract"
          ],
          "contactPoint": {
            "@type": "ContactPoint",
            "contactType": "customer support",
            "url": "https://zentract.io/contact"
          }
        },
        {
          "@context": "https://schema.org",
          "@type": "WebApplication",
          "name": "Zentract",
          "applicationCategory": "BusinessApplication",
          "operatingSystem": "Web, iOS, Android",
          "description": "One-click time tracking with real-time budget monitoring and client invoicing for agencies and professional services teams.",
          "url": "https://zentract.io",
          "offers": {
            "@type": "Offer",
            "price": "0",
            "priceCurrency": "USD",
            "description": "Free plan available — up to 3 team members, 5 clients, 10 projects"
          },
          "featureList": [
            "One-click billable time tracking",
            "Real-time project budget monitoring",
            "Client invoice generation from time entries",
            "Scope creep alerts",
            "iOS and Android mobile apps",
            "Team collaboration"
          ],
          "screenshot": "https://zentract.io/og-image.png"
        },
        {
          "@context": "https://schema.org",
          "@type": "FAQPage",
          "mainEntity": [
            {
              "@type": "Question",
              "name": "How does Zentract help agencies track billable hours?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Zentract lets you start a timer with one click directly from any task. Each time entry is automatically linked to the task, project, and client, so there is no retroactive guessing. You can mark hours as billable or non-billable, and your team's time is always visible in real time."
              }
            },
            {
              "@type": "Question",
              "name": "How is Zentract different from Harvest or Toggl?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Harvest and Toggl are strong standalone time trackers, but they require manual work to connect time to projects, budgets, and invoices. Zentract integrates time tracking, project budget monitoring, and client billing in one place so teams can see budget risk early and invoice directly from tracked time."
              }
            },
            {
              "@type": "Question",
              "name": "Can Zentract generate invoices from time tracking?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Yes. Once your team logs time against a client project, you can generate a client invoice directly from those entries. Zentract pulls billable hours automatically, so billing becomes a one-click process instead of a manual reconstruction at month end."
              }
            },
            {
              "@type": "Question",
              "name": "Is Zentract free to use?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Yes. Zentract has a free tier that supports up to 3 team members, 5 clients, and 10 projects, with unlimited time tracking and invoice generation included. No credit card is required."
              }
            },
            {
              "@type": "Question",
              "name": "What types of agencies and teams use Zentract?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Zentract is built for teams that bill by the hour, including design agencies, development shops, marketing studios, consulting firms, and fractional service teams."
              }
            },
            {
              "@type": "Question",
              "name": "Does Zentract prevent scope creep on client projects?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Zentract shows real-time budget consumption per project. As teams log hours, it becomes clear what percentage of the budget has been used so project leads can have a scope conversation before the project is already over budget."
              }
            },
            {
              "@type": "Question",
              "name": "Does Zentract have mobile apps?",
              "acceptedAnswer": {
                "@type": "Answer",
                "text": "Yes. Zentract has iOS and Android apps so teams can log time from anywhere, whether they are in a client meeting, on-site, or working remotely."
              }
            }
          ]
        }
      ],
      "robotsMeta": "index, follow",
      "author": null,
      "generator": null,
      "markdownAlternateHref": null
    }
  },
  "markdown": "For agencies that bill time\n\n# Stop losing revenue\nto time you already\nworked.\n\nZentract connects tasks, time, and billing in one place. Catch missed hours and overages before they become write-offs.\n\nJoin the waitlist\n\n[Sign in →](https://zentract.io/sign-in)\n\nNo credit card required.\n\nzentract — Acme Corp / Website Redesign\n\nWrite homepage copy\n\nAcme Corp · Copywriting\n\n1:45\n\nDesign system audit\n\nAcme Corp · Design · Billable\n\n02:34:18\n\nHandoff to dev\n\nAcme Corp · PM\n\n—\n\nLive timerRecording\n\n02:34:18\n\nDesign system audit · Acme Corp\n\nUsed byDesign agenciesDev shopsConsulting firmsFractional teamsMarketing studios\n\nThe real cost of disconnected tools\n\n01\n\n### Time logged late is time not invoiced.\n\nDetails fade. Entries disappear. By Friday, no one remembers Tuesday's four-hour deep-work session.\n\n02\n\n### Scope creeps before you can react.\n\nYou hit 80% of budget with 40% of work left. The signal came too late to have a real conversation.\n\n03\n\n### Billing is a monthly reconstruction.\n\nYou spend hours piecing together what happened. Then write off the hours that don't have receipts.\n\nTime Tracking\n\n## Every task\nis a timer.\n\nOne click starts tracking. Zentract ties the entry to the task, project, and client automatically. No separate app. No retroactive guessing.\n\n-   ✓One-click timers on any task\n-   ✓Billable vs non-billable on every entry\n-   ✓Log from web or iOS & Android\n-   ✓Only one timer runs at a time\n\nActive tasks1 running\n\nDesign system audit\n\nAcme Corp · Billable\n\n02:34:18\n\nWrite homepage copy\n\nAcme Corp · Billable\n\n1:45:00\n\nStakeholder review call\n\nAcme Corp · Non-billable\n\n—\n\n02:34:18\n\ntoday · Acme Corp\n\nBudget overviewLive\n\nWebsite Redesign · Acme Corp82%\n\nQ2 Content Strategy · Bloom44%\n\nPlatform Audit · NovaTech107%\n\nBudgeted\n\n240h\n\nLogged\n\n198h\n\nRemaining\n\n42h\n\nBudget Control\n\n## See the overage\nbefore it happens.\n\nBudget vs actual updates in real-time as time is logged. Get a warning at 80%. Have the scope conversation while there's still something to negotiate.\n\n-   ✓Real-time budget vs actual\n-   ✓Overage alerts at your threshold\n-   ✓Per-project and per-client views\n-   ✓Hours or dollar-based budgets\n\nInvoicing\n\n## Invoice from\nsource, not memory.\n\nSelect a billing period. Zentract groups time entries by task and generates line items. No spreadsheet. No reconstruction. The invoice reflects what actually happened.\n\n-   ✓Generate from tracked time entries\n-   ✓Grouped by task or category\n-   ✓Billable-only filter built in\n-   ✓Export-ready output\n\nInvoice previewReady to export\n\nAcme Corp\n\nMarch 1–31, 2026\n\nINV-0024\n\nDue Apr 14, 2026\n\nDesign system audit\n\n14.5 hrs · $150/hr\n\n$2,175\n\nHomepage copy\n\n6.25 hrs · $120/hr\n\n$750\n\nProject management\n\n3.0 hrs · $120/hr\n\n$360\n\nTotal due$3,285\n\nExport invoice →\n\n## How it works.\n\nThree steps. No setup ceremony. No onboarding calls required.\n\nSTEP 01\n\n### Set up a project.\n\nCreate a client, add a project with a budget. Add tasks for the work ahead. Takes three minutes.\n\nSTEP 02\n\n### Track time as you work.\n\nOpen a task, hit start. Stop when you're done. Zentract logs it against the client and project, billable or not.\n\nSTEP 03\n\n### Invoice with one click.\n\nSelect a billing period. Review grouped line items from real entries. Export. Done.\n\n## Free to start.\nScales when you do.\n\nEverything you need to run a small team — no credit card, no 14-day trial cliff. Upgrade when your operation grows.\n\nFree tier\n\n$0/ month\n\n-   ✓3 team members\n-   ✓5 clients\n-   ✓10 projects\n-   ✓Unlimited time tracking\n-   ✓Invoice generation\n-   ✓iOS & Android apps\n\nJoin the waitlist\n\nFAQ\n\n## Common questions\n\nEverything you need to know before getting started with Zentract.\n\nHow does Zentract help agencies track billable hours?\n\nHow is Zentract different from Harvest or Toggl?\n\nCan Zentract generate invoices from time tracking?\n\nIs Zentract free to use?\n\nWhat types of agencies and teams use Zentract?\n\nDoes Zentract prevent scope creep on client projects?\n\nDoes Zentract have mobile apps?\n\n## Every hour you worked\ndeserves to be invoiced.\n\nJoin early access. We'll reach out when your workspace is ready. No credit card required.\n\nJoin the waitlist\n\nNo credit card · No spam · Cancel anytime\n\nAlready using Zentract? [Sign in →](https://zentract.io/sign-in)\n",
  "fullPageMarkdown": "Zentract — Agency Time Tracking & Client Billing Software\n\nFor agencies that bill time\n\n# Stop losing revenue\nto time you already\nworked.\n\nZentract connects tasks, time, and billing in one place. Catch missed hours and overages before they become write-offs.\n\nJoin the waitlist\n\n[Sign in →](https://zentract.io/sign-in)\n\nNo credit card required.\n\nzentract — Acme Corp / Website Redesign\n\nWrite homepage copy\n\nAcme Corp · Copywriting\n\n1:45\n\nDesign system audit\n\nAcme Corp · Design · Billable\n\n02:34:18\n\nHandoff to dev\n\nAcme Corp · PM\n\n—\n\nLive timerRecording\n\n02:34:18\n\nDesign system audit · Acme Corp\n\nUsed byDesign agenciesDev shopsConsulting firmsFractional teamsMarketing studios\n\nThe real cost of disconnected tools\n\n01\n\n### Time logged late is time not invoiced.\n\nDetails fade. Entries disappear. By Friday, no one remembers Tuesday's four-hour deep-work session.\n\n02\n\n### Scope creeps before you can react.\n\nYou hit 80% of budget with 40% of work left. The signal came too late to have a real conversation.\n\n03\n\n### Billing is a monthly reconstruction.\n\nYou spend hours piecing together what happened. Then write off the hours that don't have receipts.\n\nTime Tracking\n\n## Every task\nis a timer.\n\nOne click starts tracking. Zentract ties the entry to the task, project, and client automatically. No separate app. No retroactive guessing.\n\n-   ✓One-click timers on any task\n-   ✓Billable vs non-billable on every entry\n-   ✓Log from web or iOS & Android\n-   ✓Only one timer runs at a time\n\nActive tasks1 running\n\nDesign system audit\n\nAcme Corp · Billable\n\n02:34:18\n\nWrite homepage copy\n\nAcme Corp · Billable\n\n1:45:00\n\nStakeholder review call\n\nAcme Corp · Non-billable\n\n—\n\n02:34:18\n\ntoday · Acme Corp\n\nBudget overviewLive\n\nWebsite Redesign · Acme Corp82%\n\nQ2 Content Strategy · Bloom44%\n\nPlatform Audit · NovaTech107%\n\nBudgeted\n\n240h\n\nLogged\n\n198h\n\nRemaining\n\n42h\n\nBudget Control\n\n## See the overage\nbefore it happens.\n\nBudget vs actual updates in real-time as time is logged. Get a warning at 80%. Have the scope conversation while there's still something to negotiate.\n\n-   ✓Real-time budget vs actual\n-   ✓Overage alerts at your threshold\n-   ✓Per-project and per-client views\n-   ✓Hours or dollar-based budgets\n\nInvoicing\n\n## Invoice from\nsource, not memory.\n\nSelect a billing period. Zentract groups time entries by task and generates line items. No spreadsheet. No reconstruction. The invoice reflects what actually happened.\n\n-   ✓Generate from tracked time entries\n-   ✓Grouped by task or category\n-   ✓Billable-only filter built in\n-   ✓Export-ready output\n\nInvoice previewReady to export\n\nAcme Corp\n\nMarch 1–31, 2026\n\nINV-0024\n\nDue Apr 14, 2026\n\nDesign system audit\n\n14.5 hrs · $150/hr\n\n$2,175\n\nHomepage copy\n\n6.25 hrs · $120/hr\n\n$750\n\nProject management\n\n3.0 hrs · $120/hr\n\n$360\n\nTotal due$3,285\n\nExport invoice →\n\n## How it works.\n\nThree steps. No setup ceremony. No onboarding calls required.\n\nSTEP 01\n\n### Set up a project.\n\nCreate a client, add a project with a budget. Add tasks for the work ahead. Takes three minutes.\n\nSTEP 02\n\n### Track time as you work.\n\nOpen a task, hit start. Stop when you're done. Zentract logs it against the client and project, billable or not.\n\nSTEP 03\n\n### Invoice with one click.\n\nSelect a billing period. Review grouped line items from real entries. Export. Done.\n\n## Free to start.\nScales when you do.\n\nEverything you need to run a small team — no credit card, no 14-day trial cliff. Upgrade when your operation grows.\n\nFree tier\n\n$0/ month\n\n-   ✓3 team members\n-   ✓5 clients\n-   ✓10 projects\n-   ✓Unlimited time tracking\n-   ✓Invoice generation\n-   ✓iOS & Android apps\n\nJoin the waitlist\n\nFAQ\n\n## Common questions\n\nEverything you need to know before getting started with Zentract.\n\nHow does Zentract help agencies track billable hours?\n\nHow is Zentract different from Harvest or Toggl?\n\nCan Zentract generate invoices from time tracking?\n\nIs Zentract free to use?\n\nWhat types of agencies and teams use Zentract?\n\nDoes Zentract prevent scope creep on client projects?\n\nDoes Zentract have mobile apps?\n\n## Every hour you worked\ndeserves to be invoiced.\n\nJoin early access. We'll reach out when your workspace is ready. No credit card required.\n\nJoin the waitlist\n\nNo credit card · No spam · Cancel anytime\n\nAlready using Zentract? [Sign in →](https://zentract.io/sign-in)\n",
  "markdownStats": {
    "images": 0,
    "links": 8,
    "tables": 0,
    "codeBlocks": 0,
    "headings": 14
  },
  "tokens": {
    "htmlTokens": 30615,
    "markdownTokens": 1083,
    "reduction": 29532,
    "reductionPercent": 96
  },
  "score": {
    "score": 89,
    "grade": "B",
    "dimensions": {
      "semanticHtml": {
        "score": 83,
        "weight": 20,
        "grade": "B",
        "checks": {
          "uses_article_or_main": {
            "score": 100,
            "weight": 20,
            "details": "Has <main>"
          },
          "proper_heading_hierarchy": {
            "score": 85,
            "weight": 25,
            "details": "1 heading level skip(s)"
          },
          "semantic_elements": {
            "score": 32,
            "weight": 20,
            "details": "14 semantic elements, 134 divs (ratio: 9%)"
          },
          "meaningful_alt_texts": {
            "score": 100,
            "weight": 15,
            "details": "No images found"
          },
          "low_div_nesting": {
            "score": 100,
            "weight": 20,
            "details": "Avg div depth: 4.6, max: 8"
          }
        }
      },
      "contentEfficiency": {
        "score": 93,
        "weight": 25,
        "grade": "A",
        "checks": {
          "token_reduction_ratio": {
            "score": 100,
            "weight": 40,
            "details": "96% token reduction (HTML→Markdown)"
          },
          "content_to_noise_ratio": {
            "score": 100,
            "weight": 30,
            "details": "Content ratio: 59.2% (60153 content chars / 101540 HTML bytes)"
          },
          "minimal_inline_styles": {
            "score": 50,
            "weight": 15,
            "details": "21/466 elements with inline styles (4.5%)"
          },
          "reasonable_page_weight": {
            "score": 100,
            "weight": 15,
            "details": "HTML size: 99KB"
          }
        }
      },
      "aiDiscoverability": {
        "score": 77,
        "weight": 25,
        "grade": "B",
        "checks": {
          "has_llms_txt": {
            "score": 100,
            "weight": 20,
            "details": "llms.txt exists and is valid"
          },
          "has_robots_txt": {
            "score": 100,
            "weight": 10,
            "details": "robots.txt exists"
          },
          "robots_allows_ai_bots": {
            "score": 100,
            "weight": 15,
            "details": "All major AI bots allowed"
          },
          "has_sitemap": {
            "score": 100,
            "weight": 10,
            "details": "Sitemap found"
          },
          "supports_markdown_negotiation": {
            "score": 40,
            "weight": 25,
            "details": "CDN level (Cloudflare) — Content negotiation"
          },
          "has_content_signals": {
            "score": 60,
            "weight": 20,
            "details": "robots.txt: ai-train=no, search=yes, ai-input=yes"
          }
        }
      },
      "structuredData": {
        "score": 100,
        "weight": 15,
        "grade": "A",
        "checks": {
          "has_schema_org": {
            "score": 100,
            "weight": 30,
            "details": "JSON-LD found: Organization, WebApplication, FAQPage"
          },
          "has_open_graph": {
            "score": 100,
            "weight": 25,
            "details": "All OG tags present"
          },
          "has_meta_description": {
            "score": 100,
            "weight": 20,
            "details": "Meta description: 154 chars"
          },
          "has_canonical_url": {
            "score": 100,
            "weight": 15,
            "details": "Canonical URL present"
          },
          "has_lang_attribute": {
            "score": 100,
            "weight": 10,
            "details": "lang=\"en\""
          }
        }
      },
      "accessibility": {
        "score": 100,
        "weight": 15,
        "grade": "A",
        "checks": {
          "content_without_js": {
            "score": 100,
            "weight": 40,
            "details": "Content available without JavaScript"
          },
          "reasonable_page_size": {
            "score": 100,
            "weight": 30,
            "details": "Page size: 99KB"
          },
          "fast_content_position": {
            "score": 100,
            "weight": 30,
            "details": "Main content starts at 13% of HTML"
          }
        }
      }
    }
  },
  "recommendations": [
    {
      "id": "add_markdown_negotiation",
      "priority": "high",
      "category": "aiDiscoverability",
      "titleKey": "rec.add_markdown_negotiation.title",
      "descriptionKey": "rec.add_markdown_negotiation.description",
      "howToKey": "rec.add_markdown_negotiation.howto",
      "effort": "significant",
      "estimatedImpact": 6,
      "checkScore": 40,
      "checkDetails": "CDN level (Cloudflare) — Content negotiation"
    },
    {
      "id": "add_semantic_elements",
      "priority": "high",
      "category": "semanticHtml",
      "titleKey": "rec.add_semantic_elements.title",
      "descriptionKey": "rec.add_semantic_elements.description",
      "howToKey": "rec.add_semantic_elements.howto",
      "effort": "moderate",
      "estimatedImpact": 5,
      "checkScore": 32,
      "checkDetails": "14 semantic elements, 134 divs (ratio: 9%)"
    },
    {
      "id": "remove_inline_styles",
      "priority": "medium",
      "category": "contentEfficiency",
      "titleKey": "rec.remove_inline_styles.title",
      "descriptionKey": "rec.remove_inline_styles.description",
      "howToKey": "rec.remove_inline_styles.howto",
      "effort": "moderate",
      "estimatedImpact": 3,
      "checkScore": 50,
      "checkDetails": "21/466 elements with inline styles (4.5%)"
    }
  ],
  "llmsTxtPreview": "# zentract.io\n\n> One-click time tracking, real-time budget alerts, and client invoicing in one platform. Built for agencies and consultants. Free for up to 3 team members.\n\n## Main\n- [Zentract — Agency Time Tracking & Client Billing Software](https://zentract.io): One-click time tracking, real-time budget alerts, and client invoicing in one platform. Built for agencies and consulta…\n- [ZentractZENTRACT](https://zentract.io/)\n- [Sign in](https://zentract.io/sign-in)\n\n## Legal\n- [Privacy](https://zentract.io/privacy)\n- [Terms](https://zentract.io/terms)\n\n## Support\n- [Contact](https://zentract.io/contact)\n\n",
  "llmsTxtExisting": "# Zentract\n\n> Zentract is a project management and time tracking platform for professional services firms. \nIt helps teams manage clients, projects, tasks, time entries, billing, and reporting.\n\nImportant notes:\n- Public crawling rules are defined in robots.txt; see links below.\n\n\n## About Site\n\n- [Homepage](https://zentract.io)\n- [Privacy](https://zentract.io/privacy): Privacy policy\n- [Terms](https://zentract.io/terms): Terms of service\n- [Contact](https://zentract.io/contact): Contact us page\n- [robots.txt](https://zentract.io/robots.txt): Crawler access rules and disallowed paths\n- [Sitemap](https://zentract.io/sitemap.xml): Discoverable public pages",
  "emergingProtocols": {
    "oauthDiscovery": {
      "exists": true,
      "url": "https://zentract.io/.well-known/oauth-authorization-server",
      "issuer": "https://zentract.io",
      "authorizationEndpoint": "https://zentract.io/api/oauth2/authorize",
      "tokenEndpoint": "https://zentract.io/api/oauth2/token",
      "grantTypesSupported": [
        "authorization_code",
        "refresh_token"
      ],
      "scopesSupported": [
        "projects:read",
        "projects:write",
        "projects:delete",
        "tasks:read",
        "tasks:write",
        "tasks:delete",
        "clients:read",
        "clients:write",
        "clients:delete",
        "time-entries:read",
        "time-entries:write",
        "time-entries:delete",
        "invoices:read",
        "invoices:write",
        "invoices:delete",
        "proposals:read",
        "proposals:write",
        "proposals:delete",
        "reports:read",
        "reports:generate",
        "reports:delete",
        "teams:read",
        "teams:write",
        "users:read",
        "users:write",
        "organization:read",
        "organization:write",
        "notifications:read",
        "notifications:write",
        "attachments:read",
        "attachments:write"
      ]
    },
    "mcpServerCard": {
      "exists": false,
      "url": "https://zentract.io/.well-known/mcp.json"
    },
    "a2aAgentCard": {
      "exists": false,
      "url": "https://zentract.io/.well-known/agent.json"
    },
    "count": 1
  },
  "snippets": [
    {
      "id": "add_markdown_negotiation",
      "title": "Support Markdown for Agents",
      "description": "Let AI agents request a clean Markdown version of any page via content negotiation, .md alternate URLs, link tags or Link headers.",
      "language": "html",
      "code": "<!-- Mechanism 3: link tag advertising the .md alternate -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">",
      "filename": "<head>",
      "stacks": [
        {
          "id": "html",
          "label": "HTML <head>",
          "language": "html",
          "filename": "<head>",
          "code": "<!-- Mechanism 3: link tag advertising the .md alternate -->\n<link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">"
        },
        {
          "id": "express",
          "label": "Express",
          "language": "javascript",
          "filename": "server.js",
          "code": "// Mechanisms 1 + 4: content negotiation + Link header\napp.get('/page', (req, res) => {\n  res.setHeader('Vary', 'Accept');\n  res.setHeader('Link', '</page.md>; rel=\"alternate\"; type=\"text/markdown\"');\n  if ((req.headers.accept || '').includes('text/markdown')) {\n    res.type('text/markdown; charset=utf-8');\n    return res.send(renderMarkdown('page'));\n  }\n  res.render('page');\n});"
        },
        {
          "id": "fastify",
          "label": "Fastify",
          "language": "javascript",
          "filename": "server.js",
          "code": "// Mechanisms 1 + 4: content negotiation + Link header\nfastify.get('/page', async (req, reply) => {\n  reply.header('Vary', 'Accept');\n  reply.header('Link', '</page.md>; rel=\"alternate\"; type=\"text/markdown\"');\n  if ((req.headers.accept || '').includes('text/markdown')) {\n    return reply.type('text/markdown; charset=utf-8').send(renderMarkdown('page'));\n  }\n  return reply.view('/page.ejs');\n});"
        },
        {
          "id": "nextjs",
          "label": "Next.js",
          "language": "typescript",
          "filename": "app/page/route.ts",
          "code": "// Next.js App Router — Route Handler returning Markdown\nimport { NextRequest } from 'next/server';\nimport { renderMarkdown } from '@/lib/md';\nexport async function GET(req: NextRequest) {\n  const accept = req.headers.get('accept') || '';\n  if (accept.includes('text/markdown')) {\n    return new Response(await renderMarkdown('page'), {\n      headers: {\n        'Content-Type': 'text/markdown; charset=utf-8',\n        'Vary': 'Accept',\n      },\n    });\n  }\n  // Fall through to the page component\n  return new Response(null, { status: 404 });\n}"
        },
        {
          "id": "wordpress",
          "label": "WordPress",
          "language": "php",
          "filename": "functions.php",
          "code": "<?php\n// Mechanism 1: respond to Accept: text/markdown on the same URL\nadd_action('template_redirect', function () {\n    if (!is_singular()) return;\n    $accept = $_SERVER['HTTP_ACCEPT'] ?? '';\n    if (strpos($accept, 'text/markdown') === false) return;\n    header('Content-Type: text/markdown; charset=utf-8');\n    header('Vary: Accept');\n    $post = get_queried_object();\n    echo \"# \" . get_the_title($post) . \"\\n\\n\";\n    echo wp_strip_all_tags(apply_filters('the_content', $post->post_content));\n    exit;\n});"
        },
        {
          "id": "static",
          "label": "Hugo / Jekyll / Astro",
          "language": "txt",
          "filename": "static/page.md",
          "code": "# Mechanism 2: serve .md alongside .html\n# Hugo: place page.md in /static/ — built unchanged\n# Jekyll: drop page.md in /assets/ — copied as-is\n# Astro: src/pages/page.md.ts that exports a GET returning markdown\n\n# Then advertise with mechanism 3 in <head>:\n#   <link rel=\"alternate\" type=\"text/markdown\" href=\"/page.md\">"
        }
      ]
    }
  ]
}

Используйте наш API для программного получения данных (скоро появится)

Этот JSON предназначен для внутреннего использования — в отличие от файлов Markdown и llms.txt, его не нужно загружать на ваш сайт. Сохраните его как базовый показатель для отслеживания оценки со временем, поделитесь с командой разработчиков или интегрируйте в ваш CI/CD-конвейер.

Поделитесь результатами

Twitter LinkedIn

Встройте ваш бейдж

Добавьте этот бейдж на ваш сайт. Он обновляется автоматически при изменении вашей оценки ИИ-готовности.

AgentReady.md score for zentract.io
Script Рекомендуется
<script src="https://agentready.md/badge.js" data-id="81c0a9b4-c03e-446e-ae6a-e76950ad7f79" data-domain="zentract.io"></script>
Markdown
[![AgentReady.md score for zentract.io](https://agentready.md/badge/zentract.io.svg)](https://agentready.md/ru/r/81c0a9b4-c03e-446e-ae6a-e76950ad7f79)

Скоро: Полный анализ домена

Сканируйте весь домен, генерируйте llms.txt и отслеживайте оценку ИИ-готовности со временем. Присоединяйтесь к списку ожидания.

Вы в списке! Мы уведомим вас о запуске.