Wavelog: A Self-Hosted Web Logbook for Radio Amateurs

Wavelog: A Self-Hosted Web Logbook for Radio Amateurs

Wavelog is a self-hosted logbook for radio amateurs: a web application that runs on a server you control and lets you log contacts from any browser. Instead of keeping your log in a single file on a single computer, or handing it to an online service, you keep it in a database that you own and reach from your shack computer, your laptop at a portable site or your phone. This guide explains what Wavelog does, what it does not do, what you need to run it, how to install it with Docker or on a classic web server, how to move an existing log into it and how to keep your data safe.

If you already use a desktop logger such as N1MM+ or Log4OM, Wavelog is not necessarily a replacement. Many operators use it as the central, always-available logbook that collects and presents their contacts, while a contest program does the fast logging during a contest. Either way, a web logbook solves a problem that desktop software handles badly: your whole log, with maps and statistics, available anywhere.

What Wavelog Is

According to the project’s own repository, Wavelog is a self-hosted PHP application that allows you to log your amateur radio contacts anywhere, and all you need is a web browser and an active internet connection. It is an enhanced fork of Cloudlog, the earlier web logbook by MM9SQL. The project is licensed under the MIT licence and is developed by a team of radio amateurs together with many contributors and translators.

The official documentation calls Wavelog your new primary logbook: self-hosted, multi-user ready and accessible from anywhere with any browser. It serves as a central hub for all your contacts and lets you distribute them from one place to third-party QSL services. The feature list in the documentation is broad:

  • permission management for club stations;
  • analytics and statistics of your activity;
  • maps for worked entities such as DXCC, grid squares and states;
  • APIs for integration with third-party tools;
  • QSL management with label printing;
  • satellite tools for tracking and logging;
  • award checking based on your logged contacts;
  • widgets and maps that you can embed on your own web page;
  • a built-in callbook lookup.

What Wavelog Is Not

The documentation is refreshingly clear about limits. Wavelog is not a QSL service and it is not a dumping ground for contacts. It is not intended as a backup destination for your logs, and it is not a service that automatically imports contacts from QRZ, Logbook of The World or eQSL that are not already in your own log. At its core, it is your logbook. That matches what many operators want, and it avoids a common problem in which a log is slowly polluted by contacts you never made.

Another honest remark in the documentation concerns skills. Hosting Wavelog requires a minimum understanding of the LAMP stack (Linux, Apache, MySQL, PHP) and the ability to troubleshoot errors. Without that knowledge, users may find it difficult to manage the interface and the connected services. If you do not want to maintain a server, a hosted logbook or a desktop program is a better choice.

How It Compares With Other Logging Options

Choosing between a desktop logger, an online logbook and a self-hosted logbook depends on where you want your data to live and how much maintenance you accept.

OptionWhere the data livesAccessMaintenanceBest for
Desktop logger (N1MM+, Log4OM, DXLab)A file or database on your computerThe computer where it is installedUpdates and backups on that computerContests and station control
Hosted online logbookThe provider’s serversAny browserNone, but you follow the provider’s rulesOperators who want no server work
Self-hosted web logbook (Wavelog)Your own server or containerAny browserYou maintain the server, database and backupsMulti-user clubs and operators who want control

If you are still deciding on a desktop program as well, our comparison of contest loggers will help you choose one that works alongside a web logbook.

Requirements

The project lists clear requirements for the classic installation. A 64-bit Linux system is highly recommended, and 32-bit systems are no longer supported. The web server can be Apache 2, which is recommended, or nginx. PHP versions from 8.2 to 8.5 are listed, and the database must be MySQL 8 or later, or MariaDB 10.11 or later. Wavelog was built using the CodeIgniter 3 framework and the Bootstrap 5 interface framework.

Docker is the easiest route and the one the documentation recommends. A modest virtual server is sufficient for a single operator, because a logbook does not need much processing power. What matters more is reliability, a stable backup routine and secure access over HTTPS.

