← All agencies

Feed status · checked 2026-09-07

Réseau interurbain Fluo Grand-Est - Haut-Rhin (68)

Based on the official feed source on file

Service mode Bus

49.9 / 100

down 0.1 since 2026-09-06

Catalogued in Grand-Est, France.

Covers 115 daysAccessibility gapsRealtime not yet published

A data-quality and completeness lens to help an agency improve its GTFS feed. Not an official compliance determination from any transit program. New to this? How to read your scorecard. Interactive view of this scorecard. Rubric v1.3, validator 8.0.1.

Checked for changes 4 hours ago; last changed 5 days ago.

Measured 3 of 4 score categories from the official feed URL on file.

How we measured this

Confidence in this measurement: medium.

  • Realtime quality was not measured this run. It does not count against the grade.
  • The feed was downloaded from the official feed URL on file.

Confidence describes how much the pipeline could measure this run, not the feed itself. It never changes the grade.

Top things to fix

Fix 01

Re-generate shape distances in your export; flag to your vendor if it persists.Likely your export tool

Some trips have stop times whose distances along the route go backwards. Apps can show buses jumping backwards or mis-order stops.

⏱ Usually an export-tool fix, not hand editing.worth about +12 points in its category

Fix 02

Set wheelchair_boarding to 1 (accessible) or 2 (not accessible) for every stop. A field survey can start with the busiest stops.Likely your team

2824 of 2826 stops don't say whether a wheelchair user can board there. Riders who use wheelchairs can't plan a trip when accessibility is marked 'unknown'; apps show no information at all.

⏱ A column in stops.txt; your scheduling software likely has it.worth about +25 points in its category

Fix 03

Set wheelchair_accessible on every trip. If every vehicle is accessible, this may be one default; otherwise use the value for each trip.Likely your export tool

2327 of 2327 trips don't say whether the vehicle is wheelchair accessible. Even with accessible stops, riders need to know the bus itself can take them.

⏱ A default or per-trip field in your export.worth about +15 points in its category

Finding handoff

Move one finding to a recheck

Select one finding. Copy the request, make the change in the feed-producing tool, then compare the next complete run.

Feed evidence
Some trips have stop times whose distances along the route go backwards.
Next action
Re-generate shape distances in your export; flag to your vendor if it persists.
Recheck
Publish the changed feed at the same URL. On the next complete, comparable scorecard run, confirm that this finding is no longer reported.
Copy handoff text
How to make and check these changes

Check the result on the published feed. Read the guide, make the change in your tool, and use the next comparable run to see whether the finding is still reported. Only an action or ticket record can attribute who made the change.

  1. Re-generate shape distances in your export; flag to your vendor if it persists.

    Make the change. Make this change in whatever tool produces your feed, then re-export.

    Check the result. The next scorecard run checks this finding again. If a comparable check no longer reports it, the feed's clearance log records that result. This confirms feed state, not who made the change. See this feed's finding-clearance log.

  2. Set wheelchair_boarding to 1 (accessible) or 2 (not accessible) for every stop. A field survey can start with the busiest stops. · Read the fix guide

    Make the change. Make this change in whatever tool produces your feed, then re-export.

    Check the result. The next scorecard run checks this finding again. If a comparable check no longer reports it, the feed's clearance log records that result. This confirms feed state, not who made the change. See this feed's finding-clearance log.

  3. Set wheelchair_accessible on every trip. If every vehicle is accessible, this may be one default; otherwise use the value for each trip. · Read the fix guide

    Make the change. Make this change in whatever tool produces your feed, then re-export.

    Check the result. The next scorecard run checks this finding again. If a comparable check no longer reports it, the feed's clearance log records that result. This confirms feed state, not who made the change. See this feed's finding-clearance log.

Rider view: what this feed publishes

A quick read of rider-facing information in this feed.

Schedule visibility
The feed's last published service date is in 115 days.
Published accessibility data
Accessibility information is stated for 0.1% of stops and 0% of trips. This measures published data, not whether stops or vehicles are physically usable.
Fare information
No fare information is published in the feed.
Realtime information
Realtime-feed availability and live-arrival coverage are not known from this scorecard.

Important: This does not rate service reliability. Riders should confirm current service alerts, fares, and accessibility accommodations with the transit operator before traveling.

Send your vendor a fix request

You may not control the GTFS export yourself. Copy this and send it to whoever runs your scheduling software export. It names each fix with the validator notice and a guide link.

Score by category

Correctness31.0 / 100

The MobilityData validator flagged 10 kinds of issue across 11336 instances (1 error, 11189 warning, 146 informational).

Freshness100.0 / 100

Service data covers the next 115 days.

Rider experience36.4 / 100

0% of stops state wheelchair accessibility (0% marked accessible, 0% marked not accessible). This measures what the feed publishes, not whether a stop is physically usable. Fare data is not published.

Accessibility0 / 100

0% of stops state accessibility (0% marked accessible). Reflects what the feed states, not verified physical usability.

3 accessibility depth signals

  • 128 route badge(s) pair a color and text color below the WCAG 4.5:1 contrast bar (854, 834, 833, 810, 823, and more).

    Consider: Adjust route_color or route_text_color so each pair clears 4.5:1. Often switching the text between black and white is enough.

  • 91 stop name(s) use abbreviations or symbols a screen reader may mispronounce, with no spoken form set ("WINTZENHEIM - Logelbach / Hirn", "OLTINGUE - Poste / CMDP", "OLTINGUE - Poste / CMDP", and more).

    Consider: Add tts_stop_name with the spoken form, e.g. 'Main Street and Second Avenue', for the affected stops.

  • This feed models stations or entrances but has no pathways.txt and levels.txt.

    Consider: Add pathways.txt connecting entrances, platforms, and elevators, and levels.txt for each floor, so the step-free route is described.

Opportunities to strengthen the data, not deductions from the sub-score above. States what the second accessibility lens can check from the feed, not verified physical usability.

Realtime qualityNot yet measured

Not scored yet. Nothing here counts against the grade.

Routes and stops

Each route is drawn once, using the longest shape its trips follow; stops are the dots.

This feed has 2826 stops.

Skip to route and stop data

The route and stop data is ready below. Load the map only when you want the geographic view. It uses additional data.

