Claude Code trip planner

My girlfriend and I were planning a trip to the southwest of Canada and New York City. I was planning on continuing the trip to the USA afterwards and needed a plan for that as well. But instead of starting to google and make notes, I figured I could use AI to help me plan the trip and make a post out of it. It took me a while to finish this, as I started this post on April 15, but kept adding pieces to it as my travels progressed.

First attempt

My first attempt at using AI was to use a spreadsheet. I like data, lists, and tables. It was the perfect fit to also keep track of the cost. It started with a Gemini conversation in February 2026 in which I explicitly asked it to create a Google Sheet with information on dates, locations, sights, activities, hotels, etc. And I stated I wanted to use that to refine parts of the trip together with AI. I wanted to use the spreadsheet as some kind of memory file. Sadly, Gemini could not help with that at the time. It suggested using the Gemini side panel in Sheets, which is not what I had in mind.

I switched to Claude Cowork instead, since I wanted to give it a try anyway. Integrating Claude Cowork with Google Sheets was out of the question at that point in time. So it ended up creating an XLSX and dropping that into my Google Drive. It worked, but I wasn't happy with the result. It simply wasn't the right tool for the job, and I thought the XLSX was a quirky workaround.

Meanwhile, both Gemini and Claude have changed a lot. Gemini now can read and write Google Drive files! It doesn't seem able to write in existing Google Sheets though, so it will create a new one if you ask it to write. Claude can now use the Google Drive connector to read files in Drive and write new files. It cannot edit files.

Second attempt

At some point in April I decided to give it another try, but this time I intended to use Claude Code on a directory with Markdown files, which was also an Obsidian vault. Since I have Obsidian Sync, this would automatically sync across all my devices, and I would be able to open and edit these files on my phone with Obsidian while on the go. It made sense.

A nice side effect of the Claude Code/Obsidian combination is that I could leverage the connection to home to open Claude Code on my desktop via SSH and have it sync automatically. Though I had to create a systemd service for this to make sure Obsidian (and the Sync) would start on boot. I've used this several times from my phone to move some things around, which was too much hassle to do manually.

From the start I made sure the CLAUDE.md file told Claude not to write any code in this project (ironically) and to use only Markdown files.

Ideation

After the initial setup, I sparred a bit with Claude about rough outlines of the trip, and had it take notes. It was pretty useful to quickly gather route ideas, hotel considerations, car rental details, etc. I literally made it dump all the information in a note called "rough notes".

After that, I spent two evenings sparring with Claude about these rough ideas and adding plans and itineraries to the rough notes. And the best part is: it cost me little of my $20 Claude Pro usage plan! In the end we had made four different options for the trip.

It really helped me steer the trip in how many days I should reserve for each part, and without asking, it gave great tips like: in Big Sur it is impossible to book a last-minute hotel room, so plan ahead.

Another tip it gave me was that Yosemite used to require a timed entry reservation, which you had to buy in advance. When it started checking whether this is still the case and whether this is also required for other national parks, it came up with information about park entry fees, which have gone up quite a bit for non-US citizens. It then calculated for me that buying the "America the Beautiful" pass would be cheaper.

Later on I also asked it to start keeping track of the tips in a separate tip file. Not much ended up in this file, but the beautiful thing is that this way it was part of the project and the collective memory on what to take into account!

Structuring

After this initial sparring, I started thinking about what information I wanted to store, which files I would need, and how I would structure the information. It was kind of like coming up with an architecture for a software project!

I ended up with a structure where each location or transport between locations would be a separate folder. Each folder would contain a Markdown file with information about the location, activities, and places to stay. I also wanted to gather more options than just the ones I committed to. So I split most of the files into "potential" and "actual" versions, and prefixed the filenames accordingly. This was all outlined in the CLAUDE.md file so Claude would know what to do in the next steps.

When I finally asked Claude to map out the fourth option we had written down in the rough notes, it automatically started adding places to visit. It even pulled details from that file: places to stay on the outskirts of the parks, temperatures, drive times, routes to take, and more. It was really amazing!

Bookkeeping

