The Antibes List
Five editorial picks, ranked by the only filter that matters: why you are dining.
Louroc
The Eden-Roc's clifftop dining terrace — the most beautiful summer restaurant in France.
Les Pêcheurs
Cap d'Antibes Beach Hotel's starred seafood room — Mediterranean haute cuisine over the rocks.
Le Figuier de Saint-Esprit
The Old Town's beloved fig-tree garden — Christian Morisset's life's work in a candlelit Provençal courtyard.
La Passagère
Hôtel Belles Rives in Juan-les-Pins — Fitzgerald's bay, a Michelin star, and the longest sea-facing terrace on the cap.
Maison de Bacon
The Riviera's most expensive bouillabaisse — and possibly its best — served at the same address since 1948.
Best for First Date in Antibes
Intimate, conversation-friendly rooms. Impressive without being intimidating. The tables where first impressions are made.
Le Figuier de Saint-Esprit
The Old Town's beloved fig-tree garden — Christian Morisset's life's work in a candlelit Provençal courtyard.
La Passagère
Hôtel Belles Rives in Juan-les-Pins — Fitzgerald's bay, a Michelin star, and the longest sea-facing terrace on the cap.
Best for Business Dinner in Antibes
Power tables, private rooms, considered wine lists. Where the deal gets done.
Louroc
The Eden-Roc's clifftop dining terrace — the most beautiful summer restaurant in France.
Les Pêcheurs
Cap d'Antibes Beach Hotel's starred seafood room — Mediterranean haute cuisine over the rocks.
The Top Five in Antibes
Ranked against a single question: if you had one night in Antibes, where would you go?
Louroc
The Eden-Roc's clifftop dining terrace — the most beautiful summer restaurant in France.
Les Pêcheurs
Cap d'Antibes Beach Hotel's starred seafood room — Mediterranean haute cuisine over the rocks.
Le Figuier de Saint-Esprit
The Old Town's beloved fig-tree garden — Christian Morisset's life's work in a candlelit Provençal courtyard.
La Passagère
Hôtel Belles Rives in Juan-les-Pins — Fitzgerald's bay, a Michelin star, and the longest sea-facing terrace on the cap.
Maison de Bacon
The Riviera's most expensive bouillabaisse — and possibly its best — served at the same address since 1948.
The Antibes Dining Guide
Antibes occupies a quieter register than its louder Riviera neighbours. Cannes is louder; Saint-Tropez is more obvious; Nice is bigger. Antibes has the longest yacht harbour in the Mediterranean, a fortified Old Town that the Romans laid out, and a Cap — Cap d'Antibes — that has hosted European luxury since the 1880s. The dining culture mirrors the geography: serious hotel restaurants on the Cap, a constellation of Michelin-starred kitchens inside the ramparts, and a working seaport that still supplies the day's fish to most of them.
What makes the dining unusually good is the concentration of talent in a small footprint. Within twenty minutes of the harbour you can eat at Louroc inside the Hôtel du Cap-Eden-Roc — arguably the most beautiful summer restaurant in France — at Les Pêcheurs over the rocks of Cap d'Antibes, at Le Figuier de Saint-Esprit inside the medieval Old Town, at La Passagère on the terrace of the Belles Rives in Juan-les-Pins, and at Bacon, the institution that has been serving the Riviera's most expensive bouillabaisse since 1948. No other small Riviera town runs this density of serious cooking.
Neighbourhoods
Reservations & Practical Notes
Louroc and Les Pêcheurs are summer-only — open roughly mid-May to early October, booking five to eight weeks ahead in July and August. Le Figuier de Saint-Esprit and L'Arazur run year-round. Dress is Riviera-formal at the Cap restaurants — jacket strongly preferred at dinner — and smart casual elsewhere. Tipping is not expected (service is included) but a discreet 5–10% on top is becoming common in the top rooms. English, French, and Italian are universal in the serious kitchens; Russian is increasingly offered. Lunch on the Cap is the rare meal that justifies a daytime dress code.
For a deeper editorial read, see our ongoing Editorial coverage — including pieces on the Best Restaurants for Every Occasion, and our
/* RFK_UNIVERSAL_FILTER_V2 - sitewide occasion filter; reads data-occ + aliases */
(function(){
var SLUGS = {'first-date':'First Date','close-a-deal':'Close a Deal','birthday':'Birthday','impress-clients':'Impress Clients','proposal':'Proposal','solo-dining':'Solo Dining','team-dinner':'Team Dinner'};
var ALIASES = {'date-night':'first-date','anniversary':'birthday','romantic':'proposal'};
function canonical(s){ s=(s||'').trim().toLowerCase(); return ALIASES[s]||s; }
function parseHash(){ var h=(location.hash||'').replace(/^#/,''); var m=h.match(/occasion=([a-z-]+)/i); return m?canonical(m[1]):''; }
function tagSlug(t){
var s = canonical(t.getAttribute('data-occasion')||'');
if (s) return s;
var href = t.getAttribute('href')||'';
var m = href.match(/#occasion=([a-z-]+)/i);
return m ? canonical(m[1]) : '';
}
function isAllTag(t){
if (tagSlug(t)) return false;
var href = (t.getAttribute('href')||'').trim();
if (!href || href === '#' || href === '#all') return true;
return /^\/city\/[^\/?#]+\/?$/.test(href.split('#')[0].split('?')[0]);
}
function cardOccasions(card){
var raw = (card.getAttribute('data-occ') || card.getAttribute('data-occasions') || card.getAttribute('data-occasion') || '');
var set = {};
raw.split(/[,;\s]+/).forEach(function(s){ var c=canonical(s); if(c) set[c]=1; });
return set;
}
function badgeMatches(card, slug){
var label = SLUGS[slug];
if (!label) return false;
var found = false;
card.querySelectorAll('.card-occasion-badge, .card-occasion, .card-occ, .occasion-badge, .card-badge').forEach(function(b){
var t = (b.textContent||'').trim().toLowerCase();
if (t === label.toLowerCase()) found = true;
});
return found;
}
function cardMatches(card, slug){
if (!slug) return true;
var occ = cardOccasions(card);
if (Object.keys(occ).length) return !!occ[slug];
return badgeMatches(card, slug);
}
function ensureEmptyState(){
var grid = document.querySelector('.restaurant-grid');
if (!grid) return;
var msg = document.getElementById('rfk-empty-state');
if (!msg) {
msg = document.createElement('div');
msg.id = 'rfk-empty-state';
msg.style.cssText = 'display:none;padding:48px 24px;margin:24px 0 64px;border:1px solid rgba(201,168,76,0.3);background:rgba(22,20,15,0.5);text-align:center;font-family:DM Sans,sans-serif;color:#B8B5A8;';
grid.parentNode.insertBefore(msg, grid.nextSibling);
}
}
function renderEmptyState(slug, shown){
var msg = document.getElementById('rfk-empty-state');
if (!msg) return;
if (shown > 0 || !slug) { msg.style.display='none'; return; }
var label = SLUGS[slug] || slug;
msg.innerHTML =
' No '+label+' picks listed for this city yet. See the global guide to '+label+' restaurants curated across every city we cover.