Basemap: OpenFreeMap, © OpenStreetMap contributors. Routes and stops: this agency's GTFS feed.

  • 8470 (green)
  • 8000 (yellow)
  • 8751 (white)
  • 8752 (white)
  • 8761 (white)
  • 8771 (white)
  • 8772 (white)
  • 8762 (white)
  • 8781 (white)
  • 8782 (white)
  • 8773 (white)
  • 8783 (white)
  • 8793 (white)
  • 8794 (white)
  • 8795 (white)
  • 840 (pink)
  • 831 (green)
  • 830 (purple)
  • 841 (green)
  • 842 (orange)
  • 843 (teal)
  • 854 (pink)
  • 832 (brown)
  • 856 (orange)
  • 834 (teal)
  • 858 (red)
  • 859 (purple)
  • 8792 (white)
  • 8100 (red)
  • 8103 (red)
  • 8104 (red)
  • 8230 (yellow)
  • 8231 (yellow)
  • 8162 (red)
  • 8161 (red)
  • 8180 (orange)
  • 8186 (orange)
  • 8205 (green)
  • 8206 (green)
  • 8207 (green)
  • 8208 (green)
  • 8209 (green)
  • 8210 (green)
  • 8211 (green)
  • 8212 (green)
  • 8213 (green)
  • 8214 (green)
  • 8215 (green)
  • 8216 (green)
  • 8217 (green)
  • 8218 (green)
  • 8219 (green)
  • 8220 (green)
  • 8221 (green)
  • 8222 (green)
  • 8223 (green)
  • 8224 (green)
  • 8225 (green)
  • 8226 (green)
  • 8110 (purple)
  • 8113 (purple)
  • 8234 (blue)
  • 8130 (purple)
  • 8131 (purple)
  • 8132 (purple)
  • 8133 (purple)
  • 8134 (purple)
  • 8135 (purple)
  • 8136 (purple)
  • 8137 (purple)
  • 8138 (purple)
  • 8111 (purple)
  • 8112 (purple)
  • 8114 (purple)
  • 8141 (purple)
  • 8142 (purple)
  • 8144 (purple)
  • 8143 (purple)
  • 8123 (purple)
  • 8122 (purple)
  • 8120 (purple)
  • 8121 (purple)
  • 833 (green)
  • 857 (brown)
  • 8455 (teal)
  • 8456 (teal)
  • 8458 (teal)
  • 8459 (teal)
  • 8460 (teal)
  • 8461 (teal)
  • 8462 (teal)
  • 8451 (yellow)
  • 8400 (teal)
  • 8401 (teal)
  • 8402 (teal)
  • 8404 (teal)
  • 8405 (teal)
  • 8152 (teal)
  • 8445 (teal)
  • 8410 (brown)
  • 8411 (brown)
  • 8412 (brown)
  • 8413 (brown)
  • 8414 (brown)
  • 8475 (red)
  • 8151 (teal)
  • 8150 (teal)
  • 8184 (orange)
  • 8420 (pink)
  • 8421 (pink)
  • 8422 (pink)
  • 8423 (pink)
  • 8185 (orange)
  • 8320 (gray)
  • 8321 (gray)
  • 8322 (gray)
  • 8183 (orange)
  • 8182 (orange)
  • 8153 (teal)
  • 8190 (orange)
  • 8189 (orange)
  • 8188 (orange)
  • 8900 (white)
  • 855 (purple)
  • 864 (teal)
  • 865 (gray)
  • 8901 (white)
  • 8170 (teal)
  • 8902 (white)
  • 8903 (white)
  • 8171 (teal)
  • 870 (red)
  • 8172 (teal)
  • 8001 (pink)
  • 871 (teal)
  • 8002 (purple)
  • 861 (gray)
  • 860 (purple)
  • 8233 (yellow)
  • 8003 (purple)
  • 8004 (purple)
  • 810 (teal)
  • 8115 (purple)
  • 829 (pink)
  • 8650 (white)
  • 8651 (white)
  • 812 (purple)
  • 8652 (white)
  • 8653 (white)
  • 8005 (pink)
  • 8654 (white)
  • 8655 (white)
  • 8656 (white)
  • 8657 (white)
  • 8232 (yellow)
  • 8247 (purple)
  • 8248 (purple)
  • 8246 (purple)
  • 8270 (brown)
  • 8271 (brown)
  • 8272 (brown)
  • 8273 (brown)
  • 8187 (orange)
  • 813 (teal)
  • 8658 (white)
  • 8659 (white)
  • 8660 (white)
  • 8661 (white)
  • 8244 (purple)
  • 8245 (purple)
  • 8662 (white)
  • 8300 (gray)
  • 8301 (gray)
  • 804 (pink)
  • 8302 (gray)
  • 8303 (gray)
  • 8304 (gray)
  • 8305 (gray)
  • 8306 (gray)
  • 8307 (gray)
  • 8663 (white)
  • 8324 (gray)
  • 8325 (gray)
  • 8181 (orange)
  • 8326 (gray)
  • 815 (brown)
  • 8173 (teal)
  • 8327 (gray)
  • 8010 (green)
  • 8011 (green)
  • 8012 (green)
  • 8774 (white)
  • 8013 (green)
  • 8020 (pink)
  • 8021 (pink)
  • 8022 (pink)
  • 8023 (pink)
  • 8024 (pink)
  • 8028 (teal)
  • 8025 (pink)
  • 816 (yellow)
  • 817 (red)
  • 8193 (orange)
  • 8191 (orange)
  • 8192 (orange)
  • 8240 (purple)
  • 8241 (purple)
  • 8243 (purple)
  • 8242 (purple)
  • 8260 (red)
  • 8261 (red)
  • 8263 (red)
  • 8264 (red)
  • 8262 (red)
  • 8281 (pink)
  • 8430 (purple)
  • 8431 (teal)
  • 8485 (teal)
  • 8432 (teal)
  • 8480 (orange)
  • 820 (purple)
  • 8904 (white)
  • 8380 (purple)
  • 8381 (purple)
  • 8382 (purple)
  • 8905 (white)
  • 8383 (purple)
  • 8906 (white)
  • 821 (teal)
  • 8384 (purple)
  • 8385 (purple)
  • 8386 (purple)
  • 8387 (purple)
  • 8388 (purple)
  • 8907 (white)
  • 8908 (white)
  • 8909 (white)
  • 8910 (white)
  • 8911 (white)
  • 8912 (white)
  • 8913 (white)
  • 8340 (green)
  • 8915 (white)
  • 8095 (purple)
  • 8341 (green)
  • 8916 (white)
  • 8050 (brown)
  • 8917 (white)
  • 8342 (green)
  • 8051 (brown)
  • 8918 (white)
  • 8343 (green)
  • 8052 (brown)
  • 8919 (white)
  • 8344 (green)
  • 8053 (brown)
  • 8054 (brown)
  • 8424 (pink)
  • 8914 (white)
  • 8425 (pink)
  • 8055 (brown)
  • 8056 (brown)
  • 8360 (purple)
  • 8361 (purple)
  • 8362 (purple)
  • 8363 (purple)
  • 8364 (purple)
  • 8365 (purple)
  • 8366 (purple)
  • 8367 (purple)
  • 8920 (white)
  • 8921 (white)
  • 8922 (white)
  • 8923 (white)
  • 8924 (white)
  • 8925 (white)
  • 823 (gray)
  • 8030 (gray)
  • 8664 (white)
  • 8031 (gray)
  • 8446 (teal)
  • 8032 (gray)
  • 8033 (gray)
  • 8060 (teal)
  • 8034 (gray)
  • 8061 (teal)
  • 8062 (teal)
  • 8035 (gray)
  • 8036 (gray)
  • 8063 (teal)
  • 8064 (teal)
  • 8065 (teal)
  • 8665 (white)
  • 8666 (white)
  • 8037 (gray)
  • 8463 (teal)
  • 8066 (teal)
  • 8667 (white)
  • 8038 (gray)
  • 8039 (gray)
  • 8040 (gray)
  • 863 (yellow)
  • 8041 (gray)
  • 893 (yellow)
  • 862 (teal)
  • 8068 (teal)
  • 8447 (teal)
  • 8448 (teal)
  • 8449 (teal)
  • 8450 (teal)
  • 8453 (teal)
  • 8452 (teal)
  • 8440 (teal)
  • 8067 (teal)
  • 8089 (green)
  • 8080 (green)
  • 8081 (green)
  • 8082 (green)
  • 8083 (green)
  • 8084 (green)
  • 8085 (green)
  • 8086 (green)
  • 8087 (green)
  • 8088 (green)
  • 8069 (teal)
  • 8796 (white)
  • 8797 (white)
  • 8070 (teal)
  • 825 (yellow)
  • 824 (teal)
  • 826 (orange)
  • 8926 (white)
  • 8097 (orange)
  • 8160 (red)
  • 8274 (brown)
  • 8249 (purple)
  • 8096 (red)
  • 891 (pink)
  • 8042 (gray)
  • 8043 (gray)
  • 8433 (purple)
  • 8227 (green)
  • 8102 (red)
  • 8101 (red)
  • 8454 (teal)
  • 895 (pink)
  • 892 (gray)
  • 890 (gray)
  • 8750 (white)
  • 8668 (white)
  • 802 (orange)
  • 801 (yellow)
  • 8194 (orange)
  • 8140 (purple)
  • 8927 (white)
  • 8275 (brown)
  • 8753 (white)
  • 8672 (white)
  • 8071 (teal)
  • 8072 (teal)
  • 8929 (white)
  • 8368 (purple)
