| Country | Contributions | Between | Climbers | Crags | Summits | Climbs | Ascents | |
|---|---|---|---|---|---|---|---|---|
| 1 | USA | 1507 | 20th November 2025 – 30th June 2026 | 47 | 20 | 0 | 87 | 97 |
| 2 | Australia | 767 | 27th September 2025 – 29th June 2026 | 6 | 38 | 0 | 61 | 33 |
| 3 | United Kingdom | 576 | 19th November 2025 – 8th July 2026 | 33 | 14 | 0 | 22 | 43 |
| 4 | France | 264 | 6th January 2026 – 28th June 2026 | 14 | 3 | 0 | 12 | 31 |
| 5 | Switzerland | 257 | 24th January 2026 – 10th July 2026 | 6 | 3 | 0 | 12 | 33 |
| 6 | Austria | 210 | 12th November 2025 – 22nd June 2026 | 5 | 2 | 0 | 8 | 22 |
| 7 | Italy | 129 | 18th November 2025 – 29th May 2026 | 9 | 3 | 0 | 11 | 10 |
| 8 | Pakistan | 118 | 11th April 2026 – 26th April 2026 | 0 | 0 | 0 | 1 | 7 |
| 9 | Spain | 105 | 20th February 2026 – 16th May 2026 | 5 | 0 | 0 | 10 | 11 |
| 10 | Germany | 103 | 3rd February 2026 – 26th June 2026 | 7 | 0 | 0 | 7 | 10 |
| Date | Time | User | Type | Name | Attribute | ||
|---|---|---|---|---|---|---|---|
| 1221 | 16th May 2026 | 13:28:35 UTC | baz9 | list | Crags Without Coordinates | list_definition | |
|
Before
select
'<a href="/crag/' || c.crag_id || '">' || c.crag_name || '</a>' as "Crag"
,co.name as "Country"
,count(distinct cl.climb_id) as "Climbs"
from
crags c
inner join crag_meta cm
on c.crag_id = cm.crag_id
inner join crag_meta_keys cmk
on cm.crag_meta_key_id = cmk.crag_meta_key_id
left join countries co
on cm.value = co.country_id::varchar
left join climbs cl
on c.crag_id = cl.crag_id
and cl.deleted_on is null
where
cmk.key = 'Country'
group by
c.crag_id
,c.crag_name
,co.name
order by
count(distinct cl.climb_id) desc
,c.crag_name
;
After
select
'<a href="' || c.url || '">' || c.crag_name || '</a>' as Crag
,coalesce(cc.cnt_climbs, 0) as Climbs
,case
when c.ukc_url is not null then '<a href="' || c.ukc_url || '">UKC</a>'
else null
end as UKC
,case
when c.eight_a_nu_url is not null then '<a href="' || c.eight_a_nu_url || '">8a.nu</a>'
else null
end as "8a.nu"
,case
when w.thecrag_url is not null then '<a href="' || w.thecrag_url || '">theCrag</a>'
else null
end as "theCrag"
,case
when w.crags27_url is not null then '<a href="' || w.crags27_url || '">27crags</a>'
else null
end as "27crags"
from
crags c
left join (
select
cl.crag_id
,count(*) as cnt_climbs
from
climbs cl
where
cl.deleted_on is null
group by
cl.crag_id
) cc
on cc.crag_id = c.crag_id
left join (
select
cm.crag_id
,max(case when cm.value ilike '%thecrag.com%' then cm.value end) as thecrag_url
,max(
case
when cm.value ilike '%27crags.com%'
or cm.value ilike '%thetopo.com%'
then cm.value
end
) as crags27_url
from
crag_meta cm
where
cm.crag_meta_key_id = 1
group by
cm.crag_id
) w
on w.crag_id = c.crag_id
where
c.deleted_on is null
and c.group_crag_id is null
and c.latitude is null
and c.longitude is null
order by
coalesce(cc.cnt_climbs, 0) desc
,c.crag_name
Diff
--- before
|
|||||||
| 1222 | 16th May 2026 | 13:27:14 UTC | baz9 | list | Crags Without Coordinates | list_definition | |
|
Before
select
'<a href="/crag/' || c.crag_id || '">' || c.crag_name || '</a>' as "Crag"
,co.name as "Country"
,count(distinct cl.climb_id) as "Climbs"
from
crags c
inner join crag_meta cm
on c.crag_id = cm.crag_id
inner join crag_meta_keys cmk
on cm.crag_meta_key_id = cmk.crag_meta_key_id
left join countries co
on cm.value = co.country_id::varchar
left join climbs cl
on c.crag_id = cl.crag_id
and cl.deleted_on is null
where
cmk.key = 'Country'
group by
c.crag_id
,c.crag_name
,co.name
order by
c.crag_name
;
After
select
'<a href="/crag/' || c.crag_id || '">' || c.crag_name || '</a>' as "Crag"
,co.name as "Country"
,count(distinct cl.climb_id) as "Climbs"
from
crags c
inner join crag_meta cm
on c.crag_id = cm.crag_id
inner join crag_meta_keys cmk
on cm.crag_meta_key_id = cmk.crag_meta_key_id
left join countries co
on cm.value = co.country_id::varchar
left join climbs cl
on c.crag_id = cl.crag_id
and cl.deleted_on is null
where
cmk.key = 'Country'
group by
c.crag_id
,c.crag_name
,co.name
order by
count(distinct cl.climb_id) desc
,c.crag_name
;
Diff
--- before
|
|||||||
| 1223 | 16th May 2026 | 13:25:02 UTC | baz9 | list | Crags Without Coordinates | list_definition | |
|
Before
select
'<a href="' || c.url || '">' || c.crag_name || '</a>' as Crag
,coalesce(cc.cnt_climbs, 0) as Climbs
,case
when c.ukc_url is not null then '<a href="' || c.ukc_url || '">UKC</a>'
else null
end as UKC
,case
when c.eight_a_nu_url is not null then '<a href="' || c.eight_a_nu_url || '">8a.nu</a>'
else null
end as "8a.nu"
,case
when w.thecrag_url is not null then '<a href="' || w.thecrag_url || '">theCrag</a>'
else null
end as "theCrag"
,case
when w.crags27_url is not null then '<a href="' || w.crags27_url || '">27crags</a>'
else null
end as "27crags"
from
crags c
left join (
select
cl.crag_id
,count(*) as cnt_climbs
from
climbs cl
where
cl.deleted_on is null
group by
cl.crag_id
) cc
on cc.crag_id = c.crag_id
left join (
select
cm.crag_id
,max(case when cm.value ilike '%thecrag.com%' then cm.value end) as thecrag_url
,max(
case
when cm.value ilike '%27crags.com%'
or cm.value ilike '%thetopo.com%'
then cm.value
end
) as crags27_url
from
crag_meta cm
where
cm.crag_meta_key_id = 1
group by
cm.crag_id
) w
on w.crag_id = c.crag_id
where
c.deleted_on is null
and c.group_crag_id is null
and c.latitude is null
and c.longitude is null
order by
coalesce(cc.cnt_climbs, 0) desc
,c.crag_name
After
select
'<a href="/crag/' || c.crag_id || '">' || c.crag_name || '</a>' as "Crag"
,co.name as "Country"
,count(distinct cl.climb_id) as "Climbs"
from
crags c
inner join crag_meta cm
on c.crag_id = cm.crag_id
inner join crag_meta_keys cmk
on cm.crag_meta_key_id = cmk.crag_meta_key_id
left join countries co
on cm.value = co.country_id::varchar
left join climbs cl
on c.crag_id = cl.crag_id
and cl.deleted_on is null
where
cmk.key = 'Country'
group by
c.crag_id
,c.crag_name
,co.name
order by
c.crag_name
;
Diff
--- before
|
|||||||
| 1224 | 16th May 2026 | 13:24:35 UTC | baz9 | list | Crags with 'Country' Meta | list_description | |
|
Before
Lists any crags that have a `country` meta applied.
After
Lists all crags that have a `country` meta applied.
Diff
--- before
|
|||||||
| 1225 | 16th May 2026 | 13:24:35 UTC | baz9 | list | Crags with 'Country' Meta | list_description_pretty | |
|
Before
<p>Lists any crags that have a <code>country</code> meta applied.</p>
After
<p>Lists all crags that have a <code>country</code> meta applied.</p>
|
|||||||
| 1226 | 16th May 2026 | 13:23:56 UTC | baz9 | list | Crags with 'Country' Meta | list_definition | |
|
Before
select
c.crag_id
,c.crag_name
,co.name as country
from
crags c
inner join crag_meta cm
on c.crag_id = cm.crag_id
inner join crag_meta_keys cmk
on cm.crag_meta_key_id = cmk.crag_meta_key_id
left join countries co
on cm.value = co.country_id::varchar
where
cmk.key = 'Country'
order by
c.crag_name
;
After
select
'<a href="/crag/' || c.crag_id || '">' || c.crag_name || '</a>' as "Crag"
from
crags c
inner join crag_meta cm
on c.crag_id = cm.crag_id
inner join crag_meta_keys cmk
on cm.crag_meta_key_id = cmk.crag_meta_key_id
where
cmk.key = 'Country'
order by
c.crag_name
;
Diff
--- before
|
|||||||
| 1227 | 16th May 2026 | 13:20:43 UTC | baz9 | list | Crags with 'Country' Meta | list_description_pretty | |
|
Before
None
After
<p>Lists any crags that have a <code>country</code> meta applied.</p>
|
|||||||
| 1228 | 16th May 2026 | 13:20:43 UTC | baz9 | list | Crags with 'Country' Meta | list_definition | |
|
Before
None
After
select
c.crag_id
,c.crag_name
,co.name as country
from
crags c
inner join crag_meta cm
on c.crag_id = cm.crag_id
inner join crag_meta_keys cmk
on cm.crag_meta_key_id = cmk.crag_meta_key_id
left join countries co
on cm.value = co.country_id::varchar
where
cmk.key = 'Country'
order by
c.crag_name
;
Diff
--- before
|
|||||||
| 1229 | 16th May 2026 | 13:20:43 UTC | baz9 | list | Crags with 'Country' Meta | list_name | |
|
Before
None
After
Crags with 'Country' Meta
|
|||||||
| 1230 | 16th May 2026 | 13:20:43 UTC | baz9 | list | Crags with 'Country' Meta | list_description | |
|
Before
None
After
Lists any crags that have a `country` meta applied.
Diff
--- before
|
|||||||
| 1231 | 16th May 2026 | 13:20:43 UTC | baz9 | list | Crags with 'Country' Meta | list_type_id | |
|
Before
None
After
6
|
|||||||
| 1232 | 16th May 2026 | 13:20:43 UTC | baz9 | list | Crags with 'Country' Meta | list_type_name | |
|
Before
None
After
Admin
|
|||||||
| 1233 | 16th May 2026 | 13:02:28 UTC | baz9 | crag | Boronia Point | Website | |
|
Before
None
After
https://www.thecrag.com/en/climbing/australia/blue-mountains/boronia-point
|
|||||||
| 1234 | 16th May 2026 | 10:31:58 UTC | baz9 | crag | Big Top | Website | |
|
Before
None
After
https://www.thecrag.com/en/climbing/australia/blue-mountains/big-top
|
|||||||
| 1235 | 16th May 2026 | 10:31:34 UTC | baz9 | crag | Big Top | longitude | |
|
Before
None
After
150.257915
|
|||||||
| 1236 | 16th May 2026 | 10:31:34 UTC | baz9 | crag | Big Top | latitude | |
|
Before
None
After
-33.64671
|
|||||||
| 1237 | 16th May 2026 | 10:29:46 UTC | baz9 | crag | Stob Coire Sputan Dearg | latitude | |
|
Before
None
After
57.068793
|
|||||||
| 1238 | 16th May 2026 | 10:29:46 UTC | baz9 | crag | Stob Coire Sputan Dearg | longitude | |
|
Before
None
After
-3.649006
|
|||||||
| 1239 | 16th May 2026 | 00:54:34 UTC | baz9 | climb | Two Hands | Website | |
|
Before
None
After
https://www.thecrag.com/en/climbing/australia/sutherland/route/15264229
|
|||||||
| 1240 | 16th May 2026 | 00:53:33 UTC | baz9 | climb | Two Hands | crag_id | |
|
Before
None
After
34381
|
|||||||