Domande frequenti.
Risposte verbose, niente marketing-speak. Se manca qualcosa, scrivici a support@rankly.it e aggiorniamo questa pagina.
Generale
Cosa è Rankly?
Rankly è un servizio SaaS italiano di gestione tornei competitivi 1v1 con sistema di ranking integrato. Nasce per la community Beyblade italiana ma l'engine è generico: copre formati Swiss, Single Elimination e Double Elimination, con tiebreaker reali (differenza punti, Buchholz, head-to-head) e standings live per spettatori e streaming.
Per chi è pensato?
Per organizzatori di tornei amatoriali e competitivi che fanno almeno 1 evento al mese con 16-128 partecipanti — community Beyblade, scacchi locali, esports indoor, padel circoli, club di videogiochi competitivi 1v1. Se fai un torneo l'anno, gli strumenti gratuiti generalisti potrebbero bastarti. Se ne fai 5+ all'anno e ti scoccia ogni volta riconfigurare uno spreadsheet o un'app limitata, Rankly è pensato per te.
In cosa siete diversi da Challonge / Toornament / Battlefy?
Tre differenze principali: (1) score per match registrato come due integer separati (p1Points, p2Points), non stringa libera — questo abilita tiebreaker pointDiff reale, mentre Challonge salva "3-1" come testo e perde la metrica differenza punti; (2) standings live push via SSE — gli spettatori non devono fare F5, latenza <200ms; (3) check-in parity-aware con sorteggio dei gironi che evita bye sistematici al round 1. Confronto dettagliato su /perche-rankly.
È in italiano?
Sì. UI, supporto, fatturazione: tutto in italiano. L'inglese è in roadmap v2 per chi vuole organizzare tornei multilingua. Per ora il focus è la community italiana che si è stancata di tradurre mentalmente le label di Challonge.
Posso usarlo per giochi diversi da Beyblade?
Sì. L'engine è generico per qualunque torneo competitivo 1v1 a turni con esito vincente/perdente. Lo schema score (p1Points, p2Points) accetta qualunque range numerico: il preset 0-9 è la validazione che attivi nel wizard quando crei un torneo Beyblade X, ma per scacchi (1-0 / 0-1), padel (set 6-4), esports (round vinti) si configura un preset diverso. Pairing Swiss e bracket SE/DE funzionano identicamente.
Pricing e fatturazione
Quanto costa?
Il piano Standard è 29€/mese (IVA esclusa). Include tornei illimitati, partecipanti illimitati per torneo, Swiss + SE + DE, standings live SSE, check-in parity-aware, API REST. Add-on Campionato 199€ una tantum lifetime per attivare la feature campionato (ranking stagionale aggregato) sulla tua organizzazione.
C'è un piano gratis?
No. Abbiamo valutato il modello free-with-ads alla Challonge e l'abbiamo scartato per due motivi: (1) gli ads sulle pagine pubbliche distruggono l'esperienza spettatore/stream; (2) il free di altri prodotti tende a essere artificiosamente limitato per spingerti al paid, e preferiamo essere onesti col prezzo. Trial 14 giorni gratis con carta di pagamento upfront e auto-charge a fine trial.
Come funziona il trial 14 giorni?
Inserisci una carta di pagamento all'iscrizione, ma non ti viene addebitato nulla per i primi 14 giorni. Al giorno 11 ricevi un'email di promemoria. Al giorno 14, se non hai cancellato, parte l'addebito ricorrente di 29€/mese. Puoi cancellare in qualsiasi momento prima del giorno 14 senza alcun addebito. Questo modello è conforme alle linee guida EU (Direttiva 2011/83/UE) sui contratti di vendita a distanza.
Posso cancellare in qualsiasi momento?
Sì. Dal pannello fatturazione clicchi "Cancella abbonamento". Resti attivo fino alla fine del periodo già pagato (es. cancelli al giorno 20, resti fino al giorno 30 del mese in corso). Nessun lock-in, nessuna penale.
Cosa succede ai miei tornei se cancello l'abbonamento?
I tornei rimangono in lettura nel database per 90 giorni dopo la cancellazione, in modo che tu possa riattivare l'account o esportare i dati. Dopo 90 giorni vengono archiviati (hard delete dei match completati, soft delete dei tornei). Le pagine pubbliche degli spettatori restano raggiungibili durante i 90 giorni con un banner "torneo archiviato".
Cosa contiene esattamente l'add-on Campionato?
Il Campionato è un meta-evento stagionale che aggrega più tornei della stessa organizzazione in un ranking unico. Definisci la stagione (es. 2026), il sistema di punteggio per posizione (es. 1° posto = 100pt, 2° = 80pt, ecc.), e i tornei eleggibili (manualmente o tutti i tornei della stagione). Il ranking si aggiorna live a fine di ogni torneo, con pagina pubblica dedicata.
Perché il Campionato è lifetime invece di mensile?
Perché chi organizza un campionato lo fa una volta l'anno e l'attivazione tier mensile penalizzerebbe chi paga 12 mensilità solo per usarlo 2 mesi. Lifetime significa: paghi 199€ una volta, la feature resta attiva sulla tua organizzazione per sempre, anche se cambi piano Standard (es. pausi e riattivi). Modello a costo fisso una tantum, allineato all'uso reale.
Cos'è l'add-on Federation Pack e a chi serve?
Il Federation Pack (299€ una tantum lifetime) è pensato per federazioni, leghe e reti di club che vogliono dare identità autonoma ai propri affiliati. Sblocca la creazione di "club affiliati" sotto la tua organizzazione: ogni club ha uno slug pubblico, una dashboard e un branding propri, ma condivide subscription Standard e amministratori con la federazione. I tornei dei club si aggregano automaticamente nei campionati della federazione. Utile a chi gestisce una federazione nazionale (con sezioni regionali), una lega con squadre indipendenti, o una rete di club sotto un singolo cappello organizzativo.
I club affiliati nel Federation Pack devono pagare singolarmente?
No. Il Federation Pack è pagato una volta sola dalla federazione (parent), e tutti i club affiliati ereditano sia la subscription Standard che gli amministratori. Lo staff del club può accedere e gestire la propria dashboard in autonomia (creare tornei, refertare, ecc.), ma la fattura unica resta a carico della federazione. Modello pensato per non scoraggiare l'affiliazione di club piccoli che non vorrebbero pagare 29€/mese ciascuno.
Emettete fattura italiana?
Sì. Stripe gestisce la fatturazione automatica. La fattura include partita IVA italiana di Soloweb S.r.l., reverse charge per clienti B2B EU con VAT ID, IVA 22% per clienti privati italiani.
Funzionalità
Quali formati torneo supportate?
Quattro formati nativi: Swiss (sistema svizzero a girone), Round Robin (girone all'italiana, tutti contro tutti), Single Elimination (bracket a eliminazione diretta) e Double Elimination (bracket a doppia eliminazione winners + losers, senza bracket reset). Sono combinabili in fasi: il format più usato è Swiss qualificatorio a gironi + SE finale per i top X di ogni girone, con promozione automatica tra le fasi.
Come funziona lo score per match?
Ogni match registra {p1Points, p2Points} come due integer separati (non stringa). Range e validazione configurabili per formato di gioco. Preset Beyblade X: 0-9 con no-draw — match standard finisce al 4° punto, finali al 7°, un Extreme Finish vale 3 punti (uno a 6 chiude a 9 in un colpo). UI di reporting con due input numerici da riempire dopo il match.
Come funzionano i tiebreaker negli standings?
L'ordinamento parte sempre dalle vittorie totali — criterio base non configurabile. A parità di vittorie si applica una catena di tiebreaker che l'organizer configura scegliendo tra 10 criteri: differenziale punti, punti segnati, Buchholz (più le varianti Cut-1 e Median-Buchholz), SOS, Cumulative, OMW% in due varianti, e scontro diretto. Il default Beyblade è differenziale punti → Buchholz → scontro diretto: avere il pointDiff prima del Buchholz è essenziale perché un 7-1 vale più di un 7-6. Per il Round Robin il default è differenziale punti → scontro diretto. Ogni torneo ha una vista di debug che mostra il valore di ogni tiebreaker, così i risultati sono verificabili.
Gli arbitri hanno una schermata dedicata?
Sì. Ogni match ha una schermata arbitro pensata per il telefono: tasti grandi per assegnare i punti per tipo di finish, i nickname dei due giocatori (scambiabili destra/sinistra per non creare confusione), e una fotocamera integrata che registra il match e lo rivede al rallentatore (½× o ¼×) quando un punto è dubbio — senza dover uscire dall'app e aprire la fotocamera del telefono. Funziona in portrait e in landscape (video al centro, segnapunti ai lati). La registrazione resta in locale sul dispositivo dell'arbitro, non viene caricata da nessuna parte.
Posso correggere un punteggio inserito per sbaglio?
Sì. Nel girone svizzero il risultato del round in corso è correggibile liberamente; per i round già chiusi serve il consenso dell'head judge, e la correzione aggiorna gli standings ma non ricalcola a cascata i pairing dei round successivi. Nel bracket a eliminazione, correggere un risultato ri-deriva in modo coerente il tabellone a valle.
Cosa vedo a fine torneo?
A torneo concluso Rankly genera un recap completo: classifica finale di tutti i partecipanti, statistiche per giocatore, per girone e per fase, il mix dei tipi di finish dell'evento, e i premi MVP (Campione, Il Distruttore per chi ha chiuso più burst, Extreme King, e altri). Tutto su pagina pubblica, pronto da condividere con la community a fine giornata.
Le standings live funzionano davvero senza refresh?
Sì. Quando l'arbitro riporta un risultato, il backend pubblica un evento sul bus SSE (Server-Sent Events). Lo spettatore che ha la pagina aperta riceve l'evento via EventSource browser e la UI si ri-renderizza in <200ms. Niente WebSocket bidirezionale (overkill per use case unidirezionale), niente polling (sprechi banda e latenza). Heartbeat 25 secondi per evitare timeout Cloudflare/proxy. Reconnect automatico con backoff.
Come funziona il check-in parity-aware?
Quando un player fa check-in il giorno del torneo, il sistema lo sorteggia in un girone, ma con preferenza per assegnazioni che mantengono i gironi a numero pari di player. Risultato concreto: invece di trovarti con un girone da 17 e uno da 15 (= bye al round 1 nel 15), il sistema preferisce dividere 16/16. Se nessuna assegnazione pari è possibile, l'head judge deve dare consenso esplicito prima di avviare la phase (HTTP 409 con error code esplicito).
Posso gestire più tornei contemporaneamente nella stessa organizzazione?
Sì. Un'organizzazione può avere N tornei attivi in parallelo (es. Beyblade X + Beyblade Burst nello stesso giorno, oppure tornei su 2 sedi). Ogni torneo ha le sue iscrizioni, i suoi arbitri, i suoi spettatori. Lo staff dell'organizzazione ha accesso a tutti i tornei.
Posso assegnare arbitri ai singoli gironi?
Sì, e devi farlo prima di aprire il check-in. Vincolo hard: ogni girone deve avere almeno 1 referee. Puoi aggiungere head judge opzionali aggiuntivi (con permessi di override su decisioni controverse). C'è una funzione di auto-suggestion che distribuisce equamente gli arbitri disponibili.
I miei tornei sono visibili pubblicamente?
Sì, su URL pubblico /t/<organizzazione>/<slug-torneo>. La pagina pubblica mostra bracket, standings e risultati in tempo reale. Niente login richiesto per spettatori. La pagina è ottimizzata per overlay Twitch (URL con `?overlay=1` rimuove header/footer). Se vuoi privato, puoi marcare il torneo come "unlisted" (URL diretto funziona ma non appare nella lista pubblica).
Avete una API pubblica?
Sì. API REST versionata /api/v1, JSON, Zod-validated. Endpoint pubblici (no auth) per snapshot live e SSE stream — utili per spettatori, overlay stream, integrazioni terze. Endpoint autenticati per la gestione del torneo via API key Bearer, che generi dal pannello. Documentazione su /docs/api.
Migrazione e import
Posso importare i miei tornei storici da Challonge?
Sì. Rankly importa i tornei già fatti su Challonge: colleghi l'account Challonge, scegli il torneo e l'import legge struttura, partecipanti e match dall'API Challonge v2.1 e li ricrea come fasi Rankly — un girone svizzero seguito da un bracket a eliminazione diventano due fasi distinte. È incluso nel piano Standard senza costi extra.
Posso esportare i dati dei miei tornei?
Sì. Da ogni torneo concluso puoi esportare le standings finali in CSV. Roadmap include export JSON completo (match + standings + tiebreaker breakdown) per backup e integrazioni custom. Esportazione GDPR-compliant del profilo utente: i tuoi tornei + iscrizioni + email scaricabili da pannello profilo.
I miei dati sono al sicuro? E il GDPR?
Hosting in datacenter EU (Vercel EU per il frontend, Railway EU per il backend e database). DPA disponibile su richiesta. Conformità GDPR by-design: niente tracker di terze parti, niente Google Analytics (usiamo Plausible self-hosted), niente cookie banner gigante perché non ci sono cookie non-essenziali. Right-to-be-forgotten gestito da pannello utente.
Supporto
Come funziona il supporto?
Email a support@rankly.it. Risposta in italiano entro 1 giorno lavorativo (di solito molto prima). Non abbiamo un ticket system aziendale — è una persona vera (al momento solo io, in futuro un team piccolo) che ti risponde. Per emergenze il giorno del torneo (es. bug bloccante in produzione), c'è un canale Discord privato per clienti Standard a cui invitiamo all'attivazione.
Avete una community / Discord?
C'è un Discord pubblico Rankly dove gli organizer si confrontano su best practice, formati di torneo, request di feature. Roadmap pubblica visibile a tutti i membri Discord. Non è un canale di supporto tecnico (per quello usare email) ma di scambio tra utenti.
Come segnalo un bug o una feature request?
Email a support@rankly.it con tag [BUG] o [FEATURE] nell'oggetto. Le feature request popolari finiscono nella roadmap pubblica. I bug ricevono fix prioritari (regola interna: bug bloccante in prod entro 24h, bug medio entro 1 settimana, bug minore entro 1 mese).
Non hai trovato la risposta?
Scrivici, rispondiamo in italiano entro 1 giorno lavorativo.