Next I had to get an idea of what this was going to cost me. I had Claude add a cost file to each leg of the trip and a global cost file that references each of these separate files and sums a grand total. This grand total was rather high, so I started looking for optimizations together with Claude to keep the costs down. Especially the stays in San Francisco turned out to be expensive. Claude helped me pick good neighborhoods, taking into account safety, cost, and proximity to sights and attractions. It searched hotel and B&B sites itself, but the results didn't seem very accurate. With the neighborhood already picked, though, finding better-priced spots became a lot easier.

Fine-tuning

What was pretty annoying was having to "refactor" everything every time I changed things up. I dropped a night in San Francisco, truncated the Pacific Coast Highway (PCH) leg (because the accommodations were absurdly expensive), and in the end a lot of my previously made Markdown files contained wrong dates and information. Claude Code didn't always notice this itself. I've asked Claude how this could be prevented, and it suggested the following changes to the CLAUDE.md:

* actual-cost.md: summary of actual costs once the trip is completed

## Date consistency rule

* plan.md is the single source of truth for all dates. Whenever dates change in plan.md, always update every file in
  every affected leg folder that contains hardcoded dates. Files that typically contain dates:
* info.md: arrival and departure dates, and any date references in the notes
* potential-cost.md: date references in accommodation breakdowns or transport details
* potential-visits.md: date columns in itinerary tables
* potential-transport.md: flight/rental dates

After any date change, read plan.md and cross-check all affected leg folders before closing the task.

Booking

Once everything started to become clearer, Claude also helped me create a TODO where priority was given to things that might not stay available, like well-priced B&Bs or accommodations near the national parks. When I complained that I don't like booking out of chronological order, it gave me tips on booking strategically first and switching back to chronological order once the important ones were done.

As I started ticking off these TODOs, I also asked Claude to create the actual-cost.md, actual-stays.md, and actual-transport.md files for these.

I also wanted all these things in my Google Calendar, so I connected the Google Calendar MCP server to Claude and permitted it to update my calendar. I asked it to include extra information in the description and added instructions in the CLAUDE.md on how certain events should be added and using which colors. I made sure to suffix the description with "Added by Claude Code" so that I can distinguish them from my own calendar events. When it started adding events, it was magnificent to witness.

Planning

Eventually everything was roughly planned out, and I knew which locations I was going to visit. Airplane tickets were bought, stays booked, cars rented. Then I had to work out what to do at each location. So I asked Claude Code to help me create two skills:

  • /research-activities: for helping me fill in potential-visits.md for each location based on things I like to do. Once that was done, I could simply strike through the things I didn't like or add things myself. The list of things I like to do was kept in a separate Markdown file in my .claude directory.
  • /schedule-activities: for helping me actually plan the visits among the days I was at that location. For this it had to take into account which things were close to each other, where I was staying, and how I could get there easily. It also had to tell me how long it would take to get there and estimate how much time I'd spend everywhere.

When I tried to use this for the San Francisco trip, it somehow missed the Golden Gate Bridge. So I had to fine-tune the potential-visits skill to also include the obvious options. In its initial form it was focusing only on interest-based niche things.

Retrospect

Some of the cost estimations were not very realistic: for Las Vegas, the original estimate was that food would be 40 dollars a day, which is insane, because food on the Strip is costly compared to other cities I've visited. An omelet breakfast with coffee is easily 30 dollars after tax and tips, and dinner easily adds up to 30 to 50 dollars as well. There are basically no inexpensive options.

Claude is terrible at estimating distances, and therefore at estimating travel times, especially for a trip with as much walking as mine. It tends to calculate distances as the crow flies, instead of using actual roads or hiking paths, and then converting these incorrect distances into travel times.

I ended up planning all my locations using the two skills I outlined above, but I rarely ever stuck to the plan. I guess this is mostly a personal issue. I ended up swapping a lot of activities around or scrapping things out of the schedule or replacing them with whims of the moment. Which is fine, it's vacation. Though I do think that having such detailed plans with lots of information can become a bit stressful. It creates a fear of missing out. Then again, if you don't mind changing things up, it's a great way to at least have a good baseline! I've never done this myself, but you could even go back to the "potential-activities" and see if anything you discarded can be added to the schedule after all!

Conclusion

The combination of a Markdown-only Obsidian vault, Obsidian Sync, and Claude Code worked marvelously for me. I've added the entire CLAUDE.md file to my GitHub. Feel free to use it for your own trips. If you do, let me know how it went or if you have any suggestions for improvement! I'll definitely be using it myself in the future!