{
  "name": "Bali surf spots and surf schools dataset: 35 reviewed records",
  "canonicalUrl": "https://carvingmates.com/id/bali/data/surf-spots-and-schools",
  "version": "2026.08.06.3",
  "reviewedAt": "2026-08-06",
  "methodology": "Each row identifies the source used for its fields, records the review date and preserves uncertainty. The complete snapshot appears as HTML and JSON, each table has a CSV download, and an SVG summarizes coverage. This is dated editorial research, not live inventory, paid placement, an endorsement or a substitute for same-day confirmation.",
  "coverage": "Bali, Indonesia",
  "recordCount": 35,
  "groups": [
    {
      "key": "surf-spots",
      "label": "Bali surf spots and areas",
      "sourceType": "Named specialist spot guide plus official marine-safety context",
      "recordCount": 20,
      "records": [
        {
          "name": "Kuta Beach",
          "coast": "Urban southwest, Badung",
          "break": "Multi-bank sand beachbreak; lefts and rights rather than one fixed peak.",
          "level": "Beginner with an instructor and a small bank; stronger days suit more experienced surfers.",
          "window": "Around April or May to October.",
          "verify": "Rips on bigger days, crowd, runoff after rain, exact bank, tide and beach flags.",
          "source_url": "https://www.surfline.com/surf-report/kuta-beach/5842041f4e65fad6a7708d3e/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Legian / Padma",
          "coast": "Immediately north of Kuta",
          "break": "Exposed beachbreaks over moving banks; Padma and Legian are different peaks and Padma can include rock.",
          "level": "Intermediate by default at Padma; a novice only on a gentle Legian bank selected by an instructor.",
          "window": "Around May to October.",
          "verify": "Rips at Legian, rock and crowd at Padma, the bank, current and swimming zones.",
          "source_url": "https://www.surfline.com/surf-report/legian-beach/640a67f4451905d293a6630d",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Seminyak / Double Six–Blue Ocean",
          "coast": "Legian–Seminyak strip",
          "break": "Short, shifting beach peaks over sand with scattered rock; some banks close out abruptly.",
          "level": "Beginner only in supervised whitewater or a small bank; intermediate as power increases.",
          "window": "Around May to October.",
          "verify": "Rips in solid swell, closeouts, mixed bottom and water quality after rain.",
          "source_url": "https://www.surfline.com/surf-report/seminyak/640a67e745190540b0a65fe9/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Batu Bolong / Old Man’s",
          "coast": "Canggu, southwest coast",
          "break": "Mellow right over mixed sand and reef, with neighbouring peaks that behave differently.",
          "level": "Beginner–intermediate when small or moderate and properly instructed; not a learner wave when large or saturated.",
          "window": "Dry season, roughly April to October.",
          "verify": "Reef contact, many boards, murky water and the exact peak selected.",
          "source_url": "https://www.surfline.com/surf-report/old-mans-batu-bolong/605112930a374f33cf5f8f05/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Berawa",
          "coast": "Southern end of the Canggu corridor",
          "break": "Several peaks; the main beachbreak mixes sand and rock, while nearby reef peaks have a different character.",
          "level": "Intermediate by default; a progressing beginner only at a small peak with guidance.",
          "window": "Around April to October.",
          "verify": "Rock, runoff after rain, material differences between peaks, bottom, tide and current.",
          "source_url": "https://www.surfline.com/surf-report/berawa-beach/6051139a7c51e500d72c538e/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Echo Beach / Sandbar",
          "coast": "Canggu–Echo Beach",
          "break": "A zone, not one break: Sandbar is a sand A-frame; Echo Left and Stairs use shallow reef, with River Mouth separate again.",
          "level": "Intermediate–advanced; Sandbar can demand advanced or expert ability. Not a learner default.",
          "window": "Around April to October.",
          "verify": "Currents, crowd, moving banks, runoff, reef and the precise named peak.",
          "source_url": "https://www.surfline.com/travel/zones/west-bali/surf-guide/canggu/5842041f4e65fad6a7708d40",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Pererenan",
          "coast": "Immediately northwest of Echo Beach",
          "break": "Beach-and-reef break over reef, rock and sand; shorter left and longer right.",
          "level": "Experienced intermediate–advanced.",
          "window": "Around May to October.",
          "verify": "Shallow inside reef at low tide, rips, rock, crowd and river pollution after rain.",
          "source_url": "https://www.surfline.com/surf-report/pererenan/6269dc2c491aa9ad66235f52/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Kedungu",
          "coast": "Tabanan, near Tanah Lot",
          "break": "Three-break zone; the main peak is an A-frame over a submerged reef platform.",
          "level": "Intermediate by default; beginner only on a gentle small peak chosen by an instructor.",
          "window": "No reliable spot-specific month range published across the reviewed sources.",
          "verify": "Shallow reef, rock and urchins at low tide, powerful high-tide shorebreak, access and local ceremonies.",
          "source_url": "https://waveexplorers.com/guide/indonesia/bali/surfing-kedungu/",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Balian",
          "coast": "West Tabanan, river mouth",
          "break": "Variable river-mouth zone combining beach, rock or reef and moving banks, usually favouring lefts.",
          "level": "Intermediate as a baseline; easier sections still require small conditions and supervision.",
          "window": "May to October as a tendency, not a guarantee.",
          "verify": "Rip, rock, shifting position and murky or polluted water after rain; inspect the river.",
          "source_url": "https://www.surfline.com/travel/zones/west-bali/surf-guide/balian/5842041f4e65fad6a7708d41",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Medewi",
          "coast": "West coast, Jembrana",
          "break": "Long left point over cobble, rock and sand; nearby beach sections differ from the point.",
          "level": "Intermediate at the point; novice only on a separate small sandy section selected by a guide.",
          "window": "Around April or May to October.",
          "verify": "Rocky entry and exit, impacts, crowd, tide and murky water after rain.",
          "source_url": "https://www.surfline.com/surf-report/medewi/5842041f4e65fad6a7708d43/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Uluwatu",
          "coast": "Southwest Bukit, Pecatu",
          "break": "Chain of coral and lava lefts: The Peak, Racetrack, Temples, Outside Corner and Bombie.",
          "level": "Advanced–expert; a small Peak may suit a solid reef-experienced intermediate, never a novice.",
          "window": "Dry season, roughly April to October.",
          "verify": "Shallow reef, currents, cave entry or exit, actual size and named peak; Racetrack low tide is especially demanding.",
          "source_url": "https://www.surfline.com/surf-report/uluwatu/5842041f4e65fad6a7708b4b/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Padang Padang Left",
          "coast": "West Bukit, Pecatu",
          "break": "Heavy, hollow left over coral and lava; this is the main break, not Padang Right or “Baby Padang”.",
          "level": "Advanced–expert and professional when classic.",
          "window": "Around May to September; some guidance extends the tendency into October.",
          "verify": "Exposed sharp reef, dangerous low tide, big-water entry or exit and crowd.",
          "source_url": "https://www.surfline.com/surf-report/padang-padang/5842041f4e65fad6a7708d44/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Bingin",
          "coast": "West Bukit, Pecatu",
          "break": "Short, fast and sometimes hollow left over shallow lava and coral reef.",
          "level": "Intermediate–advanced.",
          "window": "Around April or May to October.",
          "verify": "Exposed reef, tide, crowd, entry or exit and rapid increase in intensity with size.",
          "source_url": "https://www.surfline.com/surf-report/bingin/5842041f4e65fad6a7708d3b/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Balangan",
          "coast": "West Bukit, Badung",
          "break": "Left reef with shifting peaks and long walls over coral-covered lava.",
          "level": "Intermediate–advanced.",
          "window": "Around April to October.",
          "verify": "Coral impacts, growing size, long paddle-backs after long rides and tide.",
          "source_url": "https://www.surfline.com/surf-report/balangan/5842041f4e65fad6a7708d3a/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Dreamland",
          "coast": "West Bukit, between Bingin and Balangan",
          "break": "Beachbreak with reef and rock sections; sand, rock and reef bottom with lefts and rights.",
          "level": "Intermediate by default; novice only on a small day, suitable section and with an instructor.",
          "window": "Around April or May to October.",
          "verify": "Submerged rock, shorebreak, poor shape in large swell, the exact bank and sector.",
          "source_url": "https://www.surfline.com/surf-report/dreamland/5842041f4e65fad6a7708d3c/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Impossibles",
          "coast": "Reef chain between Padang Padang and Bingin",
          "break": "Long left over shallow lava and coral reef; fast and prone to sectioning.",
          "level": "Intermediate–advanced.",
          "window": "Around April or May to October.",
          "verify": "Shallow reef, hard-to-connect sections, long paddles, crowd and entry or exit route.",
          "source_url": "https://www.surfline.com/surf-report/impossibles/5842041f4e65fad6a7708d42/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Nusa Dua",
          "coast": "East / southeast Bukit",
          "break": "Broad open-ocean reef zone with several predominantly right-hand peaks; not one wave.",
          "level": "Intermediate–advanced, becoming advanced with size.",
          "window": "Around November to March or April.",
          "verify": "Strong current, surprise sets, distant reef, deceptive size from shore, exact peak, paddle or boat and exit.",
          "source_url": "https://www.surfline.com/travel/zones/east-bali/surf-guide/nusa-dua/5842041f4e65fad6a7708d47",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Sanur Reef",
          "coast": "East coast, Denpasar",
          "break": "Right reef over extremely shallow sharp coral; not the sheltered lagoon, Baby Reef or Hyatt Reef.",
          "level": "Advanced–expert.",
          "window": "Around October or November to April.",
          "verify": "Low tide exposes reef, meaningful swell is required and the named break must be confirmed.",
          "source_url": "https://www.surfline.com/surf-report/sanur/5842041f4e65fad6a7708d4b/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Serangan",
          "coast": "Southeast, Denpasar",
          "break": "Multiple peaks over sharp shallow reef; larger swell can produce a powerful hollow right.",
          "level": "Intermediate–advanced.",
          "window": "Around October to April.",
          "verify": "Reef, differences between peaks, sharp change with larger swell, current, tide and present-day access.",
          "source_url": "https://www.surfline.com/surf-report/serangan/5842041f4e65fad6a7708d49/spot-guide",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Keramas",
          "coast": "East coast, Gianyar",
          "break": "High-performance right over coral-covered lava in front of a black-sand beach.",
          "level": "Intermediate–advanced; advanced with size.",
          "window": "Can work year-round; sources favour November to April and low-wind mornings.",
          "verify": "Shallow sections, rips, crowd, early wind, tide and exit.",
          "source_url": "https://www.surfline.com/surf-report/keramas/5842041f4e65fad6a7708d4e/spot-guide",
          "reviewed_at": "2026-08-06"
        }
      ]
    },
    {
      "key": "surf-schools",
      "label": "Bali surf lesson providers",
      "sourceType": "Official provider website",
      "recordCount": 15,
      "records": [
        {
          "name": "Bali Green Surf School",
          "price": "Group IDR 400k pp; private 1:1 IDR 550k pp (“NOW” promotion)",
          "durationRatio": "2 hours; group 1 instructor to 2–3 students; private 1:1",
          "included": "All equipment and refreshments stated; teaching language not published",
          "verify": "Promotion validity, teaching beach, transport, complete inclusions and terms",
          "source_url": "https://www.baligreensurfschool.com/surf-lessons-bali",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "We Surf Bali",
          "price": "Beginner lesson IDR 450k pp; coaching IDR 550k pp",
          "durationRatio": "2 hours; beginner 1:2; coaching up to 3 students per instructor",
          "included": "Board and rash guard; reef booties excluded; teaching language not published",
          "verify": "Batu Bolong or Legian location, current conditions and cancellation",
          "source_url": "https://www.wesurfbali.com/",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Suka Surf Bali",
          "price": "Private IDR 500k pp; semi-private IDR 450k pp; group IDR 400k pp",
          "durationRatio": "Up to 1.5 hours in water; private 1:1; other formats 2:1; group minimum 6",
          "included": "Board, rash guard and zinc; English stated",
          "verify": "Instructor, pickup, IDR 200k pp deposit and cancellation",
          "source_url": "https://www.sukasurfbali.com/price-list",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Peak Surf Bali",
          "price": "Private/kids IDR 700k pp; semi IDR 600k pp; group 3+ IDR 500k pp",
          "durationRatio": "2 hours; private/kids 1:1; semi 2 people; group 3+",
          "included": "Board rental; English, Bahasa Indonesia, Nias and “a touch of Spanish” stated",
          "verify": "Break choice, coach availability, pickup and complete terms",
          "source_url": "https://peak-surfbali.com/",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Surf Is Up Bali",
          "price": "Semi-private IDR 450k pp; private IDR 550k pp",
          "durationRatio": "2 hours in water; private 1:1; semi-private 2:1",
          "included": "Board and rash guard; Canggu pickup/drop-off; teaching language not published",
          "verify": "Exact beach, transport area, current price and cancellation",
          "source_url": "https://balisurfschool.com/book-now/",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Bali Surf Class",
          "price": "1 student USD 25 / IDR 425k; 2 USD 22 / IDR 374k; 3 USD 20 / IDR 340k",
          "durationRatio": "2 hours; instructor ratio not published",
          "included": "Equipment, surf clothing, water and locker; teaching language not published",
          "verify": "Whether 2–3 student figures are totals or pp, current exchange rate and terms",
          "source_url": "https://balisurfclass.com/",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "UP2U Surf School",
          "price": "Beginner IDR 200k pp; private 325k pp; semi-private 250k pp; group 190k pp",
          "durationRatio": "2 hours; private 1:1; semi 1:2; group minimum 3, maximum not published",
          "included": "Board, leash, rashie and coach; photos except some promotions; language not published",
          "verify": "Transport excluded, non-refundable deposit and cancellation percentages",
          "source_url": "https://www.up2usurfschool.com/taindex.php",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Chandra’s Surfing Bali",
          "price": "Private beginner IDR 200k pp/1h or 300k pp/2h; group 2+ 150k pp/1h or 200k pp/2h",
          "durationRatio": "1 or 2 hours; maximum 3 students per instructor; private groups are not mixed",
          "included": "Suitable board, leash and rash guard; teaching language not published",
          "verify": "50% deposit, cash balance and multi-day payment conditions",
          "source_url": "https://chandras-surfing-bali.com/prices/",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Padang Padang Surf Camp",
          "price": "Surf-camp guests GBP 20/1 session or 35/2; non-residents GBP 29/1 or 47/2",
          "durationRatio": "Maximum 6; page states 2 hours while FAQ says normally 1.5–2 hours",
          "included": "Board and rash vest; transport to the break for non-residents; language not published",
          "verify": "Session duration, selected Bukit break, transport to/from camp and cancellation",
          "source_url": "https://www.balisurfingcamp.com/beginner-surf-lessons",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Balumba Surf School",
          "price": "Private IDR 600k; semi-private 900k; group 400k pp",
          "durationRatio": "2 hours; private 1:1; semi 2:1; group page conflicts between 3:1 and maximum 5",
          "included": "Board and zinc; teaching language not published",
          "verify": "Whether private/semi prices are total or pp and the actual group ratio",
          "source_url": "https://www.balumbasurfschool.com/",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Baruna Surf Culture",
          "price": "Happy Beginner IDR 750k pp per session",
          "durationRatio": "Up to 2 hours; 2 students per instructor",
          "included": "Board, long-sleeve rash guard and video every two sessions; language not published",
          "verify": "Kedungu meeting point, optional IDR 150k pp transfer each way and cancellation",
          "source_url": "https://www.baruna.ch/",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Off Peak Surf Bali",
          "price": "IDR 450k pp; 5 sessions IDR 2M; 10 sessions IDR 3.5M",
          "durationRatio": "90 minutes; maximum 4 students per instructor",
          "included": "Board and rash guard; teaching language not published",
          "verify": "Exact Canggu meeting point, current pack validity and rescheduling terms",
          "source_url": "https://www.offpeakbali.com/",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Sanur Surf School",
          "price": "Private IDR 750k pp; semi-private IDR 600k pp",
          "durationRatio": "2 hours: 30-minute briefing and 90 minutes in water; semi-private ratio not published",
          "included": "Private lists board, UV shirt and boat transfer; language not published",
          "verify": "Individual payment/cancellation, package terms and exact teaching location",
          "source_url": "https://www.sanursurf.com/surf",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Surf Paradise Bali",
          "price": "Group IDR 650k pp; private IDR 700k pp",
          "durationRatio": "Cards state 2 hours while another section says 2.5; group details conflict between 1:2, maximum 4 and maximum 3",
          "included": "Board, rash guard/swimsuit and Nusa Dua transfer; language not published",
          "verify": "Confirm duration, actual group ratio, pickup area and cancellation before booking",
          "source_url": "https://surfparadisebali.com/",
          "reviewed_at": "2026-08-06"
        },
        {
          "name": "Surf Medewi / Bali Wave Experience",
          "price": "Private IDR 500k / USD 30 pp; semi-private 400k / USD 25 pp; 3 sessions 1.3M / USD 75 pp",
          "durationRatio": "1.5 hours; private 1:1; semi-private 1:2",
          "included": "All gear stated; teaching language not published",
          "verify": "Currency used, extra Balian transfer cost, deposit and cancellation",
          "source_url": "https://surfmedewi.com/daily-surf-lesson-guiding/",
          "reviewed_at": "2026-08-06"
        }
      ]
    }
  ]
}