Routes in Réseau interurbain Fluo Grand-Est - Haut-Rhin (68)'s feed
RouteTypeLine color
8470 MAGNY / MONTREUX-CHATEAUBusgreen
8000 ROMBACH / LIEPVRE / STE-MARIE-AUX-MINESBusyellow
8751 HATTSTATT / GUEBERSCHWIHRBuswhite
8752 OBERENTZEN / OBERHERGHEIMBuswhite
8761 MUNCHHOUSE / ROGGENHOUSEBuswhite
8771 MURBACH / BUHLBuswhite
8772 WUENHEIM / JUNGHOLTZBuswhite
8762 MEYENHEIM / MUNWILLERBuswhite
8781 WILDENSTEIN / KRUTHBuswhite
8782 GOLDBACH-ALTENBACH / WILLER-SUR-THURBuswhite
8773 RIMBACH-PRES-GUEBWILLER / JUNGHOLTZBuswhite
8783 URBES / FELLERINGBuswhite
8793 SOPPE-LE-BAS / LE HAUT SOULTZBACHBuswhite
8794 RODEREN / BOURBACH-LE-BASBuswhite
8795 LEIMBACH / RAMMERSMATTBuswhite
840 GUEBWILLER / ROUFFACHBuspink
831 OSENBACH / SOULTZMATT / ROUFFACHBusgreen
830 ROUFFACH / EGUISHEIM / COLMARBuspurple
841 FESSENHEIM / GUEBWILLERBusgreen
842 LINTHAL / GUEBWILLERBusorange
843 STEINBACH / CERNAY / GUEBWILLERBusteal
854 GUEBWILLER / BOLLWILLER / MULHOUSEBuspink
832 ENSISHEIM / MUNWILLER / COLMARBusbrown
856 ENSISHEIM / MULHOUSEBusorange
834 THANN / MASEVAUX-NIEDERBRUCKBusteal
858 SEWEN / MASEVAUX-NIEDERBRUCK / MULHOUSEBusred
859 THANN / WITTELSHEIM / MULHOUSEBuspurple
8792 PETITE DOLLERBuswhite
8100 HIRTZFELDEN / FESSENHEIMBusred
8103 DESSENHEIM / FESSENHEIMBusred
8104 NAMBSHEIM / FESSENHEIMBusred
8230 WATTWILLER / CERNAYBusyellow
8231 THANN / STEINBACH / CERNAYBusyellow
8162 MURBACH / BUHLBusred
8161 LINTHAL / LAUTENBACH / BUHLBusred
8180 BOLLWILLER / GUEBWILLERBusorange
8186 ORSCHWIHR / GUEBWILLERBusorange
8205 LINTHAL / ISSENHEIMBusgreen
8206 GUEBWILLER / ISSENHEIMBusgreen
8207 WINTZFELDEN / ISSENHEIMBusgreen
8208 UFFHOLTZ / ISSENHEIMBusgreen
8209 JUNGHOLTZ / ISSENHEIMBusgreen
8210 CERNAY / ISSENHEIMBusgreen
8211 VIEUX-THANN / ISSENHEIMBusgreen
8212 CERNAY / STAFFELFELDEN / ISSENHEIMBusgreen
8213 WITTELSHEIM / STAFFELFELDEN / ISSENHEIMBusgreen
8214 RICHWILLER / WITTELSHEIM / ISSENHEIMBusgreen
8215 WITTELSHEIM / ISSENHEIMBusgreen
8216 SAUSHEIM / ISSENHEIMBusgreen
8217 WITTENHEIM / ISSENHEIMBusgreen
8218 ILLZACH KINGERSHEIM / ISSENHEIMBusgreen
8219 WITTENHEIM / RUELISHEIM / ISSENHEIMBusgreen
8220 BALDERSHEIM / ISSENHEIMBusgreen
8221 ENSISHEIM / ISSENHEIMBusgreen
8222 REGUISHEIM / ISSENHEIMBusgreen
8223 ENSISHEIM / UNGERSHEIM / ISSENHEIMBusgreen
8224 ENSISHEIM / ISSENHEIMBusgreen
8225 BOLLWILLER / FELDKICH / ISSENHEIMBusgreen
8226 BOLLWILLER / SOULTZ / ISSENHEIMBusgreen
8110 PULVERSHEIM / ENSISHEIMBuspurple
8113 NIEDERENTZEN / ENSISHEIMBuspurple
8234 WATTWILLER / CERNAY / WITTELSHEIMBusblue
8130 NIEDERENTZEN / OBERENTZEN / ROUFFACHBuspurple
8131 ROGGENHOUSE / ROUFFACHBuspurple
8132 RICHWILLER / ROUFFACHBuspurple
8133 PFASTATT / ROUFFACHBuspurple
8134 THANN / ROUFFACHBuspurple
8135 GEISWASSER / ROUFFACHBuspurple
8136 CHALAMPE / ROUFFACHBuspurple
8137 BALDERSHEIM / ROUFFACHBuspurple
8138 PULVERSHEIM / ROUFFACHBuspurple
8111 UNGERSHEIM / ENSISHEIMBuspurple
8112 MEYENHEIM / REGUISHEIM / ENSISHEIMBuspurple
8114 NIEDERHERGHEIM / ENSISHEIMBuspurple
8141 VIEUX-FERRETTE / ROUFFACHBuspurple
8142 BURNHAUPT-LE-BAS / ROUFFACHBuspurple
8144 WITTENHEIM / ROUFFACHBuspurple
8143 ST-HIPPOLYTE / ROUFFACHBuspurple
8123 ROUFFACHBuspurple
8122 SOULTZMATT / WESTHALTEN / ROUFFACHBuspurple
8120 MERXHEIM / GUNDOLSHEIM / ROUFFACHBuspurple
8121 HATTSTATT / ROUFFACHBuspurple
833 WILDENSTEIN / KRUTH / THANN / CERNAYBusgreen
857 THANN / REININGUE / MULHOUSEBusbrown
8455 KIFFIS / ALTKIRCHBusteal
8456 BENDORF / DURLINSDORF / ALTKIRCHBusteal
8458 BIEDERTHAL / ALTKIRCHBusteal
8459 SEPPOIS-LE-HAUT / ALTKIRCHBusteal
8460 MOOSLARGUE / PFETTERHOUSE / ALTKIRCHBusteal
8461 FRIESEN / UEBERSTRASS / ALTKIRCHBusteal
8462 ALTKIRCH / BISELBusteal
8451 ALTKIRCH / CERNAYBusyellow
8400 LUEMSCHWILLER / ILLFURTHBusteal
8401 HOCHSTATT / ILLFURTHBusteal
8402 WALHEIM / ILLFURTHBusteal
8403 FLAXLANDEN / ILLFURTHBusteal (no shape in feed)
8404 SPECHBACH-LE-HAUT / ILLFURTHBusteal
8405 SPECHBACH-LE-BAS / ILLFURTHBusteal
8152 EGUISHEIM / COLMARBusteal
8445 CARSPACH / ALTKIRCHBusteal
8410 FULLEREN / SEPPOIS-LE-BASBusbrown
8411 STRUETH / SEPPOIS-LE-BASBusbrown
8412 ST-ULRICH / SEPPOIS-LE-BASBusbrown
8413 BISEL / SEPPOIS-LE-BASBusbrown
8414 PFETTERHOUSE / SEPPOIS-LE-BASBusbrown
8475 MULHOUSE / FREIBURG IM BREISGAUBusred
8151 GUNDOLSHEIM / COLMARBusteal
8150 GUEBWILLER / COLMARBusteal
8184 OBERHERGHEIM / GUEBWILLERBusorange
8420 RIESPACH / HIRSINGUEBuspink
8421 MUESPACH-LE-HAUT / HIRSINGUEBuspink
8422 MUESPACH / HIRSINGUEBuspink
8423 STEINSOULTZ / HIRSINGUEBuspink
8185 MUNWILLER / REGUISHEIM / GUEBWILLERBusorange
8320 BRECHAUMONT / DANNEMARIEBusgray
8321 BALLERSDORF / DANNEMARIEBusgray
8322 BALSCHWILLER / DANNEMARIEBusgray
8183 OSENBACH / GUEBWILLERBusorange
8182 COLMAR / ROUFFACH / GUEBWILLERBusorange
8153 MUNCHHOUSE / COLMARBusteal
8190 RUMERSHEIM-LE-HAUT / GUEBWILLERBusorange
8189 ENSISHEIM / UNGERSHEIM / GUEBWILLERBusorange
8188 NAMBSHEIM / FESSENHEIM / GUEBWILLERBusorange
8900 EMLINGEN / TAGSDORF / WITTERSDORFBuswhite
855 NAMBSHEIM / BANTZENHEIM / MULHOUSEBuspurple
864 HELFRANTZKIRCH / MULHOUSEBusteal
865 SIERENTZ / MULHOUSEBusgray
8901 FRANKEN / HAUSGAUENBuswhite
8170 RIMBACH / SOULTZ-HAUT-RHINBusteal
8902 ST-BERNARD / SPECHBACHBuswhite
8903 TAGOLSHEIM / WALHEIMBuswhite
8171 BERRWILLER / SOULTZ-HAUT-RHINBusteal
870 FERRETTE / ST-LOUISBusred
8172 PULVERSHEIM / SOULTZ-HAUT-RHINBusteal
8001 METZERAL / WINTZENHEIMBuspink
871 BIEDERTHAL / ST-LOUISBusteal
8002 WASSERBOURG / MUNSTERBuspurple
861 LE-HAUT-SOULTZBACH / MULHOUSEBusgray
860 DANNEMARIE / MULHOUSEBuspurple
8233 LYCEE CERNAYBusyellow
8003 HOHROD / MUNSTERBuspurple
8004 SOULTZEREN / STOSSWIHR / MUNSTERBuspurple
810 SOULTZEREN / COLMARBusteal
8115 BLODELSHEIM / ENSISHEIMBuspurple
829 HERRLISHEIM-PRES-COLMAR / COLMARBuspink
8650 STE-CROIX-AUX-MINESBuswhite
8651 ROMBACH-LE-FRANC / LIEPVREBuswhite
812 SONDERNACH / METZERAL / MUNSTERBuspurple
8652 GRUSSENHEIM / ELSENHEIMBuswhite
8653 BALTZENHEIM / ARTZENHEIMBuswhite
8005 VOEGTLINSHOFFEN / INGERSHEIMBuspink
8654 METZERALBuswhite
8655 BEBLENHEIM / HUNAWIHRBuswhite
8656 RORSCHWIHR / SAINT-HYPPOLITEBuswhite
8657 BENNWIHR / MITTELWIHR / ZELLENBERGBuswhite
8232 SEWEN / CERNAYBusyellow
8247 RIMBACH-PRES-MASEVAUX / THANNBuspurple
8248 LE HAUT SOULTZBACH / LAUW / THANNBuspurple
8246 MASEVAUX-NIEDERBRUCK / LEIMBACH / THANNBuspurple
8270 SEWEN / MASEVAUX-NIEDERBRUCKBusbrown
8271 BOURBACH-LE-HAUT / MASEVAUX-NIEDERBRUCKBusbrown
8272 SENTHEIM / MASEVAUX-NIEDERBRUCK / LAUWBusbrown
8273 SOPPE-LE-BAS / MASEVAUX-NIEDERBRUCKBusbrown
8187 WESTHALTEN / ORSCHWIHR / GUEBWILLERBusorange
813 LE BONHOMME / COLMARBusteal
8658 LUTTENBACH-PRES-MUNSTER / BREITENBACHBuswhite
8659 GUNSBACH / ESCHBACH-AU-VALBuswhite
8660 SOULTZBACH-LES-BAINS / WASSERBOURGBuswhite
8661 KATZENTHAL / AMMERSCHWIHRBuswhite
8244 ASPACH-MICHELBACH / THANNBuspurple
8245 BURNHAUPT-LE-BAS / THANNBuspurple
8662 WIDENSOLENBuswhite
8300 GUEWENHEIM / BURNHAUPT-LE-HAUTBusgray
8301 SCHWEIGHOUSE-THANN / BURNHAUPT-LE-HAUTBusgray
804 WILDENSTEIN / ST-AMARINBuspink
8302 BURNHAUPT-LE-BAS / BURNHAUPT-LE-HAUTBusgray
8303 BRECHAUMONT / BURNHAUPT-LE-HAUTBusgray
8304 BERNWILLER / BURNHAUPT-LE-HAUTBusgray
8305 AMMERTZWILLER / BURNHAUPT-LE-HAUTBusgray
8306 HECKEN / BURNHAUPT-LE-HAUTBusgray
8307 GUEVENATTEN / BURNHAUPT-LE-HAUTBusgray
8663 OBERMORSCHWIHR / HUSSEREN-LES-CHATEAUXBuswhite
8324 MERTZEN / DANNEMARIEBusgray
8325 ELBACH / DANNEMARIEBusgray
8181 LAUTENBACH / BUHL / GUEBWILLERBusorange
8326 MONTREUX-VIEUX / DANNEMARIEBusgray
815 LABAROCHE / COLMARBusbrown
8173 GUEBWILLER / SOULTZ-HAUT-RHINBusteal
8327 MONTREUX-JEUNE / DANNEMARIEBusgray
8010 SIGOLSHEIM / KAYSERSBERG VIGNOBLEBusgreen
8011 ALSPACH / KAYSERSBERG VIGNOBLEBusgreen
8012 AMMERSCHWIHR / KAYSERSBERG VIGNOBLEBusgreen
8774 HARTMANNSWILLER / BERRWILLERBuswhite
8013 KATZENTHAL / KAYSERSBERG VIGNOBLEBusgreen
8020 LAC NOIR / ORBEYBuspink
8021 LABAROCHE / ORBEYBuspink
8022 FRELAND / ORBEYBuspink
8023 CREUX-D-ARGENT / ORBEYBuspink
8024 LE BONHOMME / ORBEY / LAPOUTROIEBuspink
8028 LE BONHOMME / HACHIMETTEBusteal
8025 HTS HUTTES / BS HUTTES / ORBEYBuspink
816 RIBEAUVILLE / ROUTE DU VINBusyellow
817 ST-HIPPOLYTE / RIBEAUVILLE / COLMARBusred
8193 BOLLWILLER / SOULTZ / GUEBWILLERBusorange
8191 MULHOUSE / FELDKIRCH / GUEBWILLERBusorange
8192 WITTELSHEIM / GUEBWILLERBusorange
8240 WATTWILLER / THANNBuspurple
8241 WILLER-SUR-THUR / THANNBuspurple
8243 MOOSCH / THANNBuspurple
8242 RANSPACH / ST-AMARIN / THANNBuspurple
8260 WILDENSTEIN / ODEREN / ST-AMARINBusred
8261 URBES / FELLERING / ST-AMARINBusred
8263 GOLDBACH-ALTENBACH / ST-AMARINBusred
8264 GEISHOUSE / MOOSCHBusred
8262 MITZACH RANSPACH / ST-AMARINBusred
8281 VIEUX-THANN / FELLERING / LA BRESSEBuspink
8430 STETTEN / HABSHEIM / RIXHEIMBuspurple
8431 BLODELSHEIM / HABSHEIM / RIXHEIMBusteal
8485 KEMBS / VILLAGE-NEUFBusteal
8432 KEMBS / RIXHEIMBusteal
8480 MUNCHHOUSE / OTTMARSHEIMBusorange
820 ARTZENHEIM / COLMARBuspurple
8904 STEINBRUNN-LE-BAS / STEINBRUNN-LE-HAUTBuswhite
8380 KIFFIS / FERRETTEBuspurple
8381 BIEDERTHAL / FERRETTEBuspurple
8382 DURMENACH / FERRETTEBuspurple
8905 BERNWILLER / AMMERTZWILLERBuswhite
8383 ILLTAL / FERRETTEBuspurple
8906 GILDWILLER / DIEFMATTENBuswhite
821 MARCKOLSHEIM / OHNENHEIM / COLMARBusteal
8384 OLTINGUE / FERRETTEBuspurple
8385 BETTLACH / FERRETTEBuspurple
8386 MOERNACH / FERRETTEBuspurple
8387 LIEBSDORF / FERRETTEBuspurple
8388 COURTAVON / FERRETTEBuspurple
8907 BALSCHWILLER / EGLINGENBuswhite
8908 BRECHAUMONT / ETEIMBESBuswhite
8909 GOMMERSDORF / HAGENBACHBuswhite
8910 VALDIEU-LUTRAN / MONTREUX-JEUNEBuswhite
8911 STERNENBERG / WOLFERSDORF / ELBACHBuswhite
8912 MONTREUX-VIEUX / CHAVANNES-SUR-L-ETANGBuswhite
8913 SEPPOIS-LE-HAUT / MOOSLARGUEBuswhite
8340 WOLFERSDORF / ZILLISHEIMBusgreen
8915 MANSPACH / STRUETH / FULLEREN / ALTENACHBuswhite
8095 ARTZENHEIM / MARCKOLSHEIMBuspurple
8341 ALTENACH / ZILLISHEIMBusgreen
8916 MERTZEN / SEPPOIS-LE-BASBuswhite
8050 HORBOURG-WIHR / FORTSCHWIHRBusbrown
8917 BETTENDORF / ILLTAL / RUEDERBACHBuswhite
8342 WERENTZHOUSE / ZILLISHEIMBusgreen
8051 ARTZENHEIM / FORTSCHWIHRBusbrown
8918 FELDBACH / RIESPACH / BISELBuswhite
8343 SENTHEIM / ZILLISHEIMBusgreen
8052 MUNTZENHEIM / FORTSCHWIHRBusbrown
8919 MUESPACH / MUESPACH-LE-HAUTBuswhite
8344 ALTKIRCH / ZILLISHEIMBusgreen
8053 ANDOLSHEIM / FORTSCHWIHRBusbrown
8054 GRUSSENHEIM / JEBSHEIM / FORTSCHWIHRBusbrown
8424 WALDIGHOFEN / HIRSINGUEBuspink
8914 UEBERSTRASS / FRIESEN / LARGITZENBuswhite
8425 ALTKIRCH / HIRTZBACH / HIRSINGUEBuspink
8055 PORTE RIED / DURRENENTZEN / FORTSCHWIHRBusbrown
8056 PORTE RIED / WICKERSCHWIHR / FORTSCHWIHRBusbrown
8360 RIEDISHEIM / LANDSERBuspurple
8361 RIXHEIM / LANDSERBuspurple
8362 BATTENHEIM / LANDSERBuspurple
8363 HABSHEIM / LANDSERBuspurple
8364 STEINSOULTZ / LANDSERBuspurple
8365 HEIWILLER / LANDSERBuspurple
8366 KOETZINGUE / LANDSERBuspurple
8367 BERENTZWILLER / LANDSERBuspurple
8920 MOERNACH / KOESTLACH / VIEUX-FERRETTEBuswhite
8921 ROPPENTZWILLER / BOUXWILLERBuswhite
8922 BETTLACH / FISLIS / LINSDORFBuswhite
8923 BIEDERTHAL / OLTINGUE / FISLISBuswhite
8924 RAEDERSDORF / LUTTERBuswhite
8925 FERRETTE / WINKEL / BENDORFBuswhite
823 COLMAR / BIESHEIMBusgray
8030 ST-HIPPOLYTE / RODERN / RIBEAUVILLEBusgray
8664 LABAROCHEBuswhite
8031 THANNENKIRCH / BERGHEIM / RIBEAUVILLEBusgray
8446 BURNHAUPT-LE-HAUT / ALTKIRCHBusteal
8032 ILLHAEUSERN / GUEMAR / RIBEAUVILLEBusgray
8033 AUBURE / RIBEAUVILLEBusgray
8060 NAMBSHEIM / OBERSAASHEIM / COLMARBusteal
8034 BENNWIHR / BEBLENHEIM / RIBEAUVILLEBusgray
8061 BALGAU / COLMARBusteal
8062 GEISWASSER / ALGOLSHEIM / COLMARBusteal
8035 FRELAND / KAYSERSBERG / RIBEAUVILLEBusgray
8036 MITTELWIHR / ZELLENBERG / RIBEAUVILLEBusgray
8063 VOGELGRUN / VOLGELSHEIM / COLMARBusteal
8064 NEUF-BRISACH / COLMARBusteal
8065 WOLFGANTZEN / COLMARBusteal
8665 OBERSAASHEIM / GEISWASSERBuswhite
8666 HETTENSCHLAG / LOGELHEIMBuswhite
8037 OSTHEIM / RIBEAUVILLEBusgray
8463 WERENTZHOUSE / MUESPACH-LE-HT / ALTKIRCHBusteal
8066 WECKOLSHEIM / HETTENSCHLAG / COLMARBusteal
8667 WECKOLSHEIM / WOLFGANTZENBuswhite
8038 HUNAWIHR / RIBEAUVILLEBusgray
8039 LE BONHOMME / LAPOUTROIE / RIBEAUVILLEBusgray
8040 KATZENTHAL / RIBEAUVILLEBusgray
863 FERRETTE / MULHOUSEBusyellow
8041 ORBEY / RIBEAUVILLEBusgray
893 MULHOUSE / GUEBWILLER / MARKSTEINBusyellow
862 VIEUX-FERRETTE / MULHOUSEBusteal
8068 NIEDERHERGHEIM / LOGELHEIM / COLMARBusteal
8447 HUNINGUE / BARTENHEIM / CARSPACHBusteal
8448 BERENTZWILLER / ALTKIRCHBusteal
8449 DANNEMARIE / ALTKIRCHBusteal
8450 KOETZINGUE / LANDSER / ALTKIRCHBusteal
8453 DANNEMARIE / ALTKIRCHBusteal
8452 HOCHSTATT / LUEMSCHWILLER / ALTKIRCHBusteal
8440 ALTKIRCH / CARSPACHBusteal
8067 DESSENHEIM / APPENWIHR / COLMARBusteal
8089 NEUF-BRISACH / VOLGELSHEIMBusgreen
8080 GEISWASSER / OBERSAASHEIM / VOLGELSHEIMBusgreen
8081 NAMBSHEIM / BALGAU / VOLGELSHEIMBusgreen
8082 ALGOLSHEIM / VOGLEGRUN / VOLGELSHEIMBusgreen
8083 KUNHEIM / VOLGELSHEIMBusgreen
8084 KUNHEIM / BIESHEIM / VOLGELSHEIMBusgreen
8085 ANDOLSHEIM / APPENWIHR / VOLGELSHEIMBusgreen
8086 WOLFGANTZEN / WECKOLSHEIM / VOLGELSHEIMBusgreen
8087 WIDENSOLEN / VOLGELSHEIMBusgreen
8088 PORTE DU RIED / JEBSHEIM / VOLGELSHEIMBusgreen
8069 BIESHEIM / WIDENSOLEN / COLMARBusteal
8796 SICKERT / KIRCHBERG / WEGSCHEIDBuswhite
8797 HAUTE DOLLERBuswhite
8070 STE-CROIX-EN-PLAINE/ COLMARBusteal
825 HIRTZFELDEN / DESSENHEIM / COLMARBusyellow
824 COLMAR / HEITEREN / FESSENHEIMBusteal
826 COLMAR / BREISACH-AM-RHEINBusorange
8926 DURLINSDORF / OBERLARGBuswhite
8097 WETTOLSHEIM / HERRLISHEIM / WINTZENHEIMBusorange
8160 GUEBWILLER / BUHLBusred
8274 MORSCHWILLER-LE-BAS / MASEVAUXBusbrown
8249 MASEVAUX-NIEDERBRUCK / RODEREN / THANNBuspurple
8096 COLMAR / FREIBURG IM BREISGAUBusred
891 THANN / MARKSTEINBuspink
8042 STE-MARIE-MINES / SELESTAT / RIBEAUVILLEBusgray
8043 MULHOUSE / RIBEAUVILLEBusgray
8433 RANTZWILLER / RIXHEIMBuspurple
8227 KINGERSHEIM / PULVERSHEIM / ISSENHEIMBusgreen
8102 BLODELSHEIM / FESSENHEIMBusred
8101 ROGGENHOUSE / FESSENHEIMBusred
8454 ALTKIRCHBusteal
895 GRAND BALLON / LAC BLANCBuspink
892 THANN / GRAND BALLONBusgray
890 COLMAR / LE BONHOMMEBusgray
8750 NAMBSHEIM / BALGAUBuswhite
8668 KAYSERSBERG VIGNOBLEBuswhite
802 GEISWASSER / NEUF-BRISACHBusorange
801 LOGELHEIM / APPENWIHRBusyellow
8194 MULHOUSE / GUEBWILLERBusorange
8140 ROUFFACH / GUEBWILLER / MUNCHHOUSEBuspurple
8927 BERENTZWILLER / JETTINGENBuswhite
8275 WILDENSTEIN / THANN / MASEVAUXBusbrown
8753 SOULTZMATT / WINTZFELDENBuswhite
8672 HOHROD / SOULTZERENBuswhite
8071 HEITEREN COLMARBusteal
8072 SUNDHOFFEN COLMARBusteal
8929 DANNEMARIE / RETZWILLERBuswhite
8368 HOMBOURG-LANDSERBuspurple
List every stop
  • ALGOLSHEIM - Rue du Fort
  • ALTKIRCH - Gare SNCF
  • BUHL - Carrefour Express
  • ANDOLSHEIM - Rue de Sundhoffen
  • HABSHEIM - College
  • RIXHEIM - College
  • CHALAMPE - Avenue de la Paix
  • ILLHAEUSERN - Lotissement
  • GRUSSENHEIM - Pompiers
  • BARTENHEIM - Orée des Bois
  • GUEMAR - Gare
  • OBERHERGHEIM - Joseph Saur
  • BUHL - Monument aux Morts
  • KEMBS - Richardshaeuser
  • REGUISHEIM - Cité
  • KEMBS - Schnockeloch
  • KEMBS - Schaeferhof
  • UNGERSHEIM - Saint Michel
  • KEMBS - Nord
  • PULVERSHEIM - Place Bourgeois
  • PULVERSHEIM - Trois Roses
  • ENSISHEIM - College
  • BRINCKHEIM - Rue du 19 Novembre
  • KOETZINGUE - Rue du Stade
  • WATTWILLER - Rue de Soultz
  • BUHL - Rue du Florival
  • BIEDERTHAL - Ancienne Douane
  • STEINBACH - rue du Canal
  • LUTTER - Mairie
  • ROPPENTZWILLER - Salle communale
  • FERRETTE - College
  • WILDENSTEIN - Place des Verriers
  • KRUTH - Transfo EDF
  • FELLERING - Pont de la Thur
  • BURNHAUPT-LE-HAUT - Calvaire
  • FELLERING - Kelm
  • WALHEIM - Rue du Stade
  • LUEMSCHWILLER - Rue de l'Ecole
  • LUEMSCHWILLER - Rue du Moulin
  • TAGOLSHEIM - Rue du Vallon
  • ZILLISHEIM - Mairie
  • FROENINGEN - Mairie Ecole
  • SPECHBACH - Le Haut / Centre
  • SAINT-BERNARD - Quiri
  • BURNHAUPT-LE-BAS - Eglise
  • SAINT-BERNARD - Sainte Catherine
  • SPECHBACH - Le Bas / Lotissement
  • SPECHBACH - Le Bas / Eglise
  • SPECHBACH - Le Haut / Lotissement
  • SAINT-BERNARD - Ecole
  • KOESTLACH - Rue des Romains
  • BENDORF - Saboterie
  • SONDERSDORF - Mairie
  • BOURBACH-LE-HAUT - Place
  • BURNHAUPT-LE-HAUT - Le Carré (anct.Foyer)
  • MASEVAUX-NIEDERBRUCK - Houppach
  • HELFRANTZKIRCH - Rue Principale
  • LIGSDORF - Mairie
  • HUSSEREN-WESSERLING - Blematt
  • HUSSEREN-WESSERLING - Abribus RN66
  • MITZACH - Stade
  • GEISHOUSE - Ecole
  • GEISHOUSE - Place Broglie
  • RIESPACH - Centre
  • BURNHAUPT-LE-BAS - Pont autoroute
  • RIESPACH - Calvaire
  • 42e RIF
  • BURNHAUPT-LE-HAUT - College
  • BRETTEN - Mairie
  • GUEVENATTEN - Carrefour Sternenberg
  • GILDWILLER - Rue du Mont
  • WILLER-SUR-THUR - Ecole
  • FULLEREN - Mairie Ecole
  • HINDLINGEN - Tennis
  • BURNHAUPT-LE-HAUT - Poste
  • FRIESEN - Vieux Moulin
  • UEBERSTRASS - Mairie Ecole
  • SEPPOIS-LE-BAS - College
  • PFETTERHOUSE - Rue de la Foret
  • FESSENHEIM - Fohrenhoff
  • FESSENHEIM - College
  • BLODELSHEIM - Rue du Canal
  • BLODELSHEIM - Ecole les Tilleuls
  • COURTAVON - Pont rue de la scierie
  • COURTAVON - Ecole
  • BURNHAUPT-LE-BAS - Restaurant Agneau d'Or
  • MOERNACH - Eglise
  • BALGAU - Rond-Point
  • TRAUBACH-LE-HAUT - Pompiers
  • TRAUBACH-LE-HAUT - Eglise
  • TRAUBACH-LE-BAS - Ecole
  • TRAUBACH-LE-BAS - Rue Principale
  • WOLFERSDORF - Ecole
  • WOLFERSDORF - La largue
  • DANNEMARIE - College
  • GUEVENATTEN - Rue des Etangs
  • BURNHAUPT-LE-HAUT - Colombes (anct.Ziehlag)
  • BALSCHWILLER - Terrain de foot
  • BUETHWILLER - Mairie
  • HAGENBACH - Maison forestiere Forst
  • HAGENBACH - Route d'Altkirch
  • GOMMERSDORF - Ecole
  • HAGENBACH - Ecole
  • RETZWILLER - Eglise
  • MANSPACH - Rue du Moulin
  • ELBACH - Ecole
  • ALTKIRCH - Passerelle Saint-Morand
  • BURNHAUPT-LE-HAUT - Mairie Ecole
  • MONTREUX-VIEUX - Eglise
  • MONTREUX-JEUNE - Ecole
  • MAGNY - Foyer communal
  • ROMAGNY - Carrefour
  • ROMAGNY - Centre
  • VALDIEU-LUTRAN - Centre
  • MANSPACH - Ecole
  • BOLLWILLER - MJC
  • BURNHAUPT-LE-HAUT - Pont d'Aspach Gendarmerie
  • BOLLWILLER - Rue de Reims
  • BOLLWILLER - Rue des Cigognes
  • GUEVENATTEN - Mairie
  • SAINT-COSME - Courbiere
  • BRECHAUMONT - Calvaire
  • BRECHAUMONT - Ecole/Marpa
  • TRAUBACH-LE-HAUT - Moulin
  • VALDIEU-LUTRAN - Lutran / Eglise
  • VALDIEU-LUTRAN - Pont
  • ETEIMBES - Ecole
  • CARSPACH - Pont SNCF
  • BERNWILLER - Ecole
  • CHAVANNES-SUR-L'ETANG - Croisement
  • GOMMERSDORF - Tilleul
  • ETEIMBES - Croisement
  • LAUW - Salle polyvalente
  • LAUW - Ancienne douane
  • LAUW - Allmend
  • CARSPACH - Basse
  • LE HAUT SOULTZBACH - Mortzwiller - Fontaine
  • SOPPE-LE-BAS - Mairie
  • SOPPE-LE-BAS - Rue de Bretten
  • KIRCHBERG - Place
  • RIMBACH-PRES-MASEVAUX - Ermensbach - Chapelle
  • OBERBRUCK - Moulin
  • ILLFURTH - Le Sun pub
  • EGLINGEN - Centre
  • OBERMORSCHWILLER - Ecole
  • CARSPACH - Rond-point Sonnenberg
  • WILLER - Mairie
  • MONTREUX-CHATEAU - College Camille Claudel
  • CERNAY - College René Cassin
  • STEINBACH - Jardinier RD35
  • STEINBACH - Rue Depierre
  • COLMAR - Forge
  • CERNAY - Faubourg de Belfort
  • CERNAY - Quartier des Mines
  • CERNAY - Eglise
  • PULVERSHEIM - Coucou
  • BUHL - Feu du Florival
  • LINTHAL - Lac de la Lauch
  • BALLERSDORF - Cimetiere
  • CERNAY - Gare SNCF
  • WILLER-SUR-THUR - Lorraine
  • GUEBERSCHWIHR - Ecole primaire
  • HATTSTATT - Ecole
  • OBERENTZEN - Ecole
  • NIEDERENTZEN - Ecole Aux Quatre Vents
  • BILTZHEIM - Ecole
  • OBERHERGHEIM - Périscolaire
  • OBERHERGHEIM - Ecole
  • ROGGENHOUSE - École
  • MUNCHHOUSE - École maternelle
  • CERNAY - Institut Saint André
  • MUNCHHOUSE - Mairie Ecole
  • MURBACH - Au sapin
  • MURBACH - Salle communale
  • MURBACH - Parking entrée
  • Gare de Altkirch
  • BUHL - Rimlishof
  • Gare de Barthenheim
  • Mairie
  • Gare de Breitenbach
  • BUHL - Ecole
  • BURNHAUPT-LE-HAUT - Pont d'Aspach Gendarmerie
  • STORCKENSOHN - Torrent
  • SOPPE-LE-BAS - Ecole maternelle
  • ROUFFACH - Gare SNCF
  • CERNAY - Jardinier
  • ASPACH-MICHELBACH - Aspach le Haut / Ecole
  • ASPACH-LE-BAS - Ecole élémentaire
  • SCHWEIGHOUSE-THANN - Ecole - mairie
  • ASPACH-LE-BAS - Ecole maternelle
  • RAMMERSMATT - Chapelle
  • LEIMBACH - Ecole
  • KEMBS - Colonel Gauvin
  • GUEBWILLER - Bois fleuri
  • CERNAY - Lycée Eiffel Retour
  • ORSCHWIHR - Chapelle
  • STAFFELFELDEN - Marie-Louise
  • STAFFELFELDEN - Staffelfelden gare
  • WITTELSHEIM - Charbonniers
  • SAUSHEIM - Hardt
  • BATTENHEIM - Platanes
  • BATTENHEIM - Saint Imier
  • BATTENHEIM - Moulin
  • KINGERSHEIM - Cimetiere
  • ALTKIRCH - Piscine
  • CERNAY - Pont de la Thur
  • WITTENHEIM - Espérance
  • WITTENHEIM - Marjolaine
  • WITTENHEIM - Médiatheque
  • WITTENHEIM - De Gaulle
  • RUELISHEIM - Saint Georges
  • RUELISHEIM - Notre-Dame du Chene
  • RUELISHEIM - Pont de l'Ill
  • BALDERSHEIM - Mirabelles
  • WITTENHEIM - Vendée
  • WITTELSHEIM - Cité de la gare
  • CERNAY - Quartier des Mines
  • STAFFELFELDEN - Eglise
  • KINGERSHEIM - Strueth
  • KAYSERSBERG VIGNOBLE - Route du Vin Parking
  • CHALAMPE - Intermarché LFA
  • FREIBURG IM BREISGAU - FRIBOURG LFA
  • BEBLENHEIM - Ecole maternelle
  • CHATENOIS - Ecole des Bains
  • CHATENOIS - Val de Ville Rond Point
  • CERNAY - Zone Industrielle
  • HEIDWILLER - Abribus rue d'Illfurth
  • KINGERSHEIM - Strueth
  • MULHOUSE - Rattachement
  • MULHOUSE - Université
  • RIBEAUVILLE - Rue du 3 Décembre
  • RODEREN - Eglise
  • RODEREN - Maternelle
  • CHALAMPE - Les Chenes
  • SAINT-LOUIS - Gare Saint-Louis
  • SELESTAT - Hotel Majuscule
  • ORBEY - Haut de Pairis 116
  • COLMAR - Bonnes Gens
  • MARCKOLSHEIM - pl.dela République
  • MARCKOLSHEIM - Joffre
  • COLMAR - Camille See Gymnase
  • COLMAR - Château d'Eau
  • Centre Village Emlingen
  • Rue de Bâle
  • COLMAR - Ladhof
  • COLMAR - Clémenceau
  • WINTZENHEIM - Croix blanche
  • SIERENTZ - Centre
  • Ancienne Fonderie
  • OLTINGUE - Salle des Fetes
  • and 2576 more (see the full list on the map or in the GeoJSON)