Installing With Docker

The Docker installation guide sets up two containers: a MariaDB database that stores your contacts and settings, and the Wavelog web application. Both are defined in one compose file and started with a single command. The data is kept in Docker volumes, so it survives container restarts and updates.

  1. Install Docker and Docker Compose. Check both with their version commands. Docker Engine is used on Linux, Docker Desktop on Windows and macOS.
  2. Create the compose file. Follow the official guide and replace the example database password with a long, unique password of your own. Never keep the sample password.
  3. Start the containers. One command starts both, and the web interface appears on the port you configured.
  4. Complete the setup in the browser. Create your first user, then add a station location with your call sign, grid square and DXCC entity.
  5. Add HTTPS. Put a reverse proxy in front of the application, so that your login and your log travel over an encrypted connection.

As with most container applications, an update means pulling a newer image and restarting the container. Read the release notes before you update, and make a backup first.

Installing on a LAMP Server

If you already run a web server, you can install Wavelog directly. The project describes the classic LAMP stack as the recommended traditional route and gives a Linux guide. In general you place the application in the web root, create a database and a database user, make sure the web server user can write to the folders the application needs, and then run the installer in the browser. Follow the Linux guide in the documentation for the exact steps of your version. Missing PHP extensions and folder permissions are typical causes of trouble on any PHP application, so read the error messages carefully.

There is also an optional component called the Wavelog Worker, which provides real-time push updates through WebSockets. The documentation says that it is optional and not needed for a single operator, a small club with two or three simultaneous users or shared hosting without Docker. It becomes useful when many users, ten or more, use live features at the same time, such as in a large multi-operator contest or a busy club station.

Importing an Existing Log

Most operators arrive with years of contacts in another program. Wavelog imports ADIF files, the standard interchange format. Our article on ADIF and moving logs between programs explains the format in detail. Before you import, consider these points:

  • Export from your old program in ADIF. Check that dates, times, bands, modes and grid squares are all present.
  • Make sure the file is valid. The troubleshooting page warns that most failed imports are caused by files that do not follow the specification. Each record must end with an end-of-record tag, and each field length must match its content.
  • Import in smaller pieces if there is a timeout. A very large file can exceed the server time limit, and it can be divided into several smaller ones.
  • Match the call sign to the station location. The import checks that the contacts belong to the originating call sign set for the chosen station location. The option to bypass this check is not recommended.

Keep your original file. A web logbook is a good home for your log, but you should never rely on one copy of anything.

Connecting Your Radio and Other Services

A web application cannot reach the serial port of a radio directly, so the project provides a helper called WavelogGate for transferring rig data to Wavelog. When frequency and mode are filled in automatically, logging a contact in the browser can be as quick as typing a call sign. If you already use rig control software, our guide to rig control with Hamlib explains the principles behind such links.

For confirmations, the documentation describes distribution to third-party QSL services from a single platform. If you are new to confirming contacts, read about LoTW, eQSL and paper confirmations before deciding which services to use. For DX-focused operators, the Club Log guide shows how an online matrix complements a local logbook.

Security and Backups

A logbook on the internet holds your name, address data and contact history, so treat it like any other web application:

  • Use HTTPS only, with a certificate from a recognised authority.
  • Use a long, unique password for each account and for the database.
  • Keep the operating system, PHP and Wavelog itself up to date.
  • Restrict who can create accounts, especially if the installation is public.
  • Back up the database every day and test a restore at least once.

The documentation reminds readers that Wavelog is not a backup destination. Your backup plan is your own responsibility, so export an ADIF file regularly and copy the database dump to a different machine.

Using It Day to Day

Once the installation is running, a useful routine takes shape quickly. Define a station location for each place you operate from, including your home station and any portable sites, because each one carries its own call sign, grid square and DXCC entity. When you log a contact, pick the right location first, so that award maps and statistics stay accurate. The dashboard gives an overview of your recent activity, and the maps for DXCC entities, grid squares and states show at a glance what you have worked and what is missing.

