Skip to content

Monthly data report

October 2026

Every number below is the direct output of the SQL query printed under it. Nothing on this page is typed by hand.

Data current as of .

Headline numberValue
Submissions received1,046
Verification rate65.8%
Median time to verify0.1h
Launches109
Self-scheduled share40.4%
Indexable share53.2%

Each figure is expanded, with its own query, in the matching section below.

Submissions
1,046 received
SourceSubmissions
Web979
MCP67
Show the query
select source, count(*)::int as n
from submissions
where created_at >= '2026-10-01T00:00:00.000Z' and created_at < '2026-11-01T00:00:00.000Z'
  and source not like 'seed%' and not is_internal
group by source
order by source;
Verification
MeasureValue
Submissions received1,046
Verified688
Verification rate65.8%
Median time to verify0.1h
Show the query
select
  (select count(*)::int from submissions
     where created_at >= '2026-10-01T00:00:00.000Z' and created_at < '2026-11-01T00:00:00.000Z' and source not like 'seed%' and not is_internal) as total,
  (select count(*)::int from submissions
     where created_at >= '2026-10-01T00:00:00.000Z' and created_at < '2026-11-01T00:00:00.000Z' and source not like 'seed%' and not is_internal
       and verified_at is not null) as verified,
  (select percentile_cont(0.5) within group (order by extract(epoch from (verified_at - created_at)) / 3600.0)
     from submissions
     where created_at >= '2026-10-01T00:00:00.000Z' and created_at < '2026-11-01T00:00:00.000Z' and source not like 'seed%' and not is_internal
       and verified_at is not null) as median_hours_to_verify;
Launches
109 launched
MeasureValue
Launched109
Self-scheduled44
Self-scheduled share40.4%
Show the query
select
  count(*)::int as total,
  count(*) filter (where self_scheduled)::int as self_scheduled
from products
where status = 'launched' and launch_date >= '2026-10-01' and launch_date < '2026-11-01'
  and source not like 'seed%';
Pricing model
Pricing modelLaunches
Freemium40
Pricing unlisted40
Free20
Paid5
Free trial4

Median starting price where one was given (15 of 109 launches): $10.

Show the query
select pricing_model, count(*)::int as n
from products
where status = 'launched' and launch_date >= '2026-10-01' and launch_date < '2026-11-01'
  and source not like 'seed%'
group by pricing_model
order by n desc, pricing_model;

select count(*)::int as priced,
       percentile_cont(0.5) within group (order by pricing_amount_usd) as median_price_usd
from products
where status = 'launched' and launch_date >= '2026-10-01' and launch_date < '2026-11-01'
  and source not like 'seed%'
  and pricing_amount_usd is not null;
Categories
Primary category, top 8
CategoryLaunches
AI & ML31
Utilities24
Media & Video6
API & Dev Tools5
Marketing & SEO4
Productivity4
Team Collaboration4
E-commerce3
Show the query
select c.slug, c.name, count(*)::int as n
from product_categories pc
join products p on p.id = pc.product_id
join categories c on c.slug = pc.category_slug
where pc.is_primary
  and p.status = 'launched' and p.launch_date >= '2026-10-01' and p.launch_date < '2026-11-01'
  and p.source not like 'seed%'
group by c.slug, c.name
order by n desc, c.name
limit 8;
Indexability
MeasureValue
Launched109
Indexable58
Indexable share53.2%
Median description length35 words
Under 100 words109 (100%)

A listing under 100 original words in its description is the single most common reason a page ships noindex, see how ranking works.

Show the query
with launched as (
  select is_indexable,
    case when btrim(coalesce(description, '')) = '' then 0
         else array_length(regexp_split_to_array(btrim(description), '\s+'), 1)
    end as words
  from products
  where status = 'launched' and launch_date >= '2026-10-01' and launch_date < '2026-11-01'
    and source not like 'seed%'
)
select
  count(*)::int as total,
  count(*) filter (where is_indexable)::int as indexable,
  count(*) filter (where words < 100)::int as under_100_words,
  percentile_cont(0.5) within group (order by words) as median_words
from launched;
Referrers
Submission first-touch attribution
ReferrerSubmissions
Unattributed938
MCP67
ChatGPT24
Other17
Show the query
select
  case
    when referrer_source = 'chatgpt.com' then 'chatgpt.com'
    when referrer_source = 'mcp' then 'mcp'
    when referrer_source is null then 'unattributed'
    else 'other'
  end as bucket,
  count(*)::int as n
from submissions
where created_at >= '2026-10-01T00:00:00.000Z' and created_at < '2026-11-01T00:00:00.000Z'
  and source not like 'seed%' and not is_internal
group by bucket
order by n desc;
Page requests
/tool/[slug], by requester type
RequesterRequests
Human31,886
Crawler13,945
AI agent7,528
Other2,407
Show the query
select bucket, sum(n)::int as n
from listing_requests
where day >= '2026-10-01' and day < '2026-11-01'
group by bucket
order by n desc;
Top launches
By points (votes + listing score)

pagerush.online

The website builder for everyday people. PageRush websites are highly performant and SEO-friendly by design.

Freemium · from $10

onekitly.com

1,800+ free online calculators, converters and tools

Free

preloved.co.id

Buy and sell secondhand fashion in Indonesia

Pricing unlisted

toolscase.com

JSON formatter · QR codes · Invoices · CSS gradients · Hash generator · Regex tester — all free, browser-based, no…

Free

melipo.app

Keep track of the dishes you and your family love, rediscover favorites and always know what to cook next.

Freemium

music-road.com

Explore trending songs from artists around the world, discover new music, and see what’s trending by country — updated…

Free

actionbox.cloud

Add human approvals to AI agents, scripts, and CI/CD workflows with the hosted ActionBox API, a reviewer inbox, and…

Freemium

wifi-lens.shiinalabs.com

WiFi Lens Pro is a native macOS Wi-Fi analyzer and network diagnostics app for live troubleshooting, continuous…

Paid · from $9.9

thefacereport.com

AI-powered face shape detection, symmetry scoring, and a personalized facial beauty report.

Freemium

shipvela.com

Website hosting from GitHub or your terminal

Freemium · from $29
Show the query
select *
from products p
where p.status = 'launched' and p.launch_date >= '2026-10-01' and p.launch_date < '2026-11-01'
  and p.source not like 'seed%'
order by ((case when p.launch_date is not null and now() < ((p.launch_date::timestamp + interval '17 hours') at time zone 'utc') then 0 else p.votes_count end) + p.ai_score) desc, p.launch_date desc
limit 10;