Over time

Overall score across the last 4 checks — down 0.1 since 2026-09-06.

2026-08-06: 47.32026-08-07: 47.32026-09-06: 50.02026-09-07: 49.9
Show the numbers
Overall score by check, with the change from the previous check
CheckScoreChange
2026-08-0647.3 first check
2026-08-0747.3 no change
2026-09-0650.0 up 2.7
2026-09-0749.9 down 0.1

What changed since your last check

  • Correctness no change
  • Freshness no change
  • Rider experience no change

What changed in this feed

Overall score fell 0.1 points since 2026-09-06.

Same feed file as 2026-09-06; the published zip did not change.

Subscribe to this feed’s changes (Atom) to hear about grade drops and export changes in a reader, with no sign-up.

Everything we checked

16 findings, ordered by severity.

Show every finding
  • Error1 instance

    Some trips have stop times whose distances along the route go backwards.

    Apps can show buses jumping backwards or mis-order stops.

    Fix: Re-generate shape distances in your export; flag to your vendor if it persists. (Usually an export-tool fix, not hand editing.)

    Finding code: decreasing_or_equal_stop_time_distance · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning6627 instances

    Some stops sit far from the route line, going by the feed's own distance values.

    Trip planners may draw the route down the wrong streets or point riders to the wrong corner.

    Fix: Check the flagged stops' shape_dist_traveled against the route shape, and re-generate it on export if they disagree. (Usually an export-tool fix, not hand editing.)

    Finding code: stop_too_far_from_shape_using_user_distance · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning2824 instances

    2824 of 2826 stops don't say whether a wheelchair user can board there.

    Riders who use wheelchairs can't plan a trip when accessibility is marked 'unknown'; apps show no information at all.

    Fix: Set wheelchair_boarding to 1 (accessible) or 2 (not accessible) for every stop. A field survey can start with the busiest stops. (A column in stops.txt; your scheduling software likely has it.)

    Finding code: scorecard_wheelchair_boarding_unknown · Read the fix guide · See GTFS Schedule reference (opens the GTFS Schedule reference on an external site)

  • Warning2478 instances

    Equal shape distance diff coordinates distance below threshold (flagged by the MobilityData validator).

    See the linked rule for what this affects.

    Fix: Review the rule documentation for 'equal_shape_distance_diff_coordinates_distance_below_threshold' at https://gtfs-validator.mobilitydata.org/rules.html and check the flagged rows in your feed. (Varies.)

    Finding code: equal_shape_distance_diff_coordinates_distance_below_threshold · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning2327 instances

    2327 of 2327 trips don't say whether the vehicle is wheelchair accessible.

    Even with accessible stops, riders need to know the bus itself can take them.

    Fix: Set wheelchair_accessible on every trip. If every vehicle is accessible, this may be one default; otherwise use the value for each trip. (A default or per-trip field in your export.)

    Finding code: scorecard_wheelchair_accessible_unknown · Read the fix guide · See GTFS Schedule reference (opens the GTFS Schedule reference on an external site)

  • Warning1262 instances

    Some rider-facing names are in ALL CAPS or all lowercase.

    ALL-CAPS stop and headsign names are harder to read in apps and are read awkwardly by screen readers.

    Fix: Use mixed case for stop names and headsigns (e.g. 'Main St & 2nd Ave', not 'MAIN ST & 2ND AVE'). (Often a bulk fix in your scheduling software.)

    Finding code: mixed_case_recommended_field · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning363 instances

    Unexpected enum value (flagged by the MobilityData validator).

    See the linked rule for what this affects.

    Fix: Review the rule documentation for 'unexpected_enum_value' at https://gtfs-validator.mobilitydata.org/rules.html and check the flagged rows in your feed. (Varies.)

    Finding code: unexpected_enum_value · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning305 instances

    On some trips the stop distances run a little past the end of the route line.

    The stop and shape distance values don't quite line up, so any math that uses them can drift.

    Fix: Re-generate shape_dist_traveled on export so stop and shape distances use the same units. (Usually an export-tool fix, not hand editing.)

    Finding code: trip_distance_exceeds_shape_distance_below_threshold · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning151 instances

    Some values have extra spaces at the start or end.

    A stray space can break a match, so a stop or route may fail to link across files.

    Fix: Trim leading and trailing spaces on export. The scorecard's auto-fixed copy already does this. (Usually one export setting.)

    Finding code: leading_or_trailing_whitespaces · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning2 instances

    Some route colors don't contrast with their text color.

    Route badges get hard to read, most of all for riders with low vision.

    Fix: Pick a darker/lighter route_text_color for the flagged routes. (One field per route.)

    Finding code: route_color_contrast · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning1 instance

    feed_info.txt lists no contact email and no contact URL.

    Without a contact, apps like Google Maps can't reach you when they find a problem in the feed.

    Fix: Add feed_contact_email or feed_contact_url to feed_info.txt. (One field, set once in export settings.)

    Finding code: missing_feed_contact_email_and_url · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Warning1 instance

    The feed contains no fare information.

    Riders see 'fare unknown' in trip planners and can't budget their trip; visitors are most affected.

    Fix: Add fare_attributes.txt (or Fares v2 files) with your fare structure. If your service is fare-free, ask to have it marked fare-free instead. (A small file for most flat-fare systems.)

    Finding code: scorecard_no_fare_data · Read the fix guide · See GTFS Best Practices (opens GTFS Best Practices on an external site)

  • Warning1 instance

    This feed models stations or entrances but has no pathways.txt.

    Trip planners can't guide riders through the station, and there is no step-free route information for wheelchair users.

    Fix: Add pathways.txt to link entrances, platforms, and elevators. Give each one a level. (Worth it for multi-level or large stations; flat stops don't need it.)

    Finding code: scorecard_station_no_pathways · Read the fix guide · See GTFS Schedule reference (opens the GTFS Schedule reference on an external site)

  • Info203 instances

    About 203 stop names are written in ALL CAPS.

    Mixed-case names are easier to read in apps and are read more naturally by screen readers.

    Fix: Rename stops to mixed case where the language has letter case (for example, 'Central Station'). (Often a bulk fix in your scheduling software.)

    Finding code: scorecard_stop_names_all_caps · Read the fix guide · See GTFS Best Practices (opens GTFS Best Practices on an external site)

  • Info146 instances

    The feed has a stretch of two weeks or more with no service running.

    A long gap can mean dates were left out of the calendar. Apps then show no trips on those days.

    Fix: Check whether the gap is real, like a seasonal break; if not, add the missing dates to the calendar. (A review of your calendar dates.)

    Finding code: big_gap_in_service · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

  • Info1 instance

    feed_info.txt has no technical contact (feed_contact_email or feed_contact_url).

    App makers and state data programs have nobody to email when they spot a problem. Small errors then sit in the feed for months.

    Fix: Add feed_contact_email to feed_info.txt. (One field.)

    Finding code: scorecard_no_feed_contact · Read the fix guide · See MobilityData GTFS Validator rules (opens the validator rules on an external site)

Conformance mark Not yet

Two requirements remain for this feed to earn the conformance mark. 1 validator error to resolve. States wheelchair access on 0% of stops and 0% of trips; the mark needs 90% of each.

Valid Not yet
1 validator error to resolve.
Current Met
Service data covers the next 115 days.
Accessible Not yet
States wheelchair access on 0% of stops and 0% of trips; the mark needs 90% of each.

In plain words: earn this mark when your feed passes validation, has not expired, and says whether nearly every stop and trip is wheelchair accessible.

A pass credential for a feed that is valid, current, and states wheelchair access on nearly every stop and trip. Accessibility here measures what the feed publishes, not whether a stop is physically usable. How the conformance mark works.

Clears the Google and Apple Maps four-week coverage bar. This feed has 115 days of service ahead, clearing the four-week (28-day) window Maps asks for. The feed also carries 1 validator error, the other thing Maps checks at onboarding; the findings below name each fix.

How this agency maps to the standards

The scorecard is a data-quality lens, not a compliance determination. Its universal references describe good GTFS and useful rider information. Useful references here are GTFS Schedule Best Practices, GTFS-Realtime Best Practices, MobilityData grading scheme, Google Transit publication guidance. Read the full standards crosswalk.

Correctness 31 / 100
GTFS Schedule best practices, checked by the MobilityData validator. MobilityData grading covers stop locations, route names, and colors. Google Transit requires a feed to pass validation for publication.
Freshness 100 / 100
GTFS Schedule best practices call for a dataset that stays current. An expired calendar can remove service from Google Transit and other rider trip planners.
Rider experience 36 / 100
GTFS Best Practices for rider-facing fields. MobilityData grading covers stop names and headsigns.
Realtime quality Not yet published
GTFS-Realtime best practices: a stable URL, high uptime, and frequent updates.

Show your grade

Put a badge on your agency site or feed README. It updates after each completed scoring check and links back to this scorecard.

Réseau interurbain Fluo Grand-Est - Haut-Rhin (68) GTFS data quality grade: F

Prefer a shields.io style? Point a dynamic endpoint badge at the published badge.json.

Cite this record

This page updates on every check. The record below does not: it is the dated file this grade came from, published at https://gtfsscorecard.org/data/artifacts/fr-pan-80419/2026-09-07.json and never overwritten, pinning the grade, category scores, rubric version, validator version, reader archive profile, and the scored feed's sha256 as they stood on 2026-09-07. Use it in a board packet, a regulatory filing, or a research citation instead of linking the live page, whose content will differ on your next visit.

Citing the tool itself rather than one agency's record? Use the repo's CITATION.cff.