Club stations benefit most. Separate user accounts with their own permissions allow a club to share one logbook, let members log from the club shack and keep personal logs apart. A club that publishes its results online can embed a widget or map on its website, so visitors can see the activity of the station.

Finally, remember that a logbook is also a record of your hobby. Add notes to interesting contacts, keep QSL information up to date and review your statistics from time to time. Seeing which bands and modes you use most helps you decide where to improve your station.

Common Mistakes

  • Leaving the example password in place. Change every default value before the service is reachable from the internet.
  • Skipping backups. A single disk failure can remove years of contacts.
  • Importing a bad ADIF file. Validate the file first, and import a small test.
  • Running outdated software. Update regularly, and read the release notes.
  • Expecting automatic imports from other services. Wavelog is your log, not a collection point.

The Bottom Line

Wavelog is a good match for operators and clubs who want a logbook they control, reach from any browser and share with other users. It asks for some server skills, a backup routine and attention to security, and in return it offers maps, statistics, award tracking and QSL management in one place. Try the project’s public demo first, then install it with Docker on a small server, import a copy of your log and see whether it suits you. Keep your desktop logger for contests, and let the web logbook be the place where your whole history comes together.

Frequently Asked Questions

What is Wavelog?

Wavelog is a self-hosted web logbook for radio amateurs. It runs on your own server, uses a MySQL or MariaDB database and is accessed through a web browser. It started as a fork of the Cloudlog project.

What do I need to run Wavelog?

The documentation lists a 64-bit Linux system, Apache or nginx, PHP 8.2 to 8.5 and MySQL 8 or MariaDB 10.11 or later. Docker is the recommended and simplest way to install it.

Can several people use one Wavelog installation?

Yes. The software is multi-user ready and has permission management for club stations. For ten or more simultaneous users on live features, the optional Worker is recommended.

Can I import my old log into Wavelog?

Yes, by ADIF import. Make sure the file is valid and, if the import times out, divide the file into smaller parts.

Does Wavelog replace my contest logging program?

Not necessarily. Many operators keep a desktop logger for fast contest logging and use the web logbook as the central record, with maps, statistics and award tracking.

Is Wavelog a backup service for my log?

No. The documentation states that it is not a backup destination, so keep your own backups of the database and regular ADIF exports.


By the team behind LY4A

More tools from our team

LY4A is made by Internet Solutions. Try the rest of our products — each one saves you time in a different way.

internet-solutions.net ↗
Social media auto-posting PostRSS New posts from your RSS feed go to Facebook, X, LinkedIn, Telegram and 60+ more networks automatically. For clubs: DX news and club bulletins straight to Facebook and Telegram Free plan · since 2014 AI live chat for websites Talkmio Your website answers visitors 24/7 from your own content, in their language. For ham shops and clubs: questions answered 24/7, even during a contest Free plan · no card needed AI assistant Ask Mio Chat, code, design, writing and research. Mio picks the best model for each task. Antenna maths, QSL card designs, contest rules explained in plain words Free plan AI blog & social autopilot AI Blog Autopilot AI writes 2,000–3,000-word SEO articles and shares each one to 58+ social networks. For club websites: regular articles written for you and shared to social networks First 3 articles free Website health check Site AI Audit SEO, speed, SSL, security and e-mail setup in one report, ranked by what to fix first. Check your club or DXpedition website for free First audit free Deep SEO crawl Site SEO AI Audit A full SEO crawl across 7 areas, including AI search visibility, with fixes ranked by impact. See why your club site is not found on Google — and how to fix it First audit free RSS & product feeds RSS Feed Creator Create RSS from any web page, plus product feeds for Google and Meta that update themselves. Follow DXpedition and club pages that have no RSS Free plan Web development & SEO Internet Solutions Websites, e-shops and custom systems, designed, built and run by our team. Club websites, DXpedition pages, log search and QSL systems Since 2011